国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

在嵌入式設(shè)備上實(shí)現(xiàn)IPv6網(wǎng)絡(luò)的接入

發(fā)布時間:2010-9-19 17:44    發(fā)布者:conniede
關(guān)鍵詞: IPv6 , linux , XScale , 網(wǎng)絡(luò)
1 引 言

向下一代互聯(lián)網(wǎng)過渡的進(jìn)程已經(jīng)開始。IPv6作為下一代互聯(lián)網(wǎng)的核心協(xié)議,能夠提供幾乎無限的地址空間,從根本上克服了IPv4中地址空間不足的問題,也為在不遠(yuǎn)的將來把數(shù)量眾多的嵌入式設(shè)備接入網(wǎng)絡(luò)創(chuàng)造了條件。Linux的內(nèi)核從2.4版就已經(jīng)開始支持IPv6,同時,Linux作為開源的操作系統(tǒng),也便于向不同的硬件平臺移植。由于現(xiàn)有的網(wǎng)絡(luò)基礎(chǔ)設(shè)施運(yùn)行的大都是IPv4協(xié)議棧,選擇隧道方式接入IPv6網(wǎng)絡(luò),是一種充分利用現(xiàn)有設(shè)備的過渡手段。基于以上原因,本文選用支持IPv6的Linux內(nèi)核,通過隧道方式把基于ARM的嵌入式設(shè)備接入IPv6網(wǎng)絡(luò)。

2 編譯支持IPv6的Linux內(nèi)核

本文所用的硬件環(huán)境是Xscale的Sitsang開發(fā)板。要向ARM核的CPU移植Linux,首先要準(zhǔn)備交叉編譯環(huán)境,包括armlinuxgcc、armlinuxld、armlinuxas,以便在PC機(jī)上編譯可運(yùn)行于ARM核CPU的目標(biāo)代碼。實(shí)驗(yàn)選用的Linux內(nèi)核源碼包是linux2.4.19.tar.bz2,另外還有一個針對Sitsang 板的內(nèi)核補(bǔ)丁(包括驅(qū)動程序)patch2.4.19sitsang2.gz。以下是編譯支持IPv6的Linux內(nèi)核的過程。

(1) 解開源碼包并打?qū)S醚a(bǔ)丁

#tar jvxf linux-2.4.19.tar.bz2
#ln -s linux-2.4.19 linux
#gzip -dc patch-2.4.19-sitsang2.gz | patch -p0

上述第2行命令建立符號鏈接,是為了第3行命令對Linux的標(biāo)準(zhǔn)內(nèi)核進(jìn)行打補(bǔ)丁的操作。

(2) 配置編譯選項(xiàng)

現(xiàn)在得到的Linux內(nèi)核版本是支持IPv6的,但是支持IPv6的模塊默認(rèn)并不是編譯入內(nèi)核的。在make menuconfig的時候,注意把Network Options下有關(guān)IPv6和隧道(tunnel)的模塊選為內(nèi)核模式,以便得到所需要的內(nèi)核文件。其他選項(xiàng)不需要更改。

(3) 編譯內(nèi)核

#make dep
#make zImage
#make modules

以上命令分別表示建立內(nèi)核中各模塊的依賴關(guān)系,編譯內(nèi)核,編譯驅(qū)動模塊。編譯無誤,就在../linux/arch/arm/boot/目錄下得到了所需的Linux內(nèi)核文件zImage。

已經(jīng)有了支持IPv6的內(nèi)核,接下來的工作是把啟動程序和內(nèi)核文件外加一個精簡的文件系統(tǒng)燒錄到開發(fā)板上去,開發(fā)板就可以啟動了。關(guān)于如何燒錄啟動程序、內(nèi)核和文件系統(tǒng)并不是本文的主要內(nèi)容,可參看其他嵌入式系統(tǒng)開發(fā)的資料。

3  重新編譯工具程序

