【发布时间】:2017-11-14 10:38:34
【问题描述】:
我有一台带有两个网络适配器的计算机,它们都分配了不同的 IP。(EX:192.168.81.90, 192.168.81.93)
我使用从192.168.81.1到192.168.81.255的ARP扫描,我会得到两个不同的MAC addresses和两个不同的IP。
是否可以识别这对MAC address + IP 属于同一主机?
【问题讨论】:
标签: networking adapter arp
我有一台带有两个网络适配器的计算机,它们都分配了不同的 IP。(EX:192.168.81.90, 192.168.81.93)
我使用从192.168.81.1到192.168.81.255的ARP扫描,我会得到两个不同的MAC addresses和两个不同的IP。
是否可以识别这对MAC address + IP 属于同一主机?
【问题讨论】:
标签: networking adapter arp
“是否可以识别这对mac地址+IP属于同一主机?” - 不,除非有更高层协议提供此信息,否则这是不可能的。您不能单独使用 IP 地址和 MAC。
【讨论】:
我可以建议您进行测试,但它不会在所有情况下都成功。这将取决于操作系统 IP 堆栈的实现。 您没有向我们提供有关您的设置的重要信息,即您的网络掩码。我想您的问题与同一网络上具有 2 个不同 IP 的主机有关。您必须首先知道,该设置是错误的设置,因为它会为传出流量创建不对称负载。如果主机在同一个 IP 网络上有 2 个物理接口(相同的网络号,相同的网络掩码),您必须首先在第 2 层绑定两个接口以创建一个虚拟接口来为其分配 2 个 IP 地址。 我建议你的测试是检测错误的设置: 假设对于 192.168.81.90,您获得了 01:01:01:01:01:01 mac 地址,对于 192.168.81.93,您获得了 02:02:02:02:02:02(扫描结果)。 手动,使用 arp 命令,将两个 ip 的 mac 交换为如下命令: arp -s 192.168.81.93 01:01:01:01:01:01 arp -s 192.168.81.90 02:02:02:02:02:02
使用该 arp(临时)设置,现在尝试 ping 每个 ip。 如果您收到回显回复,则两个 ip 可能(尚不确定)位于同一主机上。 最后的验证是用 tcpdump 抓取 echo 回复数据包,并验证其源 mac@ 并检查是 01:01:01:01:01:01 还是 02:02:02:02:02:02。如果 mac 地址源不是这些地址之一,那么,您正在测试的主机是路由器而不是主机。 (系统正在转发流量,而不仅仅是像主机一样接收它) 我的测试失败的一种情况是主机对传入接口进行了 IP 过滤。
【讨论】: