如何验证静态 IP 是否有效

如何验证静态 IP 是否有效

这是我在我的 ubuntu 机器上设置静态 IP 的方法:

https://askubuntu.com/a/178981/630142

假设发生以下情况:

  1. 我将我的 ubuntu 机器连接到分配 IP 地址的路由器(网络)(192.168.0.X)

  2. 然后我为我的 Ubuntu 机器分配一个静态 IP 192.168.0.50

  3. Ubuntu 机器已连接互联网,一切运行良好。我可以192.168.0.50从同一192.168.0.X网络上的其他计算机 ping 通。

  4. 有人更换了具有不同网络掩码的路由器。(192.168.10.X)因此(192.168.0.X),现在通过 DHCP 连接的设备具有不同的 IP。

  5. 由于这个变化,我的 Ubuntu 机器现在无法连接到互联网。 IP 地址192.168.0.50不再有效。

现在我的问题是:我怎么知道没有网络连接是因为网络变化?我可以通过以下方式检查网络:

ping google.com

也许由于整个网络失去互联网连接,导致 ping 不通。但是我怎么知道原因是整个网络都断网了——或者是因为我的静态 IP 无效

答案1

这是一个组织问题。

如果有人更改了您的路由器设置,他们应该通知您。

如果您必须在系统上使用静态、本地分配的 IP 地址(尽管存在 DHCP 服务器),则 DHCP 服务器的管理员应该保留一系列 IP 以供静态使用,并将其放入文档说明中。

如果您的互联网不能使用静态 IP,并且您知道有一个 DHCP 服务器,那么您可以暂时切换到使用 DHCP 并查看您被分配了什么,然后相应地更改您的静态设置。

再次强调,我认为这是贵组织内部的沟通/文档问题。

答案2

嗯,这里有两个方面。

首先,任何像样的 DHCP 服务器都会在提供 IP 地址之前尝试验证它分配的 IP 地址是否未被使用。但当然可能会有漏洞。不过,这通常意味着您可以认为失去连接意味着失去互联网连接。

但是,如果您想确定可以进行通信,请尝试与网关通信。也就是说,使用的输出ip route并选择路由的网关default,然后尝试 ping 该网关。如果成功,则问题可能出在上游(互联网连接)上;如果失败,则问题出在本地。

此外,如果你真的使用:

auto eth0
   iface eth0 inet dhcp

正如您所指出的,在正常情况下,拔下并重新插入电缆会导致您的 DHCP 客户端重新向 DHCP 服务器请求租约。但您也可以告诉您的客户端释放 DHCP 租约。例如dhclient这是-r选择。

注意:确保您没有某种并行网络管理器设置。

相关内容