赞
踩
局域网A中主机A产生的数据包是如何发送至局域网B中的主机B的。下图展示了数据包从主机A中应用程序生成到转发到主机B的过程。
主机A的应用程序先生成应用层数据,应用层数据达到传输层后,传输层根据应用层协议类型,对应用层数据进行TCP或UDP封装,封装好的报文送至网络层进行网络层封装,网络层对数据进行封装时,要添加IP头,IP头中的源IP地址填写主机A的IP地址,目的IP填写主机B所在局域网B映射的B的外网IP地址。IP层数据包之后传输到数据链路层进行数据链路层的封装。一般来讲,局域网采用以太网的组网方式,因此数据链路层是根据MAC地址对帧数据进行转发的。主机A在数据传送开始是不知道主机B的MAC地址的,因此,①主机A会先发送ARP广播数据包至网络,请求主机B的MAC地址。②交换机A接收到ARP广播数据包后,先进行解封装,学习主机A的IP地址和MAC地址,接着对ARP包进行重新封装并继续广播至除接收端口外的所有端口。③路由器接收到该ARP广播数据包后,解封装ARP数据包,发现其中的目的IP地址为外网IP,此时,路由器A将ARP响应包的源MAC设置为自己的MAC地址,目的MAC设置为主机A的MAC地址并发送到交换机A。④交换机A接收到该ARP响应数据包后,发现目的MAC为主机A,因此直接将该ARP响应包转发至主机A。到此,主机A知道了发送数据到主机B需要封装的目的MAC地址。⑤主机A将数据包封装好后发送至交换机A。⑥交换机根据MAC地址将数据都发送至路由器A。⑦路由器A作为局域网A与外网的连接,它同时也要承担网络地址转换的工作,将接收的数据用映射好的外网IP作为源IP进行重新封装,之后将数据转发至外网。(根据NAT地址转换的规则,局域网地址转换为外网地址有三种方式:
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。