IP地址和MAC地址可以類比生活中寄快遞的過程。
(資料圖片)
在整個網絡中數據被封裝成數據報文進行發送,就像我們生活中寄快遞時將物品放進包裹中。而數據在路由器之間的跳轉也可以看作是不同地區快遞小哥對物流的交接。
IP地址ip地址等價于快遞包裹上的收件人地址。
快遞員通過收件人地址將包裹在出發地到目的地之間連出一條線,然后通過不同地區之間的物流中轉最后將包裹送到收件人的手中。
從上圖的粗箭頭所描述的路徑便可達到目的地址,陜西省-西安市-xx縣-xx街道-…。
同理,ip地址也具備此功能,通過IP地址的網絡位可以確定某個主機所在網絡的位置,從而明確一條數據傳送的路徑。例如目的地址為192.168.10.110/26,則該地址所在的網絡為192.168.10.64
用之前圖示地址的尋址方式,我們可以模擬這一過程
那么,還是那個問題,為什么還要MAC地址呢?
MAC地址MAC地址等價于快遞包裹上的收件人姓名。
MAC地址更多是用于確認對方信息而存在的。就如同快遞跨越幾個城市來到你面前,快遞員需要和你確認以下收件人是否正確,才會把包裹交給你一樣。
這里我們模擬一個場景,比如在學校里同一個班級的學生大家互相都認識,互相交流就不需要借助學號(這里抽象成ip地址),直接喊名字即可?!拔?,那個誰,把你作業讓我抄一下”。
這個過程可對應網絡中同一個交換機或集線器連接的局域網通信。在局域網中通信需要通過MAC地址進行通信。將數據封裝成幀時會插入源mac地址和目的mac地址(如果不知到對方mac地址會發送arp廣播報文獲取對方mac地址)。以太網幀結構:
(———圖來自網絡,侵刪)
而后,幀結構再次添加IP頭部信息。
雖然這里有ip地址,但是它在局域網中不起作用,因為arp是用于網絡中尋址的,而在局域網中所有主機互相可見。(除此之外,局域網中ip地址最多是在arp廣播時,作為收到包的主機解包時判定的依據,判定自己是否為目的主機,從而選擇是否回應arp應答)。
而IP地址的使用條件,是在跨網絡之后。兩個網絡之間想要進行通信需要通過一個媒介,因為在網絡內部的主機定位不到網絡外的某個主機,即使他們只隔了一個網段也是一樣。(歡迎關注公眾號:網絡工程師阿龍)而跨網段的媒介就是路由器,只要把ip地址告訴它,他就能找到對方所在的網絡。
這就像是我是2020屆計算機科學專業1班學生xx(學號202015162,15代指專業計算機科學專業,62代指“我”在本班的學號),我現在想找2022屆學弟yy(學號2022…)。我們之間不認識,但是我可以找一個中間人,幫我送信。
這個中間人是局域網網關,是路由器。他們的功能是,轉述我的消息,并且按照目的ip地址將它發給下一個“中間人”,最后送到“yy”手中。
以下是關于mac地址與ip地址的愛恨糾纏… 以下內容有借鑒到文章:《閃客sun(低并發編程):如果讓你來設計網絡》
首先我們需要明確的是,MAC地址的誕生早于IP地址。在計算機設計之初,設備之間使用MAC地址互相確認身份,因為當時的網絡拓撲并不大,我們完全可以讓兩臺計算機之間兩兩互相發送數據。如果有5個主機需要互通的話,那么它的拓撲結構可能是這樣:
如果是這樣的話,我們其實無需MAC地址,因為每個網卡明確對應一臺主機。而實際是,一臺計算機要配置這么多網卡的需要耗費更多的money,你也不想買一臺計算機后還需要額外再買十幾個網卡把。
因此我們可以采用集線器的方式將所有計算機通過網線聚集在一起會更加方便。
每臺主機發送數據前需要攜帶自己和對方的目的MAC地址,因為hub集線器只是將所有數據從其他接口發送出去,它將數據的是否接收留給了主機自己判斷。
集線器只是無腦的做數據發送,因此我們認為它是數據鏈路層的設備。
集線器太笨了,它將每一通信都發給所有主機,在各主機之間交流頻繁時會造成網絡的擁堵乃至癱瘓,因此我們進行了升級,使用交換機設備。
交換機內部維護一張 MAC 地址表,記錄MAC地址與交換機各端口之間的關系,這樣就無需將所有數據發送的局域網中。通過思科的Cisco packet tracer仿真軟件可以看到交換機的MAC地址表。
這樣,當pc0(192.168.1)ping pc3(192.168.4)時,交換機查自己的mac表,發現自己的以太網fa0/4接口的出口對應的就是目的主機mac地址,則交換機將自己該數據報文轉發從fa0/4接口轉發出去。同時pc3收到了來自pc0的數據報文。
交換機相對集線器,擁有決定數據從交換機的哪個端口轉發出去的功能,因此我們認為交換機在數據鏈路層(決定數據轉發至哪一條鏈路上)。
以上集線器和交換機都是局域網的通行,無需IP地址參與。而隨著網絡的擴大,局域網規則已經不再適合了。
許多個類似上述的局域網組成一個大的互聯網。它們彼此相連互相通信。
如果在學校網絡內部向訪問某個研究機構共享的資料,這就是跨網絡訪問了。此時IP地址才派上用場。ip地址給出一段段具備層級關系的數字地址,它就像思維導圖一樣可以通過給定地址高效的找出我們想要的那一項。
當有網絡連接上互聯網時,給它分配一個ip地址,這樣就能通過這些ip地址確定對方網絡(或設備)在互聯網絡中的位置,從而進行訪問。
連接在互聯網上的具有ip的可以是一個單個的設備,比如某個服務器、某個網絡攝像頭等,也可以是某個局域網,如學校的校園網,公司內部網絡等(局域網與公網通信使用NAT、PAT等方式,或內網穿透等技術)。
為了實現在網絡中,跨網段的訪問,因此誕生出新的設備叫路由器。它可以根據內置的路由條目決定將數據包轉發到哪個網絡中,最終可以到達目的網絡。
需要注意的是,路由器是多個網絡的中間人,它有很多端口分別處于不同的網絡中(路由器的每一個端口,都有獨立的 MAC 地址和IP地址),這樣它就可以把“來自A網絡的信息轉發至B網絡,因為路由器的接口同時連接這這幾個網絡”。
路由器可以讓數據在網絡中跨網絡的通信,因此我們認為路由器是網絡層的設備。
終于,我們理清楚了整個IP與MAC的關系??偨Y一下:
各個設備之間傳遞數據時,需要使用到MAC地址以確定對方的身份(場景:兩個路由器之間跳轉,局域網內主機通信)。各個網路之間通行需要使用到IP地址,主要是為了定位目的地址所在的位置,通過IP的分段機制推演出從源IP到目的IP的一條路徑,而后數據包通過這條路徑將數據送達。X 關閉
X 關閉
- 15G資費不大降!三大運營商誰提供的5G網速最快?中國信通院給出答案
- 2聯想拯救者Y70發布最新預告:售價2970元起 迄今最便宜的驍龍8+旗艦
- 3亞馬遜開始大規模推廣掌紋支付技術 顧客可使用“揮手付”結賬
- 4現代和起亞上半年出口20萬輛新能源汽車同比增長30.6%
- 5如何讓居民5分鐘使用到各種設施?沙特“線性城市”來了
- 6AMD實現連續8個季度的增長 季度營收首次突破60億美元利潤更是翻倍
- 7轉轉集團發布2022年二季度手機行情報告:二手市場“飄香”
- 8充電寶100Wh等于多少毫安?鐵路旅客禁止、限制攜帶和托運物品目錄
- 9好消息!京東與騰訊續簽三年戰略合作協議 加強技術創新與供應鏈服務
- 10名創優品擬通過香港IPO全球發售4100萬股 全球發售所得款項有什么用處?