我知道如果我需要分配一个静态 IP 地址,我将需要netplan
在 Ubuntu 18.04 中使用它,而且我已经这样做了并使其工作正常。
这是我的配置文件:
network:
version: 2
renderer: networkd
ethernets:
eno1:
dhcp4: yes
enp131s0f0:
dhcp4: no
addresses: [10.66.0.1/24]
我使用后netplan apply
,命令显示设置为的ifconfig
ip地址enp131s0f0
10.66.0.1
将电缆插入“enp131s0f0”端口后。这会导致一个问题,因为如果我不将电缆插入此端口,即使在 netplan 中设置了 ipaddress,端口本身也不会获取静态 ip 地址,这将导致某些服务无法启动(例如,isc-dhcp-server)。
例如,如果您有 3 个端口,并且已按如下方式配置它们:
network:
version: 2
renderer: networkd
ethernets:
enp131s0f0:
dhcp4: no
addresses: [10.66.0.1/24]
enp131s0f1:
dhcp4: no
addresses: [10.66.1.1/24]
enp131s0f2:
dhcp4: no
addresses: [10.66.2.1/24]
enp131s0f3:
dhcp4: no
addresses: [10.66.3.1/24]
如果在这 3 个端口上都安装了 isc-dhcp-server。仅当您连接所有 3 个端口时,isc-dhcp-server 才会启动,如果您无法将电缆连接到这 3 个端口中的任何一个端口,isc-dhcp-server 将无法启动,因为该端口没有静态地址(没有将电缆插入端口),即使您在 netplan 中设置了静态 ip 地址。
所以我想问一下如何永久地为网络端口分配静态地址。为了让它在插入电缆之前有一个 ipaddress...我需要这个,因为我的服务器上有一些端口我目前没有使用(电缆没有插上),但我需要 isc-dhcp-server 来启动...
答案1
这是用于您配置的最小 .yaml 文件...假设 10.66.0.2 是您网络上可用的静态地址,而 10.66.0.1 是正确的网关...
network:
version: 2
renderer: networkd
ethernets:
eno1:
dhcp4: true
enp4s0f0:
addresses: [10.66.0.2/24]
gateway4: 10.66.0.1
nameservers:
addresses: [8.8.8.8,8.8.4.4]
optional: true # may or may not be desired, to stop 2 minute boot delay
sudo netplan --debug generate
# 生成配置文件
sudo netplan apply
# 应用配置
reboot
# 重启并验证操作