netplan
netplan —— 抽象網(wǎng)絡(luò)配置生成器 ,是一個(gè)用于配置 Linux 網(wǎng)絡(luò)的簡(jiǎn)單工具。
通過(guò) Netplan ,你只需用一個(gè) YAML 文件描述每個(gè)網(wǎng)絡(luò)接口需要配置成啥樣即可。
根據(jù)這個(gè)配置描述, Netplan 便可幫你生成所有需要的配置,不管你選用的底層管理工具是啥.
Netplan 從 /etc/netplan/*.yaml 讀取配置,配置可以是管理員或者系統(tǒng)安裝人員配置;
也可以是云鏡像或者其他操作系統(tǒng)部署設(shè)施自動(dòng)生成。
在系統(tǒng)啟動(dòng)階段早期, Netplan 在 /run 目錄生成好配置文件并將設(shè)備控制權(quán)交給相關(guān)后臺(tái)程序。
Netplan 目前支持以下兩種 網(wǎng)絡(luò)管理工具 :
NetworkManager
Systemd-networkd
一言以蔽之,從前你需要根據(jù)不同的管理工具編寫網(wǎng)絡(luò)配置,現(xiàn)在 Netplan 將管理工具差異性給屏蔽了。 你只需按照 Netplan 規(guī)范編寫 YAML 配置,不管底層管理工具是啥,一份配置走天下!
命令查看
netplan -h
usage: /usr/sbin/netplan [-h] [--debug] ...
Network configuration in YAML
optional arguments:
-h, --help show this help message and exit
--debug Enable debug messages
Available commands:
help Show this help message
apply Apply current netplan config to running system
generate Generate backend specific configuration files from
/etc/netplan/*.yaml
info Show current netplan version and available features
ip Retrieve IP information from the system
try Try to apply a new netplan config to running system, with
automatic rollback
~$ netplan generate
ERROR: cannot create file /run/NetworkManager/conf.d/10-globally-managed-devices.conf: Failed to create file “//run/NetworkManager/conf.d/10-globally-managed-devices.conf.85F4H0”: Permission denied
配置文件
$ cat /etc/netplan/01-network-manager-all.yaml
# Let NetworkManager manage all devices on this system
network:
version: 2
renderer: NetworkManager
比如我配置工控機(jī)的網(wǎng)絡(luò)如下:
~$ cat /etc/netplan/01-network-manager-all.yaml
# Let NetworkManager manage all devices on this system
network:
ethernets:
enp0s31f6:
addresses: [192.168.100.10/24]
dhcp4: no
enp3s0:
addresses: [192.168.2.101/24]
dhcp4: no
enp4s0:
addresses: [192.168.11.123/24]
dhcp4: no
version: 2