netplan + systemd-networkd网络配置工具组合下如何设置静态ipv4地址
以前在debian下配置静态ipv4地址,都是ifupdown工具,但是随着systemd集成度越来越高,越来越多的linux发行版的网络配置工具慢慢切换到了netplan,导致以前掌握的配置静态ipv4地址的方法也不一样了。
之前已经写过一篇,但时过境迁,当时写的罗里吧嗦说不到重点,而且设置方法也不太合理,所以重写一篇。
ifupdown的配置文件路径/etc/network/interfaces,静态ipv4地址的配置格式一般如下:
#iface eth0 inet dhcp # 这行是默认配置,网卡eth0启用dhcp,需要注释掉
iface eth0 inet static
address 192.168.1.201
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 192.168.1.1
netplan + systemd-netwokd的配置文件是在/etc/netplan目录下,比如我的玩客云的配置文件是/etc/netplan/10-dhcp-all-interfaces.yaml。
现在需要把我们熟悉的ifupdown格式的配置调整为netplan + systemd-netwokd的yaml格式。
yaml中的内容很多,这里截取我们需要的一部分,针对网卡eth0的配置:
all-eth-interfaces:
match:
name: "e*"
dhcp4: yes
dhcp6: yes
ipv6-privacy: yes
改成我们需要的静态ipv4地址,注意yaml格式严谨,使用空格缩进,不要用tab。
all-eth-interfaces:
match:
name: "e*"
# 这里开始修改
dhcp4: no
addresses:
- 192.168.1.100/24
routes:
- to: default
via: 192.168.1.1
nameservers:
addresses:
- 192.168.1.1
# 这里修改结束
dhcp6: yes
ipv6-privacy: yes
配置完成后保存。
首先验证语法,命令跑完无输出即为OK。
sudo netplan generate
然后跑一下测试,2分钟后会回滚
sudo netplan try
测试无误以后,应用配置
sudo netplan apply
到此大功告成,★,°:.☆( ̄▽ ̄)/$:.°★ 。
🎉
喝杯奶茶

