當(dāng)前位置:首頁 > 嵌入式 > 嵌入式軟件
[導(dǎo)讀]嵌入式網(wǎng)絡(luò)設(shè)備的MAC及IP地址設(shè)置

摘要:嵌入式網(wǎng)絡(luò)設(shè)備與通用計算機(jī)的網(wǎng)絡(luò)設(shè)置相比有相同的地方,也有其獨特的地方。本文以嵌放式操作系統(tǒng)uClinux在帶網(wǎng)絡(luò)接口的嵌入式芯片S3C4510B上的應(yīng)用為例,介紹一種嵌入式網(wǎng)絡(luò)設(shè)備中MACIP地址設(shè)置的方法。

    關(guān)鍵詞:Linux uClinux 嵌入式系統(tǒng) IP地址 MAX地址 以太網(wǎng)

嵌入式產(chǎn)品可分為信息電器、移動計算設(shè)備、網(wǎng)絡(luò)設(shè)備和工控、仿真等。

在網(wǎng)絡(luò)日益重要的今天,越來越多的嵌入式產(chǎn)品有了聯(lián)網(wǎng)的要求。以上嵌入式產(chǎn)品的分類中,除了網(wǎng)絡(luò)設(shè)備特別強(qiáng)調(diào)網(wǎng)絡(luò)功能外,其它幾類產(chǎn)品經(jīng)常也有網(wǎng)絡(luò)要求。

在談到網(wǎng)絡(luò)功能時,很自然就會想到目前應(yīng)用越來越廣的Linuxz操作系統(tǒng)。Linux對網(wǎng)絡(luò)有很強(qiáng)的支持能力,甚至比大多數(shù)操作系統(tǒng)的性能更好。實際上,Linux的發(fā)展是人們在網(wǎng)絡(luò)上的相互合作下進(jìn)行的,且Linux本來就是用在網(wǎng)絡(luò)上的。Linux幾乎支持所有常見的Internet協(xié)議,如FTP、POP、DNS、NIS等等。Linux也適合各種局域網(wǎng)。

Linux不僅能很好地用于通用計算機(jī),而且已很好地移植于嵌入式系統(tǒng)。嵌入式Linux,就是經(jīng)過小型化裁減,而且可以被燒制到容量僅為幾KB或幾MB的存儲器中,不需要硬盤,應(yīng)用于各種特定的嵌入式環(huán)境的專用中,不需要硬盤,應(yīng)用于各種一的嵌入式環(huán)境的專用操作系統(tǒng)。它保留了Linux的大多功能,特別是網(wǎng)絡(luò)支持能力。uClinux就是一個優(yōu)秀的嵌入式Linux操作系統(tǒng)。

本論文中要討論的MAX及IP地址分別指的是:

MAC地址在這里特指以太網(wǎng)定義的一個48位(6字節(jié))地址。每臺連到以太網(wǎng)網(wǎng)絡(luò)的計算機(jī)分配一個唯一的48位(6字節(jié))數(shù)字,即它的以太網(wǎng)地址。為分配地址,以太網(wǎng)硬件制造商購買以太網(wǎng)地址塊,在生產(chǎn)以太網(wǎng)接口硬件時順序給它們分配。MAC地址屬于物理層的地址,對于不同類型的網(wǎng)絡(luò),其物理址分配方式不同,但本論文中介紹的設(shè)置方法都適用。

IP地址(IP address)也叫互連網(wǎng)地址(Internet address)。它是TCP/IP的設(shè)計人員選擇的一個類似于物理網(wǎng)絡(luò)的編址地址?;ミB網(wǎng)上的每個主機(jī)都分配了一個唯一的32位(4字節(jié))整數(shù)地址。IP地址屬于軟件協(xié)議層的地址。只要主機(jī)上運(yùn)行TCP/IP協(xié)議,其IP地址的編址方式就符合這個統(tǒng)一標(biāo)準(zhǔn)。

作為嵌入式網(wǎng)絡(luò)設(shè)備的“身份證”,MAC及IP地址的配置是嵌入式網(wǎng)絡(luò)設(shè)備必須面對的問題。它與通用計算機(jī)的操作有些不同。

