天天看點

IP位址和MAC位址的區分

什麼是MAC位址?

MAC位址也叫實體位址、硬體位址或鍊路位址,由網絡裝置制造商生産時寫在硬體内部。IP位址與MAC位址在計算機裡都是以二進制表示的,IP位址是32位的,而MAC位址則是48位的。MAC位址的長度為48位(6個位元組),通常表示為12個16進制數,每2個16進制數之間用冒号隔開,如:08:00:20:0A:8C:6D就是一個MAC位址,其中前6位16進制數08:00:20代表網絡硬體制造商的編号,它由IEEE(電氣與電子工程師協會)配置設定,而後3位16進制數0A:8C:6D代表該制造商所制造的某個網絡産品(如網卡)的系列号。隻要你不去更改自己的MAC位址,那麼你的MAC位址在世界是惟一

什麼是IP位址?

IP位址是英文Internet Protocol 的縮寫,意思是“網絡之間互連的協定”,也就是為計算機網絡互相連接配接進行通信而設計的協定。在網際網路中,它是能使連接配接到網上的所有計算機網絡實作互相通信的一套規則,規定了計算機在網際網路上進行通信時應當遵守的規則。

MAC位址和IP位址的差別

介紹一下MAC位址的知識,MAC位址和IP位址的差別以及MAC位址在實際應用中所涉及到的安全問題。

一、基礎知識

如今的網絡是分層來實作的,就像是搭積木一樣,先設計某個特定功能的子產品,然後把子產品拼起來組成整個網絡。區域網路也不例外,一般來說,在組網上我們使用的是IEEE802參考模型,從下至上分為:實體層、媒體接入控制層(MAC),邏輯鍊路控制層(LLC)。

辨別網絡中的一台計算機(電腦),一般至少有三種方法,最常用的是域名位址、IP位址和MAC位址,分别對應應用層、網絡層、實體層。網絡管理一般就是在網絡層針對IP位址進行管理,但由于一台計算機(電腦)的IP位址可以由使用者自行設定,管理起來相對困難,MAC位址一般不可更改,是以把IP位址同MAC位址組合到一起管理就成為常見的管理方式。

二、 IP位址與MAC位址的差別

IP位址基于邏輯,比較靈活,不受硬體限制,也容易記憶。MAC位址在一定程度上與硬體一緻,基于實體,能夠辨別具體。這兩種位址各有好處,使用時也因條件而采取不同的位址。

三、為什麼要用到MAC位址

這是由組網方式決定的,如今比較流行的接入Internet的方式(也是未來發展的方向)是把主機通過區域網路組織在一起,然後再通過交換機和 Internet相連接配接。這樣一來就出現了如何區分具體使用者,防止盜用的問題。由于IP隻是邏輯上辨別,任何人都随意修改,是以不能用來辨別使用者;而 MAC位址則不然,它是固化在網卡裡面的。從理論上講,除非盜來硬體(網卡),否則是沒有辦法冒名頂替的(注意:其實也可以盜用,後面将介紹)。

基于MAC位址的這種特點,區域網路采用了用MAC位址來辨別具體使用者的方法。注意:具體實作:在交換機内部通過“表”的方式把MAC位址和IP位址一一對應,也就是所說的IP、MAC綁定。

具體的通信方式:接收過程,當有發給本地區域網路内一台主機的資料包時,交換機接收下來,然後把資料包中的IP位址按照“表”中的對應關系映射成MAC位址,轉發到對應的MAC位址的主機上,這樣一來,即使某台主機盜用了這個IP位址,但由于他沒有這個MAC位址,是以也不會收到資料包。發送過程和接收過程類似,限于篇幅不叙述。

綜上可知,隻有IP而沒有對應的MAC位址在這種區域網路内是不能上網的,于是解決了IP盜用問題。

四、檢視MAC位址

MAC位址固化在網卡中的BIOS中,可以通過DOS指令取得。Win9x使用者可以使用winipcfg指令,Win2k/XP使用者可以使用ipconfig/all指令,其中用16進制表示的12位數就是MAC位址。

五、MAC位址涉及到的安全問題

從上面的介紹可以知道,這種辨別方式隻是MAC位址基于的,如果有人能夠更改MAC位址,就可以盜用IP免費上網了,目前網上針對小區寬帶的盜用MAC位址免費上網方式就是基于此這種思路。如果想盜用别人的IP位址,除了IP位址還要知道對應的MAC位址。舉個例子,獲得區域網路内某台主機的MAC位址,比如想得到區域網路内名為TARGET主機的MAC位址,先用PING指令:PING TARGET,這樣在我們主機上面的ARP表的緩存中就會留下目标位址和MAC映射的記錄,然後通過ARP A指令來查詢ARP表,這樣就得到了指定主機的MAC位址。最後用ARP -s IP 網卡MAC位址,指令把網關的IP位址和它的MAC位址映射起來就可以了。

如果要得到其它網段内的MAC位址,那麼可以用工具軟體來實作,我覺得Windows優化大

師中自帶的工具不錯,點選“系統性能優化”→“系統安全優化”→“附加工具”→“叢集Ping”,可以成批的掃出MAC位址并可以儲存到檔案。