配置和測試網(wǎng)絡(luò)環(huán)境需要ifconfig、ping、traceroute等工具程序。上面的精簡文件系統(tǒng)并沒有包括以上工具程序支持IPv6的版本,如ping6、traceroute6等,因此需要重新編譯包含這些工具程序的源碼包nettools和netutils。注意選用版本較新的源碼包,以確保其支持IPv6。將源碼包解開后,修改其Makefile文件,使之使用交叉編譯工具鏈編譯和鏈接,生成所需的目標(biāo)代碼。將編譯生成的在ARM核的CPU上可執(zhí)行的文件ifconfig、ping6和traceroute6拷貝到嵌入式設(shè)備文件系統(tǒng)的相應(yīng)位置,以備下面的配置和測試時使用。

4  配置隧道將嵌入式設(shè)備接入IPv6網(wǎng)絡(luò)

首先到以下地址申請一段IPv6的地址:http://knight.6test.edu.cn/tb/html/。在頁面中點(diǎn)擊“ Register ”,填寫用戶名、Email和所需的Subnet Prefix Length(64/128),提交之后就得到了一段IPv6地址。要開始使用這段申請到的地址,還得點(diǎn)擊頁面中的“Activate the tunnel”鏈接加以激活。假設(shè)申請到的地址是3ffe:321f:0:775::/64,Tunnel Broker Server的地址是202.38.99.9,下面就開始配置隧道。

由于上面申請到的地址需要激活才能使用,而對于一些沒有圖形界面的嵌入式設(shè)備通過Web方式激活不方便;另外,由于與Tunnel Broker Server直接隧道連接需要一個獨(dú)立的IPv4地址,而申請到的地址總量巨大(64位地址總量達(dá)2的64次方),為避免浪費(fèi),本文采取了用一臺PC機(jī)與Tunnel Broker Server連接充當(dāng)IPv6網(wǎng)關(guān),而包括Sitsang開發(fā)板在內(nèi)的其他設(shè)備通過網(wǎng)關(guān)接入的辦法。

實(shí)驗(yàn)中,作為網(wǎng)關(guān)的PC機(jī)運(yùn)行的是RedHat Linux 9,有兩塊網(wǎng)卡,IPv4地址分別是166.111.249.184(eth0)和192.168.1.184(eth1),Sitsang開發(fā)板有一個以太網(wǎng)口,IPv4地址是192.168.2.231(eth0),默認(rèn)網(wǎng)關(guān)是192.168.2.184。IPv4的路由已設(shè)置好,即Sitsang開發(fā)板已經(jīng)能ping通外部的IPv4網(wǎng)絡(luò)。

(1) 建立網(wǎng)關(guān)與Tunnel Broker Server的隧道

在網(wǎng)關(guān)PC機(jī)上執(zhí)行以下命令:

#insmod ipv6
#iptunnel add sit1 mode sit remote 202.38.99.9 local 166.111.249.184
#ifconfig sit1 up
#ifconfig sit1 inet6 add 3ffe:321f:0:775::1/128
#route ?A inet6 add 2000::/3 sit1
#echo 1 > /proc/sys/net/ipv6/conf/all/forwarding

以上命令分別表示:

◆ 手動裝入IPv6模塊。RedHat 9的2.4.20內(nèi)核默認(rèn)并沒有把IPv6模塊裝入內(nèi)核;

◆ 建立與Tunnel Broker Server的隧道sit1;

◆ 激活sit1;

◆ 為sit1添加IPv6地址;

◆ 添加通過sit1的路由項(xiàng);

◆ 設(shè)置所有網(wǎng)絡(luò)接口都可以轉(zhuǎn)發(fā)數(shù)據(jù)包。

