TCP/IP详解 IP路由选择
在本篇文章中,将通过例子来说明IP路由选择过程。
如图所示,主机A与主机B分别在两个不同子网上,中间通过同一个路由器连接。如果主机A请求与主机B进行通信,主机A寻找主机B的位置的过程就可以理解为IP路由选择的过程。
现在主机A的用户通过Ping命令确认与主机B的连通性。ping命令看似简单,但是其中IP路由选择的过程还是需要很多步骤。具体步骤如下:
-
当在主机A上输入ping 10.142.148.10后,主机A的因特网控制报文协议(ICMP)创建一个回应请求数据包,其数据域中只包含有字母。
-
ICMP协议会将刚刚创建的回应请求数据包(有效负荷)转交给因特网协议(IP协议)。IP协议会对这个数据包进行封装,创建一个数据包。在IP协议创建的数据包中,包括主机A的IP地址,目的主机B的IP地址以及值为01h的协议字段。当数据包达到主机B时,主机B通过判断协议字段01h,将这个有效负荷交给ICMP协议处理。
-
IP协议创建数据包后,会判断目的主机B的IP地址是处于本地网络中还是处于远程网络。根据IP地址规则,主机A、B属于不同网络。此时IP协议所创建的数据包会被发送到默认的网关。(在每个终端设备中,网络配置中需要包含自身的IP地址,以及默认到的网关地址。在不同网络之间的主机互相通信,依靠的就是网关设备)
-
如图中所示,默认的网关就是图中的路由器。此时我们需要确认路由器的MAC地址。假设路由器对应连接到主机A的路由器网络接口的IP