六、ARP協定及原理

ARP(Address Resolution Protocol)是位址解析協定,ARP是一種将IP位址轉化成實體位址的協定。從IP位址到實體位址的映射有兩種方式:表格方式和非表格方式。ARP 具體說來就是将網絡層(IP層,也就是相當于OSI的第三層)位址解析為資料連接配接層(MAC層,也就是相當于OSI的第二層)的MAC位址。ARP協定是通過IP位址來獲得MAC位址的。

ARP原理:要向主機B發送封包,會查詢本地的ARP快取記錄,找到B的IP位址對應的MAC位址後就會進行資料傳輸。如果未找到,則廣播A一個 ARP請求封包(攜帶主機A的IP位址Ia——實體位址Pa),請求IP位址為Ib的主機B回答實體位址Pb。網上所有主機包括B都收到ARP請求,但隻有主機B識别自己的IP位址,于是向A主機發回一個ARP響應封包。其中就包含有B的MAC位址,A接收到B的應答後,就會更新本地的ARP緩存。接着使用這個MAC位址發送資料(由網卡附加MAC位址)。是以,本地高速緩存的這個ARP表是本地網絡流通的基礎,而且這個緩存是動态的。ARP表:為了回憶通信的速度,最近常用的MAC位址與IP的轉換不用依靠交換機來進行,而是在本機上建立一個用來記錄常用主機IP-MAC映射表,即ARP表。

小知識:

七、如何修改自己的MAC位址

MAC位址是固化在網卡中的,MAC位址具有唯一性,難道沒有辦法更改了麼?不是的,我們完全不用修改EPROM的内容,而隻通過修改存儲單元的内容就能達到修改MAC位址的目的。例如在Windows中可以通過系統資料庫來修改。

在“開始”菜單的“運作”中輸入regedit.exe,打開系統資料庫編輯器,展開系統資料庫到:HKEY_LOCAL_MACHINE\System\ CurrentControlSet\Control\Class{4D36E972-E325-11CE-BFC1-08002BE10318}子鍵,在子鍵下的0000,0001,0002等分支中查找DriverDesc(如果你有一塊以上的網卡,就有0001,0002……在這裡儲存了有關你的網卡的資訊,其中的DriverDesc的内容就是你的網卡的資訊描述,比如我的網卡就是Intel 21041 based Ethernet Controller),在這裡假設你的網卡在0000子鍵。

在0000子鍵下添加一個字元串,命名為“NetworkAddress”,鍵值為修改後的MAC位址,要求為連續的12個16進制數。然後在 “0000”子鍵下的NDI\params中建立一項名為NetworkAddress的子鍵,在該子鍵下添加名為“default”的字元串,鍵值為修改後的MAC位址。

在NetworkAddress的子鍵下繼續建立名為“ParamDesc”的字元串,其作用為指定NetworkAddress的描述,其值可為 “MAC Address”。這樣以後打開網絡鄰居的“屬性”,輕按兩下相應的網卡就會發現有一個“進階”設定,其下存在MAC Address的選項,它就是你在系統資料庫中加入的新項NetworkAddress,以後隻要在此修改MAC位址就可以了。

關閉系統資料庫,重新啟動,你的網卡位址已改。打開網絡鄰居的屬性,輕按兩下相應網卡項會發現有一個MAC Address的進階設定項,用于直接修改MAC位址。

當然,你還可以用工具軟體來修改網卡的MAC位址,如MAC2001這款軟體就可以達到我們的目的。

八、如何解決MAC位址帶來的安全問題

我們可以将IP位址和MAC位址捆綁起來來解決這個問題。進入“MS-DOS方式”或“指令提示符”,在指令提示符下輸入指令:ARP -s 10.88.56.72 00-10-5C-AD-72-E3,即可把MAC位址和IP位址捆綁在一起。這樣,就不會出現IP位址被盜用而不能正常使用網絡的情況,可以有效保證小區網絡的安全和使用者的應用。

注意:ARP指令僅對區域網路的上網代理伺服器(server網絡資源)有用,而且是針對靜态IP位址,如果采用Modem撥号上網或是動态IP位址就不起作用。

不過,隻是簡單地綁定IP和MAC位址是不能完全的解決IP盜用問題的。作為一個網絡供應商,他們有責任為使用者解決好這些問題之的後,才交給使用者使用,而不是把安全問題交給使用者來解決。不應該讓使用者來承擔一些不必要盜用的損失。

作為網絡供應商,最常用也是最有效的解決方法就是在IP、MAC綁定的基礎上,再把端口綁定進去,即IP-MAC-PORT三者綁定在一起,端口(PORT)指的是交換機的端口。這就需要在布線時候做好端口定時管理工作。在布線時應該把使用者牆上的接線盒和交換機的端口一一對應,并做好登記工作,然後把使用者交上來的MAC位址填入對應的交換機端口,進而再和IP一起綁定,達到IP-MAC-PORT的三者綁定。這樣一來,即使盜用者擁有這個IP對應的MAC位址,但是它不可能同樣擁有牆上的端口,是以,從實體通道上隔離了盜用者。