Ubuntu22.04Server版用netplan设置静态IP的yaml模板 /etc/netplan/*.yaml
Server版 和 Desklop版 都可以用 netplan
配置网络, 但下层是不一样的
- Server版用
netplan
配置systemd-networkd
systemctl status systemd-networkd
- Desktop版用
netplan
配置NetworkManager
systemctl status NetworkManager
Server版默认配置文件 /etc/netplan/
查看
sudo cat /etc/netplan/
因为只有一个文件, 还可以用 *.yaml
或 *
查看
sudo cat /etc/netplan/*.yaml
sudo cat /etc/netplan/*
一些 netplan
命令
netplan generate
:生成与后端管理工具对应的配置;netplan apply
:应用配置,必要时重启管理工具;netplan try
:在配置得到确认之后才应用,如果配置存在错误,则回滚;netplan get
:获取当前 netplan 配置;netplan set
:修改当前 netplan 的配置。
一些配置模板
进配置文件夹
cd /etc/netplan
240712, ubuntu-22.04.4-live-server-amd64 , Vmware , 一个文件同时配置三块虚拟网卡
# This file is generated from information provided by the datasource. Changes
# to it will not persist across an instance reboot. To disable cloud-init's
# network configuration capabilities, write a file
# /etc/cloud// with the following:
# network: {config: disabled}
network:
ethernets:
ens33:
addresses:
- 1.224.42.1/8
- 1.224.42.2/8
- 1.224.42.3/8
nameservers:
addresses:
- 180.76.76.76
- 119.29.29.29
- 223.6.6.6
search:
-
-
-
routes:
- to: default
via: 1.0.0.2
ens34:
dhcp4: true
addresses: [1.224.42.11/8 , 1.224.42.12/8 , 1.224.42.13/8 ]
nameservers:
addresses: [119.29.29.29,223.5.5.5,180.76.76.76]
search: [,,]
routes: [{to: 0.0.0.0/0,via: 1.0.0.2, metric: 100}]
ens35:
dhcp4: false
dhcp6: false
addresses: [1.224.42.21/8 , 1.224.42.22/8 , 1.224.42.23/8 ]
nameservers:
addresses: [119.29.29.29,223.5.5.5,180.76.76.76]
routes: [{to: default, via: 1.0.0.2 , metric: 300}]
version: 2
240709, 配置三块虚拟网卡中的第二块, 使用单独文件配置, 取名 测试通过
root@us2243:/etc/netplan# ls
network:
version: 2 # Defines what version of the configuration format is used. The only value supported is 2. Defaults to 2 if not defined.
ethernets:
ens37:
addresses:
- 1.22.43.121/8
- 1.22.43.122/8
- 1.22.43.123/8
- 1.22.43.124/8
- 1.22.43.125/8
# gateway4: 192.168.168.2 # 以前的网关 , 可用,但会提示不赞成 , 用 routes:[{to: 0/0 , via: 网关}] 取代
routes: [{to: 0.0.0.0/0 , via: 1.0.0.2}]
# routes: #设置路由网关, 老版本由 gateway4:网关地址 设置
# - to: default # default 等效 0.0.0.0/0 等效 0/0 # could be 0/0 or 0.0.0.0/0 optionally
# via: 1.0.0.2 # 网关地址 , 也可用 gateway4:
nameservers:
addresses: # DNS的ip
- 180.76.76.76 # 百度
- 119.29.29.29 # 腾讯
- 223.5.5.5 # 阿里
- 223.6.6.6 # 阿里
- 8.8.8.8 # 谷歌
- 9.9.9.9
- 1.1.1.1
- 114.114.114.114
- 101.226.4.6
- 123.125.81.6
search: [ , , 可有可无.com ]
VMware环境下用的, 网卡接口 ens33
network:
ethernets:
ens33:
addresses:
- 192.168.168.204/24
# gateway4: 192.168.168.2 # 以前的网关 , 可用,但会提示不赞成
routes:
- to: default # default 等效 0.0.0.0/0 等效 0/0 # could be 0/0 or 0.0.0.0/0 optionally
via: 192.168.168.2 # 网关
nameservers:
addresses: # DNS的ip
- 192.168.168.2 # 本地
- 8.8.8.8 # 谷歌
- 8.8.4.4 # 谷歌
- 1.1.1.1
- 223.6.6.6 # 阿里
- 114.114.114.114
- 180.76.76.76 # 百度
- 119.29.29.29 # 腾讯
- 101.226.4.6
- 123.125.81.6
search:
- 192.168.168.2 # 本地
- 8.8.8.8 # 谷歌
- 8.8.4.4
- 1.1.1.1
- 223.6.6.6 # 阿里
- 114.114.114.114
- 180.76.76.76 # 百度
- 119.29.29.29 # 腾讯
- 101.226.4.6
- 123.125.81.6
version: 2
search 可以不要, 暂时也没搞懂用途
network:
ethernets:
ens33:
addresses:
- 192.168.168.204/24
# gateway4: 192.168.168.2 # 以前的网关 , 可用,但会提示不赞成
routes:
- to: default # default 等效 0.0.0.0/0 等效 0/0 # could be 0/0 or 0.0.0.0/0 optionally
via: 192.168.168.2 # 网关
nameservers:
addresses: # DNS的ip
- 192.168.168.2 # 本地
- 8.8.8.8 # 谷歌
- 8.8.4.4 # 谷歌
- 1.1.1.1
- 223.6.6.6 # 阿里
- 114.114.114.114
- 180.76.76.76 # 百度
- 119.29.29.29 # 腾讯
- 101.226.4.6
- 123.125.81.6
version: 2
调整一些DNS顺序
network:
ethernets:
ens33:
addresses:
- 192.168.168.204/24
# gateway4: 192.168.168.2 # 以前的网关 , 可用,但会提示不赞成
routes:
- to: default # default 等效 0.0.0.0/0 等效 0/0 # could be 0/0 or 0.0.0.0/0 optionally
via: 192.168.168.2 # 网关
nameservers:
addresses: # DNS的ip
- 192.168.168.2 # 本地
- 8.8.4.4 # 谷歌
- 223.6.6.6 # 阿里
- 114.114.114.114
- 180.76.76.76 # 百度
- 119.29.29.29 # 腾讯
- 8.8.8.8 # 谷歌
- 101.226.4.6
- 123.125.81.6
- 1.1.1.1
version: 2
也可以写成这样
network:
ethernets:
ens33:
addresses: [192.168.168.204/24]
routes:
- to: default # default 等效 0.0.0.0/0 等效 0/0 # could be 0/0 or 0.0.0.0/0 optionally
via: 192.168.168.2 # 网关
nameservers:
addresses: # DNS的ip
[ 192.168.168.2 , 8.8.4.4 , 223.6.6.6 , 114.114.114.114, 180.76.76.76 , 119.29.29.29 , 8.8.8.8 , 101.226.4.6, 123.125.81.6, 1.1.1.1]
version: 2
network:
version: 2
ethernets:
ens33:
addresses: [192.168.168.204/24]
routes:
- to: default # default 等效 0.0.0.0/0 等效 0/0 # could be 0/0 or 0.0.0.0/0 optionally
via: 192.168.168.2 # 网关
nameservers:
addresses: # DNS的ip
[ 192.168.168.2 , 8.8.4.4 , 223.6.6.6 , 114.114.114.114, 180.76.76.76 , 119.29.29.29 , 8.8.8.8 , 101.226.4.6, 123.125.81.6, 1.1.1.1]
search:
[ 192.168.168.2 , 8.8.4.4 , 223.6.6.6 , 114.114.114.114, 180.76.76.76 , 119.29.29.29 , 8.8.8.8 , 101.226.4.6, 123.125.81.6, 1.1.1.1]
一些 netplan
命令
netplan generate
:生成与后端管理工具对应的配置;Generate backend specific configuration files from /etc/netplan/*.yamlnetplan apply
:应用配置,必要时重启管理工具;netplan try
:在配置得到确认之后才应用,如果配置存在错误,则回滚;netplan get
:获取当前 netplan 配置;netplan set
:修改当前 netplan 的配置。
sudo netplan generate # 生成与后端管理工具对应的配置;
sudo netplan apply # 应用配置,必要时重启管理工具;
sudo netplan --debug apply # 调试,返回错误信息;
sudo netplan try # 在配置得到确认之后才应用,如果配置存在错误,则回滚,类似test;
sudo netplan get # 获取当前 netplan 配置;
sudo netplan set # 修改当前 netplan 的配置。
netplan generate
netplan generate
是一个与 Ubuntu 系统中的 Netplan 工具相关的命令。Netplan 是一个用于配置网络接口的工具,它使用 YAML 文件来定义网络接口的配置,替代了旧的 /etc/network/interfaces
文件。这种方法使得网络配置更加简洁和易于管理。
netplan generate
仅负责生成配置,不会应用配置。要应用生成的配置,需要使用 netplan apply
命令。
netplan generate
Generate backend specific configuration files from /etc/netplan/*.yaml
usage: /usr/sbin/netplan generate [-h] [–debug] [–root-dir ROOT_DIR]
[–mapping MAPPING]Generate backend specific configuration files from /etc/netplan/*.yaml
options: -h, --help show this help message and exit
–debug Enable debug messages --root-dir ROOT_DIR Search for and generate configuration files in this root directory
instead of / --mapping MAPPING Display the netplan device
ID/backend/interface name mapping and exit.
netplan generate
命令用于根据 /etc/netplan/
目录下的 .yaml
配置文件生成网络配置。这些配置文件定义了系统应该如何配置其网络接口。
基本步骤
-
创建或编辑 YAML 配置文件:
- 在
/etc/netplan/
目录下创建一个新的.yaml
文件,或者使用编辑器(如nano
或vim
)编辑现有的文件。 - 在这个文件中,定义网络接口的配置,包括接口名称、IP 地址、子网掩码、网关等信息。
- 在
-
运行
netplan generate
:- 在终端中输入
sudo netplan generate
命令。 - 这个命令会根据
/etc/netplan/
目录下的配置文件生成网络配置。
- 在终端中输入
-
应用配置:
- 通常,
netplan generate
命令会自动调用netplan apply
来应用生成的配置。但是,如果你只想生成配置而不立即应用,可以单独使用netplan generate
命令,然后手动应用配置。
- 通常,
-
验证配置:
- 使用
ip addr
或ifconfig
命令来检查网络接口的配置是否按照预期应用。
- 使用
注意事项
- 确保你有足够的权限来编辑
/etc/netplan/
目录下的文件,通常需要sudo
权限。 - 在应用新的网络配置之前,确保你了解这些配置如何影响你的网络连接,以避免意外的网络中断。
- 如果你在使用
netplan
时遇到问题,可以查看/var/log/syslog
文件中的日志信息,或者参考 Ubuntu 的官方文档和社区论坛获取帮助。
总之,netplan generate
是 Netplan 工具中的一个命令,用于根据 YAML 配置文件生成网络配置,是管理 Ubuntu 系统网络配置的一种有效方式。