• 全部
  • 经验案例
  • 典型配置
  • 技术公告
  • FAQ
  • 漏洞说明
  • 全部
  • 全部
  • 大数据引擎
  • 知了引擎
产品线
搜索
取消
案例类型
发布者
是否解决
是否官方
时间
搜索引擎
匹配模式
高级搜索

s7506e 抓包看不到网关数据包

5天前提问
  • 0关注
  • 0收藏,134浏览
粉丝:0人 关注:0人

问题描述:

s7506e为核心交换机,vlan2012 2013网关(不同网段)都配置在核心上面。vlan2013的电脑ping 2012的电脑能ping通,但在vlan2013的电脑网卡上面抓包,看不到2013网关发过来的数据包,按理说,跨网段通信在二层应该是通过网关把数据包发送到电脑的,为何抓包看不到呢?再有,用vlan2012的电脑ping vlan2013的一个不存在ip,vlan2013下面的电脑网卡在抓包时也收不到2013网关的arp广播包,大神帮忙分析一下是啥原因呢?

5 个回答
粉丝:1人 关注:0人

问题一:VLAN2013的电脑PING VLAN2012的电脑,为何在VLAN2013电脑上抓不到网关回包?

核心原因:数据包的“出”和“入”路径不同,且交换机进行了“三层交换”,没有将回程流量“绕回”给网关,而是直接转发给了目标主机。

我们来详细分析一下数据流:

  1. 请求包(VLAN2013 -> VLAN2012):

    • 源IP: 2013.x.x.x目标IP: 2012.x.x.x
    • 源MAC: PC2013的MAC目标MAC: VLAN2013网关的MAC(因为跨网段,PC会先查ARP表,将数据包发给自己的网关)。
    • 这个包从PC2013发出,进入S7506E交换机的VLAN2013接口。
    • S7506E作为核心交换机,收到此包后,进行三层路由查找。
    • 发现目标IP属于VLAN2012,于是执行三层转发
    • 它需要将数据包从VLAN2012的接口(或三层VLAN接口)发送出去。
  2. 关键的三层转发过程:

    • 在转发前,S7506E会重写数据包的二层帧头
      • 源MAC变更为VLAN2012网关的MAC地址
      • 目标MAC变更为VLAN2012目标PC的MAC地址(如果ARP表里没有,则会触发对目标PC的ARP请求)。
    • 此时,数据包的IP地址(2013.x.x.x -> 2012.x.x.x)保持不变,但二层地址已经完全变了。
    • 这个被重写了二层帧头的数据包,从S7506E的VLAN2012接口发出,直接送达VLAN2012的目标PC。
  3. 响应包(VLAN2012 -> VLAN2013):

    • 源IP: 2012.x.x.x目标IP: 2013.x.x.x
    • 源MAC: PC2012的MAC目标MAC: VLAN2012网关的MAC(同样因为跨网段)。
    • 这个包从PC2012发出,进入S7506E的VLAN2012接口。
    • S7506E再次进行三层路由查找,发现目标IP属于VLAN2013。
    • 同样,它重写二层帧头
      • 源MAC变更为VLAN2013网关的MAC地址
      • 目标MAC变更为VLAN2013源PC(PC2013)的MAC地址
    • 这个被重写后的数据包,从S7506E的VLAN2013接口发出,直接送达PC2013。

暂无评论

zhiliao_J50OE9 知了小白
粉丝:0人 关注:0人

是的,应该是这个转发过程,但转发过程数据包的源目ip不变,在pc2013上为何不能抓到网关2013发过来的数据包呢?pc2013抓包软件用的是wireshark,忘说了,pc2013 ping pc2012时,pc2013也抓不到pc2013到网关2013的数据包。抓包时用ip.addr==*.*.*.*进行过滤的

暂无评论

zhiliao_J50OE9 知了小白
粉丝:0人 关注:0人

知道原因了,感谢

暂无评论

