我最近将 Ubuntu 18.04.5 服务器从一个网络 (192.168.101.X) 移至新网络 (192.168.1.X)。服务器 (和所有网络设备) 由 Edgerouter Lite 发出的 DHCP 寻址。一切运行良好,只是每当我重新启动服务器时,它似乎都会恢复一条阻止所有出站连接的旧路由。
每次重启后,我都会在 ip route 中看到这一点,其中 192.168.1.236 是机器的当前 IP:
default via 192.168.101.1 dev enp3s0 src 192.168.1.236 metric 202
这会导致该机器的所有出站流量失败。
如果我运行它,netplan apply
它会用正确的默认路由替换它:
default via 192.168.1.1 dev enp3s0 proto dhcp src 192.168.1.236 metric 100
并且一切都立即正常工作。
这是我的cat 50-cloud-init.yaml
# This file is generated from information provided by
# the datasource. Changes to it will not persist across an instance.
# To disable cloud-init's network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
network:
ethernets:
enp3s0:
dhcp4: true
version: 2
由于服务器正在运行 netplan,因此没有 /etc/network/interfaces。我不认为这是 DHCP 服务器问题,因为网络上的所有其他设备都运行良好。我不认为我曾经在此设备上配置过任何静态 IP 或网关,但也许我配置过,但我找不到它?除了 netplan 之外,我还需要在哪里寻找它?
我宁愿不设置静态路由,但如果这是唯一的解决方案,我可以这样做。现在我添加的任何东西ip route add
都会在启动时被覆盖。