这是我在我的 ubuntu 机器上设置静态 IP 的方法:
https://askubuntu.com/a/178981/630142
假设发生以下情况:
我将我的 ubuntu 机器连接到分配 IP 地址的路由器(网络)
(192.168.0.X)
然后我为我的 Ubuntu 机器分配一个静态 IP
192.168.0.50
。Ubuntu 机器已连接互联网,一切运行良好。我可以
192.168.0.50
从同一192.168.0.X
网络上的其他计算机 ping 通。有人更换了具有不同网络掩码的路由器。
(192.168.10.X)
因此(192.168.0.X)
,现在通过 DHCP 连接的设备具有不同的 IP。由于这个变化,我的 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
选择。
注意:确保您没有某种并行网络管理器设置。