我在使用 SMB 协议进行网络共享时遇到问题。我认为这与 IP 重复问题有关。如何检测这个问题。
笔记:我的桌面上使用 Ubuntu,其他人使用各种操作系统(win xp、vista、mac、Ubuntu)。
答案1
您可以使用 arpping 命令。arping 实用程序执行的操作类似于 ping 命令,但在以太网层。您可以向邻居主机/计算机发送 ARP 请求。
发送 ARP 请求
使用 arping 查找本地以太网上 IP 的可达性,即发送 ARP 请求 192.168.1.1:
$ sudo arping -I eth0 -c 3 192.168.1.1
输出:
ARPING 192.168.1.1 from 192.168.1.106 ra0
Unicast reply from 192.168.1.1 [00:18:39:6A:C6:8B] 2.232ms
Unicast reply from 192.168.1.1 [00:18:39:6A:C6:8B] 1.952ms
Sent 3 probes (1 broadcast(s))
Received 3 response(s)
在哪里,
查找重复的 IP
-D 选项指定重复地址检测模式 (DAD)。如果 DAD 成功,即未收到任何回复,则返回退出状态 0。
$ sudo arping -D -I eth0 -c 2 192.168.1.1
如果 192.168.1.1 重复,您应该看到零退出状态:
$ echo $?
始终使用以下语法通过 arping 检测重复地址:
$ sudo arping -D -I <interface-name> -c 2 <IP-ADDRESS-TO-TEST>
$ echo $?
答案2
您可以安装IP监控它可与(其他)Debian 软件包配合使用。
链接的文章还解释了方法和安装步骤。
IPwatchD 源来自sourceforge。
它允许您配置 GUI 通知(如上所述,仅适用于 GNOME)和“ syslog
”消息。
答案3
不幸的是,如果您检查的地址在您的机器上,则接受的答案不起作用。这将起作用:
arping -0c1 192.168.1.1
由于-0
选项,它工作正常。对于脚本,您可以使用它arping -q0c1 192.168.1.1
来检查机器上的地址是否有重复,如果有重复,它会返回 0。用于arping -qdc1 192.168.1.1
检查不在您的机器上的地址是否有重复,相反,如果有重复,它会返回 1。
从man arping
:
-0
- 使用此选项以源 IP 地址 0.0.0.0 执行 ping。当您尚未配置接口时使用此选项。请注意,这可能会导致 MAC-ping 得不到答复。-c count
- 仅发送数数要求。-d
- 查找重复的答复。如果有两个不同的 MAC 地址的答案,则以 1 退出。-q
- 不显示除错误消息以外的消息。
您还可以增加数数以确保即使出现短暂的网络拥塞或故障也能收到响应。
答案4
同一网络上不能有两台机器拥有相同的 IP 地址。
话虽如此,找出哪些计算机具有哪个 IP 地址的最简单方法之一是查看路由器上的状态页面。通常会有某种 DHCP 客户端列表,可以告诉您哪台计算机(通常由 MAC 地址给出)具有哪个 IP。但请注意,如果您使用 DHCP,则可能没有 IP 寻址问题。是什么让您认为您有 IP 重复问题?