设为首页收藏本站language 语言切换
查看: 2652|回复: 15
收起左侧

ARP转发机制

[复制链接]
发表于 2014-9-23 11:53:07 | 显示全部楼层 |阅读模式
麻烦解释这个图整个发包的流程,其中交换机是2层的
我在PC1和PC3上有配置192.168.1.254作为网关
PC1能发送ARP请求到PC3因为192.168.1.200在192.168.1.1/24地址范围内,但是PC1无法顺利发送回来,因为192.168.1.1不在192.168.1.200/25地址范围内。但是PC2和PC3是在同一网段,可以发送数据,也就是可以先经过PC2在转发数据到PC1,但是事实上是PING不通的。请问这是什么原理,可以解释下么。

拓扑图

拓扑图
发表于 2014-9-23 12:16:56 | 显示全部楼层
要判断两个IP地址是不是在同一个网段,就将它们的IP地址分别与子网掩码做与运算,得到的结果一网络号,如果网络号相同,就在同一子网,否则,不在同一子网。他们本来就是不一个网段的
沙发 2014-9-23 12:16:56 回复 收起回复
回复 支持 反对

使用道具 举报

 成长值: 55345
发表于 2014-9-23 12:44:55 | 显示全部楼层
你觉得pc3会认为pc1是同一网段的吗?
板凳 2014-9-23 12:44:55 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2014-9-23 12:49:43 | 显示全部楼层
我试过了  把PC2换成路由器是可以的,但是你的PC2是电脑,不会帮你转发数据包
地板 2014-9-23 12:49:43 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2014-9-23 13:07:44 | 显示全部楼层
全网联通 QQ图片20140923130432.jpg
5# 2014-9-23 13:07:44 回复 收起回复
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2014-9-26 17:26:33 | 显示全部楼层
xiaoyueraymond 发表于 2014-9-23 12:16
要判断两个IP地址是不是在同一个网段,就将它们的IP地址分别与子网掩码做与运算,得到的结果一网络号,如果 ...

太棒了,感谢楼主
谢谢了。这个同网段的概念是有的,但是相与以后PC1的可用范围是包含PC3的,也就是说PC1认为PC3跟他就是同一网段的,从而会发送ARP包去请求对端的MAC,而我就是不清楚PC3返还的机制是怎么样的,PC3也会认定PC2是在同一网段的,看子网地址可得。
6# 2014-9-26 17:26:33 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-9-26 17:28:01 | 显示全部楼层
xiaoyueraymond 发表于 2014-9-23 12:49
我试过了  把PC2换成路由器是可以的,但是你的PC2是电脑,不会帮你转发数据包

PC2换成路由器,走3层的话肯定可以的,我也做过相应的实验的。
但是我觉得单单走2层不知道怎么解释
7# 2014-9-26 17:28:01 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-9-26 17:54:08 | 显示全部楼层
xiaoyueraymond 发表于 2014-9-23 12:49
我试过了  把PC2换成路由器是可以的,但是你的PC2是电脑,不会帮你转发数据包

我上传了2张图。分别是PC1向PC3发包时的整个流程。当PC1向PC3发送CIMP包时,会相应产生一个ARP包,最终ARP包能顺利走到PC3,只是没有回ARP包。
这个机制我就不清楚了。而且到PC2也不会回,我很疑惑。
QQ截图20140926174606.png
QQ截图20140926174653.png
8# 2014-9-26 17:54:08 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-9-26 17:55:54 | 显示全部楼层
七曜 发表于 2014-9-23 12:44
你觉得pc3会认为pc1是同一网段的吗?

PC1的可用子网地址是包含PC3的。
也就是说PC1认为是PC3是和自己同一网段的,我发的图也证明了这点,因为ARP包能到达PC3,只是没有回包。
9# 2014-9-26 17:55:54 回复 收起回复
回复 支持 反对

使用道具 举报

 成长值: 55345
发表于 2014-9-26 18:19:15 | 显示全部楼层
网络安全小菜鸟 发表于 2014-9-26 17:55
PC1的可用子网地址是包含PC3的。
也就是说PC1认为是PC3是和自己同一网段的,我发的图也证明了这点,因为 ...

问题是你觉得pc3会认为pc1是同一网段吗
10# 2014-9-26 18:19:15 回复 收起回复
回复 支持 反对

使用道具 举报

 楼主| 发表于 2014-9-26 18:59:20 | 显示全部楼层
七曜 发表于 2014-9-23 12:44
你觉得pc3会认为pc1是同一网段的吗?

PC3和PC2也不在同一网段。但可以互相PING通,怎么解释
11# 2014-9-26 18:59:20 回复 收起回复
回复 支持 反对

使用道具 举报

 成长值: 55345
发表于 2014-9-26 20:51:36 | 显示全部楼层
网络安全小菜鸟 发表于 2014-9-26 18:59
PC3和PC2也不在同一网段。但可以互相PING通,怎么解释

可是PC2和PC3就是同一个网段的啊,子网划分你都没了解吗
12# 2014-9-26 20:51:36 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2014-9-28 09:15:46 | 显示全部楼层
网络安全小菜鸟 发表于 2014-9-26 18:59
PC3和PC2也不在同一网段。但可以互相PING通,怎么解释

arp 回应包 如果网段不同,是不会回应的 PC2,PC3在同一网段,所以可以ping通,PC1认为PC3在同一网段,所以会发ARP请求,但是PC3发现PC1不在同一网段,是不会生成ARP应答帧的,ARP只能再同一网段使用,跨网段需要请求网关
13# 2014-9-28 09:15:46 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2014-9-28 09:16:19 | 显示全部楼层
七曜 发表于 2014-9-23 12:44
你觉得pc3会认为pc1是同一网段的吗?

同意,哈哈
14# 2014-9-28 09:16:19 回复 收起回复
回复 支持 反对

使用道具 举报

发表于 2014-9-28 09:17:58 | 显示全部楼层
网络安全小菜鸟 发表于 2014-9-26 17:55
PC1的可用子网地址是包含PC3的。
也就是说PC1认为是PC3是和自己同一网段的,我发的图也证明了这点,因为 ...

而且PC2是终端,不是路由器,不会帮PC3转发到PC1的包的。。。
15# 2014-9-28 09:17:58 回复 收起回复
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2025-2-24 20:17 , Processed in 0.068725 second(s), 23 queries , Redis On.  

  Powered by Discuz!

  © 2001-2025 HH010.COM

快速回复 返回顶部 返回列表