介紹一下MAC地址的知識,MAC地址和IP地址的區(qū)別以及MAC地址在實際應用中所涉及到的安全問題。
一、基礎知識
如今的網(wǎng)絡是分層來實現(xiàn)的掐松,就像是搭積木一樣,先設計某個特定功能的模塊粪小,然后把模塊拼起來組成整個網(wǎng)絡大磺。局域網(wǎng)也不例外,一般來說探膊,在組網(wǎng)上我們使用的是IEEE802參考模型杠愧,從下至上分為:物理層、媒體接入控制層(MAC)逞壁,邏輯鏈路控制層(LLC)流济。
標識網(wǎng)絡中的一臺計算機锐锣,一般至少有三種方法,最常用的是域名地址绳瘟、IP地址和MAC地址雕憔,分別對應應用層、(表糖声,會斤彼,傳)網(wǎng)絡層、(數(shù)據(jù)鏈路)物理層蘸泻。網(wǎng)絡管理一般就是在網(wǎng)絡層針對IP地址進行管理琉苇,但由于一臺計算機的IP地址可以由用戶自行設定,管理起來相對困難悦施,MAC地址一般不可更改翁潘,所以把IP地址同MAC地址組合到一起管理就成為常見的管理方式。
二歼争、什么是MAC地址
MAC地址就是在媒體接入層上使用的地址,也叫物理地址渗勘、硬件地址或鏈路地址沐绒,由網(wǎng)絡設備制造商生產(chǎn)時寫在硬件內(nèi)部。MAC地址與網(wǎng)絡無關旺坠,也即無論將帶有這個地址的硬件(如網(wǎng)卡乔遮、集線器、路由器等)接入到網(wǎng)絡的何處取刃,都有相同的MAC地址蹋肮,它由廠商寫在網(wǎng)卡的BIOS里。MAC地址可采用6字節(jié)(48比特)或2字節(jié)(16比特)這兩種中的任意一種璧疗。但隨著局域網(wǎng)規(guī)模越來越大坯辩,一般都采用6字節(jié)的MAC地址。這個48比特都有其規(guī)定的意義崩侠,前24位是由生產(chǎn)網(wǎng)卡的廠商向IEEE申請的廠商地址漆魔,目前的價格是1000美元買一個地址塊,后24位由廠商自行分配却音,這樣的分配使得世界上任意一個擁有48位MAC?地址的網(wǎng)卡都有唯一的標識改抡。另外,2字節(jié)的MAC地址不用網(wǎng)卡廠商申請系瓢。?
MAC地址通常表示為12個16進制數(shù)阿纤,每2個16進制數(shù)之間用冒號隔開,如:08:00:20:0A:8C:6D就是一個MAC地址夷陋,其中前6位16進制數(shù)08:00:20代表網(wǎng)絡硬件制造商的編號欠拾,它由IEEE分配胰锌,而后6位16進制數(shù)0A:8C:6D代表該制造商所制造的某個網(wǎng)絡產(chǎn)品(如網(wǎng)卡)的系列號。每個網(wǎng)絡制造商必須確保它所制造的每個以太網(wǎng)設備都具有相同的前三字節(jié)以及不同的后三個字節(jié)清蚀。這樣就可保證世界上每個以太網(wǎng)設備都具有唯一的MAC?地址匕荸。
三、IP地址與MAC地址的區(qū)別程序
IP地址基于邏輯枷邪,比較靈活榛搔,不受硬件限制,也容易記憶东揣。MAC地址在一定程度上與硬件一致践惑,基于物理,能夠標識具體嘶卧。這兩種地址各有好處尔觉,使用時也因條件而采取不同的地址。?四芥吟、為什么要用到MAC地址這是由組網(wǎng)方式?jīng)Q定的侦铜,如今比較流行的接入Internet的方式(也是未來發(fā)展的方向)是把主機通過局域網(wǎng)組織在一起,然后再通過交換機和?Internet相連接钟鸵。這樣一來就出現(xiàn)了如何區(qū)分具體用戶钉稍,防止盜用的問題。由于IP只是邏輯上標識棺耍,任何人都隨意修改贡未,因此不能用來標識用戶;而?MAC地址則不然蒙袍,它是固化在網(wǎng)卡里面的俊卤。從理論上講,除非盜來硬件(網(wǎng)卡)害幅,否則是沒有辦法冒名頂替的(注意:其實也可以盜用消恍,后面將介紹)。?基于MAC地址的這種特點以现,局域網(wǎng)采用了用MAC地址來標識具體用戶的方法哺哼。注意:具體實現(xiàn):在交換機內(nèi)部通過“表”的方式把MAC地址和IP地址一一對應,也就是所說的IP叼风、MAC綁定取董。?具體的通信方式:接收過程,當有發(fā)給本地局域網(wǎng)內(nèi)一臺主機的數(shù)據(jù)包時无宿,交換機接收下來茵汰,然后把數(shù)據(jù)包中的IP地址按照“表”中的對應關系映射成MAC地址,轉(zhuǎn)發(fā)到對應的MAC地址的主機上孽鸡,這樣一來蹂午,即使某臺主機盜用了這個IP地址栏豺,但由于他沒有這個MAC地址,因此也不會收到數(shù)據(jù)包豆胸。發(fā)送過程和接收過程類似奥洼,限于篇幅不敘述。?綜上可知晚胡,只有IP而沒有對應的MAC地址在這種局域網(wǎng)內(nèi)是不能上網(wǎng)的灵奖,于是解決了IP盜用問題。?五估盘、MAC地址涉及到的安全問題從上面的介紹可以知道瓷患,這種標識方式只是MAC地址基于的,如果有人能夠更改MAC地址遣妥,就可以盜用IP免費上網(wǎng)了擅编,目前網(wǎng)上針對小區(qū)寬帶的盜用MAC地址免費上網(wǎng)方式就是基于此這種思路。如果想盜用別人的IP地址箫踩,除了IP地址還要知道對應的MAC地址爱态。舉個例子,獲得局域網(wǎng)內(nèi)某臺主機的MAC地址境钟,比如想得到局域網(wǎng)內(nèi)名為TARGET主機的MAC地址锦担,先用PING命令:PING?TARGET,這樣在我們主機上面的ARP表的緩存中就會留下目標地址和MAC映射的記錄吱韭,然后通過ARP?A命令來查詢ARP表,這樣就得到了指定主機的MAC地址鱼的。最后用ARP?-s?IP?網(wǎng)卡MAC地址理盆,命令把網(wǎng)關的IP地址和它的MAC地址映射起來就可以了。?如果要得到其它網(wǎng)段內(nèi)的MAC地址凑阶,那么可以用工具軟件來實現(xiàn)猿规,我覺得Windows優(yōu)化大?師中自帶的工具不錯,點擊“系統(tǒng)性能優(yōu)化”→“系統(tǒng)安全優(yōu)化”→“附加工具”→“集群Ping”宙橱,可以成批的掃出MAC地址并可以保存到文件姨俩。小知識:ARP(Address?Resolution?Protocol)是地址解析協(xié)議,ARP是一種將IP地址轉(zhuǎn)化成物理地址的協(xié)議师郑。從IP地址到物理地址的映射有兩種方式:表格方式和非表格方式环葵。ARP?具體說來就是將網(wǎng)絡層(IP層,也就是相當于OSI的第三層)地址解析為數(shù)據(jù)連接層(MAC層宝冕,也就是相當于OSI的第二層)的MAC地址张遭。ARP協(xié)議是通過IP地址來獲得MAC地址的。ARP原理:郴鰽要向主機B發(fā)送報文地梨,會查詢本地的ARP緩存表菊卷,找到B的IP地址對應的MAC地址后就會進行數(shù)據(jù)傳輸缔恳。如果未找到,則廣播A一個?ARP請求報文(攜帶主機A的IP地址Ia——物理地址Pa)洁闰,請求IP地址為Ib的主機B回答物理地址Pb歉甚。網(wǎng)上所有主機包括B都收到ARP請求,但只有主機B識別自己的IP地址扑眉,于是向A主機發(fā)回一個ARP響應報文纸泄。其中就包含有B的MAC地址,A接收到B的應答后襟雷,就會更新本地的ARP緩存刃滓。接著使用這個MAC地址發(fā)送數(shù)據(jù)(由網(wǎng)卡附加MAC地址)。因此耸弄,本地高速緩存的這個ARP表是本地網(wǎng)絡流通的基礎咧虎,而且這個緩存是動態(tài)的。ARP表:為了回憶通信的速度计呈,最近常用的MAC地址與IP的轉(zhuǎn)換不用依靠交換機來進行砰诵,而是在本機上建立一個用來記錄常用主機IP-MAC映射表,即ARP表捌显。???六茁彭、如何修改自己的MAC地址MAC地址是固化在網(wǎng)卡中的,MAC地址具有唯一性扶歪,難道沒有辦法更改了么理肺?不是的,我們完全不用修改EPROM的內(nèi)容善镰,而只通過修改存儲單元的內(nèi)容就能達到修改MAC地址的目的妹萨。例如在Windows中可以通過注冊表來修改。?在“開始”菜單的“運行”中輸入regedit.exe炫欺,打開注冊表編輯器乎完,展開注冊表到:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}子鍵,在子鍵下的0000品洛,0001树姨,0002等分支中查找DriverDesc(如果你有一塊以上的網(wǎng)卡,就有0001桥状,0002……在這里保存了有關你的網(wǎng)卡的信息帽揪,其中的DriverDesc的內(nèi)容就是你的網(wǎng)卡的信息描述,比如我的網(wǎng)卡就是Intel?21041?based?Ethernet?Controller)辅斟,在這里假設你的網(wǎng)卡在0000子鍵台丛。在0000子鍵下添加一個字符串,命名為“NetworkAddress”,鍵值為修改后的MAC地址挽霉,要求為連續(xù)的12個16進制數(shù)防嗡。然后在?“0000”子鍵下的NDI\params中新建一項名為NetworkAddress的子鍵,在該子鍵下添加名為“default”的字符串侠坎,鍵值為修改后的MAC地址蚁趁。在NetworkAddress的子鍵下繼續(xù)建立名為“ParamDesc”的字符串,其作用為指定NetworkAddress的描述实胸,其值可為?“MAC?Address”他嫡。這樣以后打開網(wǎng)絡鄰居的“屬性”,雙擊相應的網(wǎng)卡就會發(fā)現(xiàn)有一個“高級”設置庐完,其下存在MAC?Address的選項钢属,它就是你在注冊表中加入的新項NetworkAddress,以后只要在此修改MAC地址就可以了门躯。?關閉注冊表淆党,重新啟動,你的網(wǎng)卡地址已改讶凉。打開網(wǎng)絡鄰居的屬性染乌,雙擊相應網(wǎng)卡項會發(fā)現(xiàn)有一個MAC?Address的高級設置項,用于直接修改MAC地址懂讯。?當然荷憋,你還可以用工具軟件來修改網(wǎng)卡的MAC地址,如MAC2001這款軟件就可以達到我們的目的褐望。???七勒庄、如何解決MAC地址帶來的安全性問題我們可以將IP地址和MAC地址捆綁起來來解決這個問題。進入“MS-DOS方式”或“命令提示符”瘫里,在命令提示符下輸入命令:ARP?-s?10.88.56.72?00-10-5C-AD-72-E3实蔽,即可把MAC地址和IP地址捆綁在一起。這樣减宣,就不會出現(xiàn)IP地址被盜用而不能正常使用網(wǎng)絡的情況盐须,可以有效保證小區(qū)網(wǎng)絡的安全和用戶的應用玩荠。?注意:ARP命令僅對局域網(wǎng)的上網(wǎng)代理(網(wǎng)絡信息的中轉(zhuǎn)站突破自身IP訪問限制)服務器(文件傳輸協(xié)議支持FTP協(xié)議的服務器就是FTP服務器)有用漆腌,而且是針對靜態(tài)IP地址,如果采用Modem撥號上網(wǎng)或是動態(tài)IP地址就不起作用阶冈。?不過闷尿,只是簡單地綁定IP和MAC地址是不能完全的解決IP盜用問題的。作為一個網(wǎng)絡供應商女坑,他們有責任為用戶解決好這些問題之的后填具,才交給用戶使用,而不是把安全問題交給用戶來解決。不應該讓用戶來承擔一些不必要盜用的損失劳景。