我了解ARP工作原理,一台主机发出“谁拥有此IP?”的MAC广播。网络中的某些主机回答“我拥有该IP”。
但是,如果将路由器连接到同一LAN会发生什么,路由器的功能将是将LAN连接到WAN(希望我没错)。然后,要求地址的主机会自动切换并使用其数据将消息发送到连接的路由器,或者会发生什么情况?
答案 0 :(得分:1)
发生的事情是,您的IP堆栈首先确定将数据包发送到的位置。如果转到直接连接的网络中的IP地址,它将直接发送数据包,否则,会将数据包发送到网关。
这听起来对您来说很抽象。对于简单的情况,假设您具有以下网络:
host_a host_b
+----------+ +----------+
|10.1.1.101| |10.1.1.102|
+-----+----+ +-----+----+
| | +--------+ <--------->
-----+--------------+-----------+10.1.1.1|--------< INTERNET >
+--------+ <--------->
Router
在host_a上,您将
在host_b上,您将
假设host_a希望将数据包发送到10.1.1.102。如果使用IP地址和网络掩码,则会看到它在同一子网中。因此,host_a将向网络发送ARP请求,询问“嘿,谁拥有10.1.1.102?” Host_b将以其MAC-ID进行响应。
现在假设host_a想要发送到8.8.8.8。那不在本地网络上。因此,host_a现在将其发送到其默认网关10.1.1.1。 Host_a将发送ARP请求“嘿,谁有10.1.1.1?”路由器将以其MAC-ID进行响应。
上面的过程极大地简化了实际发生的事情,但是它可以帮助您进一步了解网络的工作方式。
(该问题可能更适合于另一个SE网站,但随后有人可能会迁移它)