今天想和你聊聊Mac地址。
到底啥是Mac地址?官方直譯是媒體存取控制位址,是一個用來確認網(wǎng)絡設備位置的位址。
在OSI模型中,第三層網(wǎng)絡層負責IP地址,第二層數(shù)據(jù)鏈路層則負責MAC位址
MAC地址用于在網(wǎng)絡中標識唯一一個網(wǎng)卡,一臺設備若有一或多個網(wǎng)卡,則每個網(wǎng)卡都需要并會有一個唯一的MAC地址。
那么,Mac地址真的不會有重復的嗎,怎么做到全球唯一的?
01IP地址和Mac地址產(chǎn)生的目的是方便別人找到自己
Mac地址有點像身份證號碼,而IP地址就像門牌號碼。
MAC地址(物理地址、硬件地址)是實實在在的網(wǎng)絡設備出身地址,它是由廠商寫入網(wǎng)絡設備的bios中。
網(wǎng)絡設備廠商也并不能隨意的使用Mac地址,需要向IEEE申請,當然廠商申請需要付費。
MAC地址的長度為48位(6個字節(jié)),通常表示為12個16進制數(shù)。
如:00-16-EA-AE-3C-40就是一個MAC地址,其中前3個字節(jié),16進制數(shù)00-16-EA代表網(wǎng)絡硬件制造商的編號。
它由IEEE(電氣與電子工程師協(xié)會)分配,而后3個字節(jié),16進制數(shù)AE-3C-40代表該制造商所制造的某個網(wǎng)絡產(chǎn)品(如網(wǎng)卡)的系列號。
只要不更改自己的MAC地址,MAC地址在世界是唯一的。
形象地說,MAC地址就如同身份證上的身份證號碼,具有唯一性,比如一臺電腦的網(wǎng)卡壞掉了之后,更換一塊網(wǎng)卡之后MAC地址就會變。
IP 地址是基于邏輯的,比較靈活,不受硬件的限制,也容易記憶。
而 MAC地址在一定程度上與硬件一致,是基于物理的,能夠標識具體的網(wǎng)絡節(jié)點。
這兩種地址各有優(yōu)點,使用時也因條件不同而采取不同的地址。
02聊聊網(wǎng)絡的變遷
早期的以太網(wǎng)只有集線器(Hub)、沒有交換機(Switch),所以發(fā)出去的包能被以太網(wǎng)內(nèi)所有的機器監(jiān)聽到。
所以數(shù)據(jù)包就需要帶上源mac地址和目的mac地址,每個機器只需要接受和自己的MAC地址相匹配的數(shù)據(jù)包。
局域網(wǎng)數(shù)據(jù)傳輸并不是通過網(wǎng)絡層的IP地址進行路由和轉(zhuǎn)發(fā),想要在局域網(wǎng)中發(fā)送數(shù)據(jù),還需要知道設備的mac地址。
比如我們的電腦向其他局域網(wǎng)中的其他電腦發(fā)送數(shù)據(jù)時,它會先通過ARP(地址解析協(xié)議)在局域網(wǎng)中獲取目的IP地址所對應的MAC地址。
在局域網(wǎng)中如果采用集線器來連接不同的網(wǎng)絡設備,相同的MAC地址一般不會出現(xiàn)太多的問題。
在集線器連接的局域網(wǎng)中所有的數(shù)據(jù)幀都會被廣播給局域網(wǎng)內(nèi)的全部主機,而通過交換機連接不同的網(wǎng)絡設備就會受到影響,交換機需要學習局域網(wǎng)中不同設備的Mac地址并將數(shù)據(jù)幀轉(zhuǎn)發(fā)給特定的主機。
所以Mac地址其實是可以重復使用的,只是不能在同一個局域網(wǎng)中使用相同的MAC地址。
03Mac地址會有重復
按照IEEE的協(xié)定每個網(wǎng)絡設備出廠都會有全球唯一的Mac地址,并且使用過的也不會再重復使用。
但不意味著Mac地址就不會出現(xiàn)重復了,很多小伙伴們都改過Mac地址,有的直接可以通過系統(tǒng)進行修改。
在命令提示符下輸入命令“ipconfig /all”回車之后就會顯示當前計算機的一些網(wǎng)絡信息,其中“Physical Address”字樣的這一項就是當前計算機中網(wǎng)卡的 MAC地址。
當然,如果計算機中安裝有多個網(wǎng)卡,則會有多個“Physical Address”字樣。
有的網(wǎng)絡設備允許你在管理后臺手動的修改mac地址。
以上這些都是通過虛擬的方式覆蓋原有的Mac地址,并沒有更改掉設備出身時烙印的Mac地址。
出身時烙印的Mac地址也并不是不能修改,通過硬件寫入的方式同樣的可以修改Mac地址,本質(zhì)上Mac地址就是一串二進制數(shù),存放在了bios的某個存儲區(qū)域內(nèi)。