• ensp由于win10 ARP表项未过期导致网络不通排查


    1 问题背景

    ensp中,通过cloud桥接虚拟机网卡Vmnet0,实现宿主机与ensp中虚拟设备互通;
    在做完实验一时,虚拟设备ip配置为192.168.56.100,可从win10 SSH至虚拟设备,然后关闭实验;
    立即开始实验二,新的环境同样桥接至该虚拟网卡,且IP也配置为192.168.56.100,发现无法在win10(宿主机)SSH至虚拟设备;

    在这里插入图片描述

    2 问题原因

    由于win10宿主机中的ARP表项并未过期,且第二次实验仍使用该IP;
    数据包封装时,写入目的IP对应的MAC地址时,写入的仍是上一次实验虚拟设备的MAC地址;
    而实验二,同样IP设备的MAC地址已经发生了变化,因此二层无法通信;

    3 验证

    (1)前一个实验,CE12800使用了192.168.56.100这个IP,查询win10 ARP表项

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-nFK2432g-1658844337515)(SSH实验.assets/1658737023792.png)]

    发现与ensp中设备的MAC地址不一致
    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jnIbs6GQ-1658844337516)(SSH实验.assets/1658737240570.png)]

    4 解决办法:win10删除ARP表项

    在win10 管理员模式CMD上执行

    arp -d 192.168.56.100
    
    • 1

    查看win10 ARP表项

    arp -a
    
    • 1

    [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IIxkvdGH-1658844337516)(SSH实验.assets/1658737166686.png)]

    与ensp上CE12800(192.168.56.100)设备的MAC地址一致;

    能在win10上ping通CE12800设备;

    5 win10 ARP表项相关行为

    win10中 如果某个arp条目有被使用则使用 arp缓存中的值,如果超过Reachable Time没有被使用,则会发送ARP广播;
    超时时间Reachable Time是一个介于15秒~45秒之间的随机值;

    计算公式为:

    可访问时间(Reachable Time) =  基本可访问时间(Reachable Time)  * Random(0.5~1.5)
    
    • 1

    可访问时间即代表 超时时间(ARP表项老化时间);
    在这里插入图片描述

    netsh interface ipv4 show interfaces # 查询当前ipv4 接口信息
    netsh interface ipv4 show interfaces 19 # 查询当前ipv4 编号为19的接口信息
    
    • 1
    • 2

    在这里插入图片描述

    6 参考连接

    地址解析协议缓存行为 - Windows Server | Microsoft Docs:
    https://docs.microsoft.com/zh-CN/troubleshoot/windows-server/networking/address-resolution-protocol-arp-caching-behavior)

  • 相关阅读:
    预警期刊数量再次刷新:文章一投就拒稿,投稿之前要牢牢记住这几点
    vue-router(vue-router功能,跳转方式,路由守卫,路由懒加载,使用流程,3.x和4.x使用区别)
    Python 快速入门
    云函数cron-parser解析时区问题
    《HelloGitHub》第 90 期
    在python程序中用windows的icon
    渗透必备:Proxifier玩转代理
    mysql 索引使用与优化
    C语言第十二课(上):操作符详解【算数、移位、位、赋值操作符】
    CSS性能优化
  • 原文地址:https://blog.csdn.net/missasd1/article/details/126004130