在不同的子网上设置静态IP并更新DNS?

在不同的子网上设置静态IP并更新DNS?

我最近不得不将我的路由器子网从 192.168.1.1 更改为使用 192.168.2.1,这样它就不会与上游路由器冲突。

我有一些使用静态 IP 连接到路由器的服务器,我还需要更新这些服务器才能使用新的子网。例如:旧IP是192.168.1.2,所以我想我只需要将其更改为192.168.2.2。

所以我编辑自/etc/network/interfaces

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet manual

auto br0
iface br0 inet static
        address 192.168.1.2
        network 192.168.0.0
        netmask 255.255.255.0
        broadcast 192.168.1.255
        gateway 192.168.1.1
        bridge_ports eth0
        bridge_stp off
        bridge_fd 0
        bridge_maxwait 0

到:

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet manual

auto br0
iface br0 inet static
        address 192.168.2.2
        network 192.168.0.0
        netmask 255.255.255.0
        broadcast 192.168.2.255
        gateway 192.168.2.1
        bridge_ports eth0
        bridge_stp off
        bridge_fd 0
        bridge_maxwait 0

我知道最新的 Ubuntu 发行版使用 netplan,但这是我升级后的旧服务器,仍在使用/etc/network/interfaces.

重启后使用新IP,但无法解析域名。它似乎能够直接 ping 外部 IP,但无法解析域本身。例如,服务器无法 ping 通 google.com,但可以 ping 通 8.8.8.8。

我的路由器有 WiFi,如果我用笔记本电脑连接到 WiFi,我可以很好地 ping 通域名。

为什么是这样?是我的网络配置错误,还是这更像是我的路由器的问题?

编辑:我的/etc/resolv.conf样子:

nameserver 127.0.0.53
domain home
search home
nameserver 192.168.1.1
nameserver 71.242.0.12

所以看起来它仍在尝试使用旧的路由器 IP 作为名称服务器,但它无法再访问。我该如何纠正这个问题?或者我应该像我一样对常见的公共名称服务器进行硬编码interfaces

dns 名称服务器 8.8.8.8 8.8.4.4

答案1

您的/etc/resolv.confDNS 服务器地址可能在某个时间点完全自动生成,但看起来旧值已“冻结”,因为没有任何内容向配置机制提供任何新的 DNS 服务器地址。

事实上,它现在nameserver 127.0.0.53作为第一个名称服务器表明您的系统可能使用systemd-resolved并且应该使用该resolvectl命令检查真实的 DNS 设置。可能还有一些相关的设置/etc/systemd/resolved.conf

添加dns-nameservers包含您选择的 DNS 服务器的行可能/etc/network/interfaces会起作用。

如果它不起作用,请/etc/resolv.conf使用以下命令检查文件的修改时间戳ls -l /etc/resolv.conf:如果它早于您上次重新启动系统的时间,则当前配置显然实际上并未发生自动生成,您可以只编辑/etc/resolv.conf.

答案2

您只更改了addressgateways条目,/etc/network/interfaces那么您还需要更改该network条目。

iface br0 inet static
        address 192.168.2.2
        network 192.168.2.0
        netmask 255.255.255.0
        broadcast 192.168.2.255
        gateway 192.168.2.1
        bridge_ports eth0
        bridge_stp off
        bridge_fd 0
        bridge_maxwait 0

相关内容