【ubuntu-22.04】系统配置之 netplan 网络配置

720次阅读
没有评论

前言
netplan 为 linux 提供了一套统一的网络配置方式,旧版本 ubuntu 使用 /etc/network/interfaces 配置网络,从 ubuntu 18.04 开始,修改使用 netplan 方式,新版本也不例外。

如流程图所示

systemd-networkd 为 systemd 中网络配置相关的部分,

network manager 为图形接口的后台配置程序,

*.yaml 为 netplan 对应配置文件,通过 netplan 工具,生成对应的 systemd & network manager 对应的配置文件,以此实现统一网络配置接口。

如下记录 virtual-box ubuntu server 22.04 有线网络配置的基本操作

操作步骤

  1. 创建网络配置文件
    默认配置文件目录 /etc/netplan,从默认配置文件 copy 生成 netplan 新配置

sudo cp /etc/netplan/00-installer-config.yaml /etc/netplan/10-static-config.yaml

默认配置文件可能名称不同,可做保留处理,新配置文件增大”文件编号”,配置后覆盖原有配置

netplan 获取配置文件会按字母顺序排列(Alphabetically)进行查找,

配置文件中不同的 key 会依次添加执行,重复的 key 后面配置会覆盖前面配置

  1. 修改网络配置文件
    通过 vim 修改配置文件,文件内容如下

This is the network config written by ‘user’

network:
ethernets:
enp0s3:
dhcp4: false
addresses:
– 10.0.2.15/24
routes:
– to: default
via: 10.0.2.2
nameservers:
addresses:
– 114.114.114.114
– 8.8.8.8
version: 2

配置文件说明
enp0s3:网络节点名称,以实际机器与名称为主

dhcp4: IPv4 网络类型配置,true 为动态IP,false 为静态IP

address:IP+子网配置,格式为”本机IP地址/子网掩码”

routes:网关配置,via 为网关地址

nameservers -> addresses: DNS 配置

配置文件注意事项
yaml 格式,修改时较容易出错,apply 如有错误信息,按提示对应修改

如下几项需要特别注意:

缩进正确,每一个子项配置都需要有对应的缩进,平级项配置需要对其

yaml 所有缩进都是空格,vim 中配置 “:set list”,可打开不可见字符显示,空格为空白显示

网关配置层级为 routes -> to -> via,注意缩进,yaml 中 “-” 代表列表,via 为 列表 to 的子项

  1. 应用网络配置
    根据 yaml 配置文件生成后台配置文件,此时未生效,但重启后会生效(非必须)

sudo netplan generate

也可以用此命令临时测试 yaml 语法是否正确

配置网络生效

sudo netplan apply

执行此命令,网络配置即时生效

总结
如上为 netplan 有线网络的简单配置,其他无线网络,桥接网络等网络相关操作,netplan 也都可以配置,可通过参考网址中的官网查看更多 netplan 操作。

问题记录

  1. apply 配置网络时,有如下警告信息

WARNING:root:Cannot call Open vSwitch: ovsdb-server.service is not running

解决办法:实际看网络配置成功且生效,暂未处理

  1. ubuntu server 22.04 实体服务器启动网络超时

A start job is running for wait for network to be configured.

实体服务器运行 ubuntu 时,发现启动时间较长,

通过查看启动信息发现,会有如上信息阻塞,即网络配置卡住约 2min 时间。

解决办法:网络搜索后发现,此处为网络配置超时导致

实体服务器有多网卡,在开机启动配置网络时,只配置了单网卡网络,最终在 netplan 配置网络节点中增加 optional: true 项,改为非阻塞方式配置网络。

参考网址

https://netplan.io

https://ubuntu.com/server/docs/network-configuration————————————————

正文完
可以使用微信扫码关注公众号(ID:xzluomor)
post-qrcode
 
评论(没有评论)