1 嵌入式網(wǎng)絡(luò)設(shè)備中MAC及IP地址的特點

在嵌入式系統(tǒng)中,操作系統(tǒng)和所有的應(yīng)用軟件都被固化到Flash等存儲設(shè)備中。在嵌入式系統(tǒng)中很少使用外存。嵌入式系統(tǒng)的啟動往往也是“自動”的,即從上電到處于工作狀態(tài),不用人的介入。這是嵌入式設(shè)備應(yīng)用的要求和特點。

嵌入式網(wǎng)絡(luò)設(shè)備的啟動,很自然會遇到MAC及IP地址的設(shè)置問題。

對于通用計算機(jī),其以太網(wǎng)的MAC地十一般是不能變的,它是由網(wǎng)卡生產(chǎn)廠家固化在網(wǎng)卡中的。除了網(wǎng)卡生產(chǎn)廠家,很少有其他人關(guān)心它。而IP地址,可以根據(jù)用戶的需要設(shè)為指定值。其設(shè)定的IP地址是存儲在硬盤上的,操作系統(tǒng)啟動時,可以自動取得該值并啟用它。

圖2

    嵌入式網(wǎng)絡(luò)設(shè)備中的MAC及IP地址的設(shè)置有它的特點:

①關(guān)心和接觸嵌入式網(wǎng)絡(luò)設(shè)備MAC地址的人比關(guān)心和接觸通用計算機(jī)MAC地址的人多得多。因為設(shè)計、研究和生產(chǎn)嵌入式網(wǎng)絡(luò)設(shè)備的廠家比網(wǎng)卡的廠家多得多。

②在嵌入式設(shè)備中往往沒有硬盤,它的操作系統(tǒng)和應(yīng)用軟件通常是打包放在Flash等存儲設(shè)備中。系統(tǒng)啟動時,把Flash中的代碼釋放到內(nèi)存中,再在內(nèi)存中運(yùn)行。比如嵌入式操作系統(tǒng)Uclinux,在用于S3C4510B這樣的帶以太網(wǎng)接口的嵌入式設(shè)備時,把內(nèi)核和應(yīng)用程序代碼壓成一個映像文件包,在包中有網(wǎng)絡(luò)部分MAC及IP地址。但這些MAC及IP地址的值是在編譯映像文件時設(shè)定的,而且在編譯后的映像文件中的值是不能直觀地看到的,而且在編譯后的映像文件中的值是不能直觀地看到的,它是壓縮了的二進(jìn)制數(shù)據(jù),不方便地映像文件中直接更改MAC及IP地址的值。

③對于使用同一映像文件的嵌入式網(wǎng)絡(luò)設(shè)備,如果不做進(jìn)一步的處理,其MAC及IP地址是相同的。這顯然不能滿足應(yīng)用,因為不同的設(shè)備應(yīng)該有不同的MAC及IP地址。而編譯生成映像文件往往要用十幾甚至幾十分鐘。對于生產(chǎn)廠家,不可能為每臺設(shè)備編譯一個特定的映像文件。

針對以上問題,筆者在S3C4510B上運(yùn)行uClinux時,使用了一些特殊的方法來解決它。

2 MAC及IP地址的設(shè)置

筆者使用的S3C4510B嵌入式網(wǎng)絡(luò)設(shè)備的基本框圖如圖1所示。

其中,F(xiàn)lash是一片HY29LV160,共16Mb,分35個扇區(qū)。程序映像文件是從低扇區(qū)開始存放的。

本嵌入式網(wǎng)絡(luò)設(shè)備系統(tǒng)的MAC及IP地址設(shè)置的基本思想是:把MAC及IP地址存放在Flash的未用扇區(qū)(一般在高扇區(qū)),嵌入式操作系統(tǒng)啟動后,自動運(yùn)行一個程序去讀取MAC及IP地址并設(shè)置它。

用戶如何把MAC及IP地址放到Flash中?筆者使用的方法是通過計算機(jī)串口與網(wǎng)絡(luò)設(shè)備的RS232接口(即串口)相連,使用超級終端的方式,運(yùn)行網(wǎng)絡(luò)設(shè)備中的程序把數(shù)據(jù)寫入Flash中。

