【发布时间】:2011-09-10 05:58:39
【问题描述】:
我的软件更改了计算机的 IP,但我与其他设备发生冲突。是否有内置方法可以在设置之前检查 IP 地址是否已被占用/占用?
谢谢
【问题讨论】:
-
你是指同一台机器的其他设备(网卡),还是同一子网中其他机器上的设备?
我的软件更改了计算机的 IP,但我与其他设备发生冲突。是否有内置方法可以在设置之前检查 IP 地址是否已被占用/占用?
谢谢
【问题讨论】:
如果您的网络不使用 DHCP 并且确实需要手动分配 IP 地址,您可以尝试使用 System.Net.NetworkInformation.Ping class 来查看网络上的主机是否响应。
【讨论】:
您可以按照 Donut 的建议使用 System.Net.NetworkInformation.Ping 类,但并非所有设备都会响应 Ping。但是,任何具有 IP 地址的设备都将响应 ARP 请求,前提是它们与网络正常通信。
如果你能找到一种方法来发送一个 ARP 请求,上面写着“谁的 IP 地址为 xxx.xxx.xxx.xxx?”并且您得到响应,然后您就知道其他人拥有该 IP 地址。我个人不知道该怎么做,但是您可以尝试查看this question 以获取有关如何访问 ARP 信息的信息。
另外,this 可能是一个有用的资源。
【讨论】: