我的 Ubuntu Server 计算机突然丢失了分配给它的静态 IP 地址和路由表。
我的环境如下。
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=20.04
DISTRIB_CODENAME=focal
DISTRIB_DESCRIPTION="Ubuntu 20.04.3 LTS"
我的路由器具有 DHCP 服务器功能,但它禁用了 DHCPv4,而是在我的 Ubuntu 服务器上使用 Dnsmasq 启用了该功能。
由于我已检查过 Ubuntu Server 上的 DHCP 租约,它本身并未包含在内。因此,DHCP 租约似乎与此问题无关。而且发生这种情况的时间似乎完全是随机的。
我已经通过 设置了静态 IP 地址/etc/netplan
。我的配置/etc/netplan/99_config.yaml
如下。
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
dhcp6: no
addresses:
- 192.168.3.2/24 # IPv4 private address
- XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX/64 # IPv6 global unicast address
gateway4: 192.168.3.1 # My router’s private address
gateway6: fe80::XXXX:XXXX:XXXX:XXXX # My router’s link local unicast address
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
并且我已经检查了静态 IP 地址是否通过命令正确设置ip a
。
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether XX:XX:XX:XX:XX:XX brd ff:ff:ff:ff:ff:ff
inet 192.168.3.2/24 brd 192.168.3.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX:XXXX/64 scope global
valid_lft forever preferred_lft forever
inet6 fe80::XXXX:XXXX:XXXX:XXXX/64 scope link
valid_lft forever preferred_lft forever
3: wlan0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
link/ether XX:XX:XX:XX:XX:XX brd ff:ff:ff:ff:ff:ff
我也检查了路由表。
default via 192.168.3.1 dev eth0 proto static
192.168.3.0/24 dev eth0 proto kernel scope link src 192.168.3.2
看起来没什么问题。然而,几天或几周后,我的 Ubuntu 服务器突然丢失了静态 IP 地址和路由表,尽管设置看起来是正确的。
此时,我的另一台计算机向我的路由器发送 ICMP 回显请求,然后它可以收到回显回复。但是当然它不能从我的 Ubuntu Server 收到。因此我的路由器和我的另一台计算机似乎还活着,只有我的 Ubuntu Server 出现了一些问题。
我该如何解决这个问题?任何帮助都将不胜感激!如果您需要更多信息来解决这个问题,请告诉我。
谢谢。