源主机如何判断目标地址在不在同一个网络中:
假设主机C要给F发送数据,
主机C用自己的ip地址和子网掩码进行相与得出主机C所在网络的网络地址
主机C再用主机F的ip地址与当前的子网掩码相与得出得出主机F所在网络的网络地址
如果这两个值相同,可以证明在一个网络中,直接交付即可。
如果值不同,则说明没有在同一网络,需要间接交付,通过路由器的转发。
直接交付
间接交付:需要通过路由器进行转发
期间,如果报文出错,丢弃报文,会向源主机发送ICMP差错报文,所以IP网络层是不保证可靠传输的
主机C如何知道向哪个路由器发送数据呢?
默认网关,这里指的是接口0
整个转发过程中,数据报中的源ip和目标ip不会变,但是数据帧中的源mac地址和目标mac地址会不断的调整。
路由表:
需要注意的是,路由器是屏蔽广播报的,是因为如果网络中有大量的广播,会造成网络的堵塞。