文章目录
IP数据报的发送和转发过程
IP 数据报的发送和转发过程包含以下两个过程:
- 主机发送IP数据报
- 路由器转发IP数据报
- 直接交付 :源主机与目的主机在同一网络中
- 间接交付 :源主机与目的主机不在同一网络中,需要借助路由器转发数据报。
源主机通过比较与目的主机的网络前缀是否相同,可判断出目的主机是否与自己在同一个网络中
主机发送IP数据报
-
确定目的网络:
-
主机(例如主机C)想要发送数据到另一个主机(例如主机F),首先会确定目的主机 F 的IP地址。
-
主机C 将自己的 IP 地址和子网掩码进行与运算,得到自己所在网络的网络地址。
-
接着,主机C 将目的 主机F 的 IP 地址与自己的子网掩码进行与运算,得到目的网络地址。
-
如果目的网络地址与主机C的网络地址相同 ,说明两者在同一网络中,可以直接通信 ;如果不同 ,则需要通过路由器进行转发。
-
-
指定默认网关:
-
如果目的主机 F 与主机 C 不在同一网络中,主机 C 需要将 IP 数据报发送给路由器(默认网关,为同一网络中的各主机指定的一个路由器)进行转发。
-
默认网关是用户或网络管理员配置的一个路由器接口,用于帮助主机 C 将 IP 数据报转发到其他网络。
-
路由器转发IP数据报
-
接收报文:
-
路由器首先接收从 主机C 发送过来的 IP 数据报。
-
检查收到的 IP 数据报是否正确,生存时间是否结束,首部是否误码
-
若不正确,则丢弃该 IP 数据报,并向发送该 IP 数据报的源主机发送
ICMP
差错报告。
-
-
解析目标IP地址:
-
路由器检查 IP 数据报头部的目标 IP 地址,确定数据报应该被转发到哪个网络。
-
若找到匹配的路由条目,则按该路由条目的指示进行转发,否则丢弃该 IP 数据报,并向发送该 IP 数据报的源主机发送
ICMP
差错报告。 -
路由器不转发广播IP数据报 ,即路由器隔离广播域 。如果因特网中数量巨大的路由器收到广播 IP 数据报后都进行转发,则会造成巨大的广播风暴,严重浪费因特网资源。
-
![[解析目标IP地址.png]]
-
查找最佳匹配路径:
-
路由器在其路由表中查找与目标 IP 地址匹配的路由条目。
-
路由表可能包含静态路由 (由管理员手动配置)和动态路由(由路由器通过路由协议自动获取)。
-
-
确定下一跳路由器:
-
根据路由表的信息,路由器确定 IP 数据报应该被转发给哪个下一跳路由器。
-
这个决定通常基于最佳匹配的原则,即选择能够最有效地将数据报送达目标网络的路由器。
-
-
转发报文:一旦确定了下一跳路由器,路由器就将 IP 数据报发送到相应的接口,以便下一跳路由器可以继续处理这个数据报。
-
更新报文头部(可选) :在转发报文之前,路由器可能会更新报文头部中的
TTL
(生存时间)字段,并重新计算报文头部的校验和。 -
发送报文:最后,路由器将 IP 数据报发送给下一跳路由器,或者直接发送到目标网络中的主机。
示例
根据题目要求,以下是详细解答:
(1) 设备1、设备2和设备3分别应选择什么类型网络设备?
- 设备1:交换机(无VLAN功能)
- 设备2:路由器
- 设备3:交换机(无VLAN功能)
(2) 设备1、设备2 和 设备3 中,哪几个设备的接口需要配置 IP 地址?并为对应的接口配置正确的 IP 地址。
- 设备1:不需要配置IP地址。
- 设备2 :
IF1
:192.168.1.54/30
IF2
:192.168.1.65/26
- 设备3:不需要配置IP地址。
(3) 若主机 H3 发送一个目的地址为 192.168.1.127 的 IP 数据报,网络中哪几个主机会收到该数据报?
首先,我们需要确定 192.168.1.127
是否在同一个子网内。主机 H3 的子网掩码是 /26
,即前 26 位是网络部分,后 6 位是主机部分。
- 主机 H3 的 IP 地址:
192.168.1.66/26
- 目标地址:
192.168.1.127
计算目标地址的网络部分:
192.168.1.127
& 255.255.255.192
-----------------
192.168.1.120
因此,目标地址 192.168.1.127
不在同一子网内(192.168.1.64/26
)。
所以,只有主机 H3 会收到该数据报,其他主机不会收到。