HH123_3 2021-11-17 20:29 采纳率: 86.8%
浏览 65
已结题

为什么和书上说的不一样呢?

看《whireshark网络分析就这么简单》第一节从一道面试题开始说起,我用packet tracer进行模拟,但是实验结果和书上的不同。书上说在执行ARP回复时并不考虑子网。即第4步B收到ARP请求时应该回复,而不是丢弃。为什么我模拟的时候显示丢弃呢?错在哪呢?是packet tracer模拟和现实还是有区别的么?

详细实验过程:
主机A和B同属于同一子网,但是B的子网掩码配错了(255.255.255.0 -> 255.255.255.224),使得B认为与A不属于同一子网,A还是认为与B属于同一子网。
B ping A

  1. B首先使用ARP获得网关的MAC地址,然后向网关发包。
  2. 网关接收到了之后,转发给了A。
  3. A接收之后,使用ARP来获取B的MAC地址。
  4. 当B接收到ARP请求后,说ARP请求好和接收端口不在同一网络,丢弃了该帧,如下图所示。

img

网络拓扑:

img

  • 写回答

1条回答 默认 最新

  • wj31932 2021-11-22 14:06
    关注

    内核里arp_ignore 的值,决定回arp reply的规则
    在收到解析本机IP地址的ARP请求后,此值定义了发送回复报文的几种不同模式:
    0 - (默认值)只要请求的目标IP地址为本机地址,不管其配置在哪个接口上, 都回复其arp reply。
    1 - 只有在请求的目标IP地址所在接口,与接收此请求报文的接口相同时回复。
    2 - 除满足1的条件外,还要求发送arp请求的源IP地址所在网段为接收接口的IP地址所在网段的子网。
    3 - 仅回复目标IP地址类型(scope)为global与link的请求,不对类型为host的请求回复。 另外,不要求目标IP位于数据包接收的接口上。
    4 - 7 保留
    8 - 不回复对本地地址的请求。
    丢弃,应该是值为2,应答是0或者1.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论 编辑记录

报告相同问题?

问题事件

  • 系统已结题 11月30日
  • 已采纳回答 11月22日
  • 创建了问题 11月17日

悬赏问题

  • ¥15 爬知乎登录之后内容加载不出来
  • ¥15 怎么用protues测量通频带
  • ¥15 zepelin使用sparkInterpreter 异常
  • ¥15 paho mqtt 接收不到消息
  • ¥15 函数r关于两个分量y,z方向上的图像,分开画r随y的图像,r随z的图像
  • ¥15 如何用Matlab求Pearcey函数的数值积分?
  • ¥15 一个简单的函数定义问题,输出结果是相反的,怎么回事呢?
  • ¥15 页面加载报错,不知道怎么处理
  • ¥20 vue-draggable-resizable选中状态保持
  • ¥15 flink cdc读取SqlServer2016