我已经Ubuntu bionic (18.04)
使用在我的服务器上配置了我的网络接口netplan
,然后我运行netplan apply
并且配置开始生效。特别是,我配置了 DNS 服务器,并且我的服务器确实使用我在配置中配置的名称服务器解析了 ips netplan
。
但是,重启后,配置不再有效,所有解析都默认为127.0.0.53
名称服务器。只有运行后,netplan apply
配置才会再次生效。
如何才能使netplan
配置在重启后继续有效?
输出cat /etc/*-release
:
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=18.04
DISTRIB_CODENAME=bionic
DISTRIB_DESCRIPTION="Ubuntu 18.04.2 LTS"
NAME="Ubuntu"
VERSION="18.04.2 LTS (Bionic Beaver)"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 18.04.2 LTS"
VERSION_ID="18.04"
HOME_URL="https://www.ubuntu.com/"
SUPPORT_URL="https://help.ubuntu.com/"
BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
VERSION_CODENAME=bionic
UBUNTU_CODENAME=bionic
输出cat /etc/network/interfaces
:
# ifupdown has been replaced by netplan(5) on this system. See
# /etc/netplan for current configuration.
# To re-enable ifupdown on this system, you can run:
# sudo apt install ifupdown
我的 netplan yaml 文件:
10-nameservers.yaml
:
network:
version: 2
ethernets:
ens160:
nameservers:
addresses: [127.0.0.1]
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:
ens160:
addresses: []
dhcp4: true
dhcp-identifier: mac
version: 2
interfaces_ens160.yaml
network:
ethernets:
ens160:
addresses: [172.16.0.1/16]
dhcp4: 'no'
dhcp6: 'no'
gateway4: 172.16.100.1
nameservers:
addresses: [10.0.0.8, 8.8.8.8, 10.15.0.18]
version: 2
答案1
您有冲突的 .yaml 文件。
重命名所有现有的 .yaml 文件
- 须藤MV
/etc/netplan/10-nameservers.yaml
/etc/netplan/10-nameservers.yaml.HOLD
- 须藤MV
/etc/netplan/50-cloud-init.yaml
/etc/netplan/50-cloud-init.yaml.HOLD
- 须藤MV
/etc/netplan/interfaces_ens160.yaml
/etc/netplan/interfaces_ens160.yaml.HOLD
创建一个新的 .yaml 文件
- sudo pico
/etc/netplan/config.yaml
包含以下内容...具有精确的缩进、间距,并且没有制表符...
network:
version: 2
renderer: networkd
ethernets:
ens160:
addresses: [172.16.0.1/16]
gateway4: 172.16.100.1
nameservers:
addresses: [10.0.0.8, 8.8.8.8, 10.15.0.18]
生成新文件
sudo netplan --debug generate
# 生成配置文件
sudo netplan apply
# 应用配置
reboot
# 重启服务器
答案2
好的,看来在这个 ENV 中,resolvconf rpm 已安装并卸载,并保留了文件/etc/resolv.conf
。删除该文件解决了该问题。
答案3
好的 - 我完全按照@heynnema 的建议配置了一个静态 IP,重启后我得到的结果如下:
neilp@Lubuntu:~$ ip addr 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:enp3s0:<BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast 状态 UP 组默认 qlen 1000 链路/以太 44:87:fc:5a:92:73 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.199/24 brd 192.168.0.255 范围全局 enp3s0 valid_lft 永远 preferred_lft 永远
inet 192.168.0.214/24 brd 192.168.0.255 范围全局辅助 enp3s0 valid_lft 永久 preferred_lft 永久
inet6 2c0f:f5f0:40e0:60:4687:fcff:fe5a:9273/64 scope global dynamic mngtmpaddr noprefixroute
valid_lft 2591931sec preferred_lft 604731sec
inet6 fe80::4687:fcff:fe5a:9273/64 scope link
valid_lft forever preferred_lft forever*
192.168.0.214 是所需的静态 IP 地址,但192.168.0.199/24地址来自 dhcp,似乎是因为某种原因系统不断重新生成文件/运行/netplan/enp3s0.yaml内容如下:
网络:
版本:2
渲染器:networkd
以太网:
enp3s0:
dhcp4: true
dhcp-identifier: mac
critical: true
nameservers:
addresses: ["192.168.0.1"]
删除此文件没有帮助,因为它会在重启后重新生成。