我是 Linux 的新手,正在学习中。我不是设置这些系统的人 - 但我现在需要了解和管理它们。
在 /etc/netplan 中 - 01-netcfg.yaml 和 50-cloud-init.yaml 都存在。
01 文件 - 是静态的 - 显示 192.168.100.30 50 文件 - 是 dhcp
当我执行 ipconfig -a 时,可以看到 100.30 地址。我找到的任何地方都看不到 100.50 地址。我不需要 dhcp - 服务器应该只设置为 100.30 静态 IP。
我可以简单地删除 50-cloud-init.yaml 文件吗 - 或者最佳做法是什么?
ifconfig -a的结果:
docker0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500
inet 172.17.0.1 netmask 255.255.0.0 broadcast 172.17.255.255
ether 02:42:c0:4b:ea:91 txqueuelen 0 (Ethernet)
RX packets 0 bytes 0 (0.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 0 bytes 0 (0.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.100.30 netmask 255.255.255.0 broadcast 192.168.100.255
inet6 fe80::215:5dff:fe00:700e prefixlen 64 scopeid 0x20<link>
ether 00:15:5d:00:70:0e txqueuelen 1000 (Ethernet)
RX packets 17211039 bytes 1688816727 (1.6 GB)
RX errors 0 dropped 4 overruns 0 frame 0
TX packets 137882 bytes 550823194 (550.8 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536
inet 127.0.0.1 netmask 255.0.0.0
inet6 ::1 prefixlen 128 scopeid 0x10<host>
loop txqueuelen 1000 (Local Loopback)
RX packets 11147 bytes 843462 (843.4 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 11147 bytes 843462 (843.4 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
@heynnema 01-netcfg.yaml 的内容
network:
version: 2
renderer: networkd
ethernets:
eth0:
dhcp4: no
addresses: [192.168.100.30/24]
gateway4: 192.168.100.1
nameservers:
addresses: [192.168.100.26,192.168.100.19,8.8.8.8,8.8.4.4]
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:
eth0:
addresses: []
dhcp4: true
version: 2
/etc/netork/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
答案1
这两个文件的区别在于一个使用静态 IP 地址,另一个使用 dhcp。只要地址适合您的网络,只需使用/etc/netplan/01-netcfg.yaml
。删除/etc/netplan/50-cloud-init.yaml
。
使用这个 .yaml...但没有 dhcp4,并且最多 3 个 DNS(逗号空格)服务器...
network:
version: 2
renderer: networkd
ethernets:
eth0:
addresses: [192.168.100.30/24]
gateway4: 192.168.100.1
nameservers:
addresses: [192.168.100.26, 192.168.100.19]
sudo netplan --debug generate
sudo netplan apply
reboot
答案2
两个配置 yaml 文件具有相同的接口名称。
第一个 netplan 配置文件名以 01 开头...根据字符串顺序,01 在 50 之前。因此 01-netcfg.yaml 文件首先起作用。
并且您没有 DHCP 服务器。
在这种情况下,不需要文件 50-cloud-init.yaml