現(xiàn)在IPv6越來越普及,很多高校均支持IPv4/IPv6雙棧協(xié)議。與此同時,百元以內(nèi)的IPv6路由器也已經(jīng)上市。不過現(xiàn)在的大多數(shù)安卓手機在默認狀況下不支持IPv6,通過簡單的方法,就可以開啟安卓手機對IPv6的支持。
IPv6網(wǎng)絡(luò)的由來
互聯(lián)網(wǎng)自1968年誕生之日起,便以TCP/IP網(wǎng)絡(luò)協(xié)議為基礎(chǔ)在快速的發(fā)展,由于互聯(lián)網(wǎng)上的主機數(shù)目不間斷的增加,越來越多的主機需要分配網(wǎng)絡(luò)地址以實現(xiàn)互聯(lián)互通,IPv4網(wǎng)絡(luò)地址資源數(shù)量不足的弊端也因此逐漸開始暴露出來。鑒于此,IETF(互聯(lián)網(wǎng)任務(wù)工程組)開始著手規(guī)劃并設(shè)計了用于迭代IPv4協(xié)議的下一代IPv6網(wǎng)絡(luò)協(xié)議技術(shù)解決方案,IPv6網(wǎng)絡(luò)協(xié)議方案的的實現(xiàn)與投入使用,成功的解決了IP地址缺乏、網(wǎng)絡(luò)設(shè)備接入互聯(lián)網(wǎng)不兼容的難題
Android平臺架構(gòu)簡介
Android系統(tǒng)平臺是由美國的Google公司和開放手機聯(lián)盟領(lǐng)導的團隊專門為移動便攜式設(shè)備開發(fā)設(shè)計的一款基于Linux系統(tǒng)的嵌入式操作系統(tǒng)平臺。Android系統(tǒng)在Linux內(nèi)核架構(gòu)的基礎(chǔ)上不僅采用了Yaffs2文件系統(tǒng)、添加了針對相關(guān)移動設(shè)備特殊編寫的驅(qū)動程序,而且還優(yōu)化了Linux系統(tǒng)中的相關(guān)源碼,使其更適合于移動便攜式終端的使用。
Android系統(tǒng)的框架結(jié)構(gòu)大體上分為四個層次,分別為Application層、Application Framework層、Librarys層和Linux Kernel層。
其Linux Kernel層主要用來提供上層系統(tǒng)與底層硬件之間交互相關(guān)的一些服務(wù),主要包括硬件安全防護機制、內(nèi)存分配策略管理、操作系統(tǒng)進程管理、網(wǎng)絡(luò)連接管理以及相關(guān)必備的硬件驅(qū)動模塊實現(xiàn)等。
開啟Android手機的IPv6功能
手機首先需要獲取Root權(quán)限。使用一般的一鍵root工具即可,推薦“完美Root”。
安裝“ES 文件瀏覽器”。打開Root工具箱,將文件系統(tǒng)掛載為“可讀可寫”(RW)。
安裝“SManager”。
在電腦上打開notepad++,復制粘貼如下內(nèi)容:
#!/system/bin/sh
for file in /proc/sys/net/ipv6/conf/*
do
echo 1 》 $file/accept_ra_defrtr
done
然后將文件另存為“EnableIPv6.sh”。
注意編碼為UTF8,換行符為UNIX風格。
將“EnableIPv6.sh”復制到手機,并使用ES 文件瀏覽器將其移動到/etc目錄下。
使用SManager執(zhí)行該腳本?,F(xiàn)在你的Android手機就可以通過DHCP方式獲取到IPv6地址了。等待幾分鐘,打開http://ipv6.tsinghua.edu.cn/,在網(wǎng)頁右側(cè)可以看到自己的IPv6地址。
注意事項
以上方法在Android4.0(ICS)上測試通過。
如果腳本執(zhí)行無效,請檢查文件系統(tǒng)是否已經(jīng)掛載為RW。
ISP和路由器都要支持IPv6,且路由器要開啟DHCP
Android的IPv6連接實驗過程
硬件設(shè)備
1、購買了華為的IPv6路由器,經(jīng)參數(shù)驗證確認該設(shè)備可以進行基于IPv6協(xié)議的網(wǎng)絡(luò)環(huán)境的搭建,用作實驗中的網(wǎng)絡(luò)信號接入源。
2、實驗中使用的手機是小米4手機,手機型號為MI 4LTE,其完整的手機參數(shù)示意圖如下圖1所示;經(jīng)參數(shù)驗證,該手機的系統(tǒng)和基帶模塊具備實驗條件
Android手機連接到IPv6網(wǎng)絡(luò)
路由器的配置
將路由器的LAN口通過雙絞線連接到學校的交換機上面,并對路由器進行正確的配置,使其可以正常的進行網(wǎng)絡(luò)信號的發(fā)射,設(shè)置其SSID為AHUT_IPV6,以此來標識此網(wǎng)絡(luò)為采用IPv6協(xié)議的網(wǎng)絡(luò)。
設(shè)備進行網(wǎng)絡(luò)連接的詳細過程
將實驗手機的WLAN功能開關(guān)打開,進行無線網(wǎng)絡(luò)的搜索,當發(fā)現(xiàn)此網(wǎng)絡(luò)后會嘗試進行網(wǎng)絡(luò)的自動連接,如圖2所示。
在搜索到AHUT_IPV6網(wǎng)絡(luò)并進行連接的過程中,實驗手機的提示為正在獲取當前網(wǎng)絡(luò)的IP地址,經(jīng)數(shù)分鐘后提示連接失敗,由此可知,目前Android系統(tǒng)的DHCP客戶端對IPv6網(wǎng)絡(luò)環(huán)境相關(guān)設(shè)置做的還不是很完善,當獲取不到IPv4網(wǎng)絡(luò)地址時,也不能自動的設(shè)置IPv6的相關(guān)網(wǎng)絡(luò)參數(shù)。Android的網(wǎng)絡(luò)設(shè)置要求必須能獲取到IPv4地址,然后才可以正常的設(shè)置IPv6的相關(guān)參數(shù)。了解了DHCP客戶端的限制后,采取的方法有兩種,一為重新購買路由器,使其發(fā)出的無線網(wǎng)絡(luò)含有IPv4/IPv6網(wǎng)絡(luò);二為手動設(shè)置手機設(shè)備的IPv4地址,這樣,DHCP就不會再獲取到IPv6地址后一直試圖去獲取IPV4地址,本實驗采用方法二,手動設(shè)置小米手機4的IPv4地址,如圖3所示。
這樣設(shè)置后,實驗中使用的手機就可以完成IPv6網(wǎng)絡(luò)的連接,連接后的手機界面如下圖4所示,從獲取到的網(wǎng)絡(luò)地址也可以驗證Android采用雙棧協(xié)議進行不同協(xié)議網(wǎng)絡(luò)的連接。
對網(wǎng)絡(luò)的連通性進行測試
將電腦和手機同時連接在同一網(wǎng)絡(luò)環(huán)境下,對實驗手機和電腦進行ping連通性實驗測試,在此環(huán)境下,設(shè)備可以正常的ping通電腦,如圖5所示,由圖可知,手機和電腦在實驗環(huán)境下可以進行正常的數(shù)據(jù)發(fā)送,由此可以證明實驗理論的正確性。
實驗總結(jié)
1、目前采用Android 4.0之后的移動端設(shè)備使用IPv6網(wǎng)絡(luò)可以進行正常的通信,但是,目前Android手機上面支持IPv6協(xié)議的的應用軟件非常少。
2、Android采用雙棧協(xié)議進行IPv4/IPv6網(wǎng)絡(luò)的協(xié)同工作,當發(fā)送的是IPv4數(shù)據(jù)報文時,采用的Socket為v4版本,當發(fā)送的數(shù)據(jù)報文采用的是IPv6協(xié)議時,采用的Socket為v6版本。
3、目前針對移動設(shè)備打造的Android系統(tǒng)的DHCP(動態(tài)主機配置協(xié)議)客戶端功能做的還不是很善,有一些不足之處,在只有IPv6網(wǎng)絡(luò)環(huán)境的條件下,需要手動將手機的DHCP客戶端IP設(shè)置調(diào)整為靜態(tài),并設(shè)置IPv4地址,這樣手機的DHCP客戶端就不會再嘗試獲取IPv4地址了。
評論