如果互聯網層的兩台伺服器之間存在成功的 TCP/IP 連接,並且來源位址和目標 MAC 位址附加在 TCP/IP 封包中,那麼兩台伺服器之間如何共用 MAC 位址?
答案1
您的電腦有一個 ip 和一個網路掩碼,例如。 IP 為 192.168.0.10,網路遮罩為 255.255.255.0(或 CIDR /24)。這意味著前三個位元組(三元組)表示網絡,最後一個位元組表示所述網絡中的計算機。
如果目標位址位於同一網路內,則會將 arp 封包傳送至本機網路的廣播位址,在本例中為 192.168.0.255,這表示傳送至所有本機位址。
who has 192.168.0.27? Please tell 192.168.0.10, my MAC 01:00:f2:10:21:1d.
具有對所包含的 MAC 位址進行位址應答的電腦以及 MAC 和 IP 位址的配對會被快取一段時間,請參閱 arp -a。
如果目標 IP 位址不在同一網路中(根據您的網路掩碼,例如目標是 8.8.4.4 且沒有特定路由,則 ip 封包將傳送至預設網關,預設閘道將它們路由到目標。
答案2
如果伺服器有IP位址A需要透過IP位址與伺服器通信乙, 然後:
- 伺服器A發送一個ARP數據包詢問IP位址B的MAC位址是多少?。該資料包進入廣播乙太網路訊框。
- 當該訊框被廣播時,同一 LAN 上的每個人都會聽到它,因此伺服器 B 會用其 MAC 位址進行應答,此外 B 還會獲知 A 的 MAC 位址。
A 和 B 使用對應的 MAC - IP 填入其 ARP 表。在 A 和 B 之間最後一次通信後的有限時間內,該條目保留在表中,因此表保持合理的大小。