針對MAC及IP地址的設(shè)置,筆者編了以下兩個運(yùn)行于嵌入式操作系統(tǒng)uClinux上的程序。

(1)MyIP:處理IP地址的設(shè)置

程序使用說明:

myip-r ;讀取Flash中的IP地址并檢驗合法性和啟用它

myip-w 172.20.91.15 ;更改Flash中的IP地址為172.20.91.15, ;掩碼為255.255.255.0,并啟用它

myip-w 172.20.91.15-m 255.255.192.0 ;更改Flash中的IP地址為172.20.91.15,掩碼為255.255.192.0,并啟用它

(2)MyMAC,處理MAC地址的設(shè)置

程序使用說明:

mymac-r ;讀取Flash中的MAC地址并檢驗合法性和啟用它

mymac-w aa:bb:dd:ee:ff,更改Flash中的MAC地址為aa:bb:cc:dd:ee:ff,并啟用它

運(yùn)行在S3C4510B上的應(yīng)用程序,可以用串口終端輸入指令的方式運(yùn)行。作為嵌入式應(yīng)用,要求系統(tǒng)復(fù)位就能自動行動指定的程序。這時,我們得到另一種運(yùn)行程序的方式:在uClinux開發(fā)包的4510B文件中配置(相當(dāng)于DOS中的自動批處理程序)。如加入

/bin/./mymac-r

/bin/./myip-r

編譯后的映像文件就可使系統(tǒng)自動運(yùn)行mymac-r和myip-r,完成系統(tǒng)啟動時自動從Flash中讀取MAC地址和IP地址并配置它們。

對于嵌入式網(wǎng)絡(luò)設(shè)備生產(chǎn)廠家,可以使用以上兩個程序的帶“-W”參數(shù)的用法完成MAC和IP地址的設(shè)置;而嵌入式網(wǎng)絡(luò)設(shè)備的用戶只用知道處理IP地址的程序,一般不允許隨著更改MAC地址。

圖2、圖3是兩個程序的流程。

    在這里強(qiáng)調(diào)兩點:

①這兩個程序都用到了Linux的網(wǎng)絡(luò)配置指令ifconfig(具體用法請查閱Linux下的相關(guān)幫助文檔)。在用該指令更改MAC地址時,需要硬件的支持。如一般的通用計算機(jī)上,網(wǎng)卡的MAC地址不能更改,該指令執(zhí)行時將報異常;而在S3C4510B這樣的嵌入式網(wǎng)絡(luò)設(shè)備上,就能成功更改設(shè)備運(yùn)行時的MAC地址。

②Flash的基地址在操作系統(tǒng)啟動前后一般是不同的,這主要是為了提高系統(tǒng)運(yùn)行的速度。另外,對Flash進(jìn)行寫操作之前應(yīng)先擦除操作扇區(qū),注意數(shù)據(jù)的保護(hù);不要擦除整個Flash,否則連同映像文件一起被清掉后,系統(tǒng)也就不能正常運(yùn)行了。在對Flash的操作時應(yīng)特別注意這些。源網(wǎng)站:www.dpj.com.cn。

結(jié)語

嵌入式網(wǎng)絡(luò)設(shè)備的“身份證”——MAC及IP地址的設(shè)置,與通用計算機(jī)的設(shè)置有獨特之處。嵌入式網(wǎng)絡(luò)設(shè)備往往沒有硬盤,不能像通用計算機(jī)那樣操作;也不可能為每一臺設(shè)備“量身”編譯映像文件。本論文介紹的方法——把MAC及IP地址存放在Flash等存儲設(shè)備上,嵌入式操作系統(tǒng)啟動后,自動運(yùn)行一個程序去讀取MAC及IP地址并設(shè)置它。這樣就可以在同一映像文件包下方便地配置嵌入式網(wǎng)絡(luò)設(shè)備MACIP地址。

本站聲明: 本文章由作者或相關(guān)機(jī)構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認(rèn)證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運(yùn)行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機(jī) 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強(qiáng)核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運(yùn)營商 數(shù)字經(jīng)濟(jì)

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團(tuán))股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