以Web方式激活后,可以用ping6測試www.ipv6.org或[url=http://www.6bone.net]www.6bone.net,確認(rèn)連通性。

(2) 激活網(wǎng)關(guān)與嵌入式設(shè)備的自動隧道

分別在網(wǎng)關(guān)PC機(jī)和Sitsang開發(fā)板上執(zhí)行以下命令,激活自動隧道:

#ifconfig sit0 up

sit0是一個自動隧道,激活之后就會添加相應(yīng)的IPv4兼容的IPv6地址。其格式為::x.x.x.x(x.x.x.x是IPv4地址)。具體來說,網(wǎng)關(guān)PC機(jī)的sit0將會自動加::166.111.249.184/96,::127.0.0.1/96,::192.168.2.184/96三個兼容地址;而Sitsang開發(fā)板上的sit0將會自動添加::127.0.0.1/96,::192.168.2.231/96兩個兼容地址。

現(xiàn)在可以分別在網(wǎng)關(guān)PC機(jī)和Sitsang開發(fā)板上用ping6測試::166.111.249.184和::192.168.2.231,以確認(rèn)自動隧道工作正常。

(3) 配置IPv6路由項(xiàng)

為嵌入式設(shè)備和網(wǎng)關(guān)PC機(jī)添加全局IPv6地址,并配置靜態(tài)路由。在Sitsang開發(fā)板上:

#ifconfig inet6 sit0 add 3ffe:321f:0:775::192.168.2.231/128
#route ?A inet6 ::/0 gw ::192.168.2.184

在網(wǎng)關(guān)PC機(jī)上:

# ifconfig inet6 sit1 add 3ffe:321f:0:775::192.168.2.184/128
  #route ?A inet6 3ffe:321f:0:775::192.168.2.231/128 gw ::192.168.2.231

至此,Sitsang開發(fā)板已經(jīng)有了一個全局IPv6地址(ffe:321f:0:775:: 192.168.2.231/128),并且能夠通過網(wǎng)關(guān)訪問外部IPv6網(wǎng)絡(luò)了。


同樣,可以在Sitsang開發(fā)板上用ping6測試www.ipv6.org或[url=http://www.6bone.net]www.6bone.net確認(rèn)。

5 結(jié)語

本文介紹了如何在采用XScale的Sitsang開發(fā)板的硬件環(huán)境下,使用交叉編譯工具鏈移植支持IPv6的Linux操作系統(tǒng);著重介紹了如何采用隧道方式,通過網(wǎng)關(guān)把嵌入式設(shè)備接入IPv6網(wǎng)絡(luò)的方法。本文介紹的方法均已在硬件設(shè)備上實(shí)際調(diào)試通過。其基本方法適用于移植了Linux操作系統(tǒng)的各種嵌入式設(shè)備。
本文地址:http://www.qingdxww.cn/thread-28089-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時間更正或刪除。
您需要登錄后才可以發(fā)表評論 登錄 | 立即注冊

廠商推薦

  • Microchip視頻專區(qū)
  • 使用SAM-IoT Wx v2開發(fā)板演示AWS IoT Core應(yīng)用程序
  • 使用Harmony3加速TCP/IP應(yīng)用的開發(fā)培訓(xùn)教程
  • 集成高級模擬外設(shè)的PIC18F-Q71家族介紹培訓(xùn)教程
  • 探索PIC16F13145 MCU系列——快速概覽
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號 | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 欧美日韩一级视频 | 中文字幕精品一区二区日本大胸 | 色优影院| 国产一区二区三区免费观看 | 国产青青草视频 | 久久国产高清一区二区三区 | 亚洲欧美成人综合久久久 | 国产一区二区三区免费播放 | 麻豆视频免费在线播放 | 花季传媒v3084下载入口 | 日本精品在线视频 | 男人的天堂天堂网 | 国产一区二区三区久久精品 | 99精品国产高清一区二区麻豆 | 91在线精品免费观看 | 日韩在线视屏 | 亚洲免费在线视频播放 | 中文字幕日本久久2019 | 高清色黄毛片一级毛片 | 亚洲小视频在线观看 | 国产一级精品视频 | 最近韩国日本免费观看mv免费版 | 香蕉伊思人在线 | 扒丝袜basiwa影院首页 | 91区国产福利在线观看午夜 | 日韩毛片高清在线看 | 老司机免费精品视频 | 亚洲第一成年网 | 一个色综合网 | 九九视频在线观看视频 | 综合精品一区 | 亚洲www| 老汉tv永久视频福利在线观看 | 日日爱爱 | h漫在线| 日韩影视在线 | 麻豆高清完整版观看在线 | 香蕉福利 | 最近韩国日本免费观看mv免费版 | 在线观看国产精品麻豆 | 欧美黑人成人www在线观看 |