粉丝:27人 关注:2人

  • 跨网段通信本身网关一定会下发回程报文,你抓不到大多是电脑网卡硬件卸载特性导致 Wireshark 漏抓,并非交换机没发包;
  • 跨网段 ping 不存在 IP 时,网关仅发送单播 ARP 寻找目标 IP,不会广播,其他终端自然抓不到 ARP 包;
  • 业务通信正常就无需处理,想要正常抓包只需关闭终端网卡 offload,或在交换机侧配置端口镜像抓包。
  • 暂无评论

    粉丝:28人 关注:1人

    你遇到的这个现象,核心原因可以用一句话解释:在跨网段通信中,网关(S7506E)的角色是“路由器”而非“转发器”

    你的理解“跨网段通信在二层应该是通过网关把数据包发送到电脑的”在逻辑上是正确的,但在数据链路层的实现上,网关并不会修改原始数据包的内容,也不会产生新的数据包发给你。所以,你在本机网卡抓包时看不到网关发来的数据,是完全正常的。

    1. 为什么“ping通”但“看不到网关数据包”?

    跨网段通信流程(以PC 2013 ping PC 2012为例)

    • 源主机(PC 2013)

      • 判断目的IP(192.168.2012.x)与自己不在同一网段。

      • 查找自己的ARP缓存表,获取网关(vlan2013接口IP)的MAC地址。

      • 封装数据包:源IP是 PC 2013目的IP是 PC 2012源MAC是 PC 2013目的MAC是 网关MAC。这个数据包的目的MAC地址是网关,而非最终目标

    • 网关(S7506E)

      • 收到数据包,发现目的MAC是自己,解封装查看目的IP。

      • 查询路由表,发现目标在 vlan2012 网段,于是通过 “一次路由” 决定将数据包从 vlan2012 接口发出。

      • 查询ARP缓存,获取 PC 2012 的MAC地址。

      • 重新封装数据包源MAC变为 vlan2012 接口的MAC,目的MAC变为 PC 2012 的MAC。数据包的源IP和目的IP从头到尾保持不变

    • 目标主机(PC 2012):收到数据包,发现目的IP是自己,处理并回复。

    为什么你抓不到“网关发来的包”?
    因为网关(S7506E)在转发时,只是改写了数据包的MAC头部,然后直接发送给了目标主机 PC 2012。它并没有生成一个新的、以 PC 2013 为目的地的数据包。你在 PC 2013 上抓包,看到的只会是自己发出的包和收到的回包,而回包的源IP是 PC 2012,源MAC是 vlan2012 的网关MAC,并非直接来自 vlan2013 网关。

    2. 为什么“ping不存在IP”也收不到“网关ARP广播”?

    你提到用 vlan2012 的电脑去ping vlan2013 网段一个不存在的IP,并在 vlan2013 的电脑上抓包,期望看到网关的ARP广播,这同样是一个误解。

    • “ping不存在IP”的流程

      1. PC 2012 发出数据包,目的IP是 192.168.2013.x(不存在),目的MAC是 vlan2012 的网关MAC。

      2. 网关S7506E收到后,查询路由表,准备发往 vlan2013 接口。

      3. 网关不会向整个 vlan2013 网段发送ARP广播来询问这个不存在的IP,因为网关只会在有数据要发往某个具体IP时,才会去查询该IP的MAC地址

      4. 由于目的IP不存在,网关在 vlan2013 网段无法完成ARP解析,最终会丢弃该数据包,并可能向源 PC 2012 回复一个“目标不可达”的ICMP消息。

    • 为什么你抓不到网关的ARP广播?
      因为整个流程在网关处就终止了。网关根本不会为了一个不存在的IP去询问网段内的所有主机(“谁是192.168.2013.x?”),这毫无意义。因此,你自然也无法在 vlan2013 的电脑上抓到任何相关的ARP广播包。

    3. 如何验证我的分析?

    如果你想在 PC 2013 上看到“网关”的存在,不应该抓取数据包,而应该检查 ARP缓存表

    • 在 PC 2013 上打开命令行,输入 arp -a

    • 你会看到 192.168.2013.1vlan2013网关IP)对应的MAC地址。这个MAC地址就是S7506E上 vlan2013 接口的MAC。

    • 这就证明了,PC 2013 在跨网段通信时,数据包确实是发往这个网关MAC的。你抓到的所有去往 PC 2012 的数据包,其目的MAC都应该是这个地址

    4. 补充排查建议

    如果你的网络确实存在通信问题,可以从以下角度排查:

    1. 检查交换机ARP表:在S7506E上执行 display arp,确认它是否正确学习到了各终端的ARP表项。任何表项异常都可能导致转发问题。

    2. 检查交换机MAC表:执行 display mac-address,确认交换机能正确学习到各终端的MAC地址及对应端口。

    3. 检查路由:执行 display ip routing-table,确认交换机有去往各网段的路由。

    4. 检查ACL:确认没有任何访问控制列表(ACL)在交换机上过滤了相关流量。

    暂无评论

    编辑答案

    你正在编辑答案

    如果你要对问题或其他回答进行点评或询问,请使用评论功能。

    分享扩散:

    提出建议

      +

    亲~登录后才可以操作哦!

    确定

    亲~检测到您登陆的账号未在http://hclhub.h3c.com进行注册

    注册后可访问此模块

    跳转hclhub

    你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作

    举报

    ×

    侵犯我的权益 >
    对根叔社区有害的内容 >
    辱骂、歧视、挑衅等(不友善)

    侵犯我的权益

    ×

    泄露了我的隐私 >
    侵犯了我企业的权益 >
    抄袭了我的内容 >
    诽谤我 >
    辱骂、歧视、挑衅等(不友善)
    骚扰我

    泄露了我的隐私

    ×

    您好,当您发现根叔知了上有泄漏您隐私的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
    • 1. 您认为哪些内容泄露了您的隐私?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
    • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)

    侵犯了我企业的权益

    ×

    您好,当您发现根叔知了上有关于您企业的造谣与诽谤、商业侵权等内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到 pub.zhiliao@h3c.com 邮箱,我们会在审核后尽快给您答复。
    • 1. 您举报的内容是什么?(请在邮件中列出您举报的内容和链接地址)
    • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
    • 3. 是哪家企业?(营业执照,单位登记证明等证件)
    • 4. 您与该企业的关系是?(您是企业法人或被授权人,需提供企业委托授权书)
    我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

    抄袭了我的内容

    ×

    原文链接或出处

    诽谤我

    ×

    您好,当您发现根叔知了上有诽谤您的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到pub.zhiliao@h3c.com 邮箱,我们会尽快处理。
    • 1. 您举报的内容以及侵犯了您什么权益?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
    • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
    我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

    对根叔社区有害的内容

    ×

    垃圾广告信息
    色情、暴力、血腥等违反法律法规的内容
    政治敏感
    不规范转载 >
    辱骂、歧视、挑衅等(不友善)
    骚扰我
    诱导投票

    不规范转载

    ×

    举报说明