微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

tcp报文路由传输过程

以太网报文封装:

1、以太网报文结构:src_mac,dst_mac,vlan号(非必须),网络层协议号

2、src_mac,dst_mac均是通过路由或arp决定,a、arp学到目的ip地址所在的remote_mac地址,则:src_mac=local_mac(学习网口),dst_mac=remote_mac;b、arp没有学习到remote_mac地址,则通过路由查看目标ip的所在gw,将dst_mac=gw_mac即可

报文路由发送:

1、本机客户端封装好以太网报文后通过src_mac将报文写入对应的网卡缓存中

2、下一跳gw即路由器收到该报文后,发现mac地址是自己,但是ip地址不是自己,根据路由表将dst_mac替换成路由器的下一         跳 gw1_mac;  同时将报文中的src_mac替换成自己的gw_mac

3、路由器重复第二步直至发送到目的ip所在的服务器,路由器不修改数据,仅作路由mac地址替换,服务器回复报文同理,可以通过ip层的TTL值可以判别出报文经过几跳。

 

             ip_addr                        mac_addr                    route     gw             ethX    arp
client:   10.43.85.162[eth5]   00:22:93:75:A2:43  10.0.0.0/8  10.43.85.1  eth5  10.43.85.1  00:19:c6:01:f6:9b  eth5
client_gw:10.43.85.1               00:19:c6:01:f6:9b  //路由器
sever_gw:10.43.42.1              00:d0:d0:c2:14:23  //路由器
server:     10.43.42.199[eth5]  00:22:93:71:DC:35  10.0.0.0/8  10.43.42.1  eth5 10.43.42.1   00:d0:d0:c2:14:23 eth5
 

客户端配置:

客户端SYN报文发送:

客户端SYN+ACK报文接受:

服务器配置:

服务器收到SYN报文:

服务器发送ACK报文:

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