环境
ubuntu20.02
介绍
Ubuntu 18.04 网络配置与Ubuntu 16.04网络配置变动较大. Ubuntu 18.04网络的配置与控制发生了很大的变化。不需要 interfaces 文件和 /etc/init.d/networking ,现在使用 Netplan。Netplan 是某些 Linux 发行版配置网络连接的命令行工具。Netplan 使用 YAML 描述文件来配置网络接口,然后,通过这些描述为任何给定的呈现工具生成必要的配置选项。
netplan 为多种后端抽象YAML网络配置. netplan在linux系统上轻松配置网络。只需网络接口的YAML描述以及各接口应配置的功能。
使用
sudo vim /etc/netplan/01-netcfg.yaml
修改模板
# This file describes the network interfaces available on your system
# For more information, see netplan(5).
network:
version: 2
renderer: networkd # 可不配置用;Configured devices get handled by systemd-networkd by default, unless explicitly marked as managed by a specific renderer (NetworkManager)
ethernets:
# 网卡名
ens18:
# 是否使用 dhcp4
dhcp4: false
# ip 地址
addresses: [A.A.A.A/24]
# 网关
gateway4: G.G.G.G
# dns 域名解析服务器地址
nameservers:
addresses: [N.N.N.N]
# 测试配置; 应用配置,等待用户确认;如果网络中断或未给出确认,将回滚。
$ sudo netplan try
# 应用渲染器的配置,根据需要重新启动它们。
$ sudo netplan apply
# 如果应用失败,可以查看错误日志并调试
$ sudo netplan --debug apply
其它
使用/etc/netplan来为渲染器生成所需的配置
# 生成默认配置yaml配置文件;
netplan generate
一、概述
Ubuntu 从 17.01 开始之后的版本,都已放弃在/etc/network/interfaces 里固定IP的配置,而是改成 netplan 方式,配置文件是:/etc/netplan/01-netcfg.yaml(01-network-manager-all.yaml)(添加规则,打头的两位数字01应该类似于udev中的优先级)
二、Ubuntu Server 与 Ubuntu Desktop
Desktop版本默认安装NetworkManager,并且默认使用NetworkManager管理网络,Ubuntu的Server版本只有终端界面,没有桌面GUI,且Server版本不会安装NetworkManager,需要手动安装:
sudo apt install network-manager
1
三、yaml文件格式
用缩进来表示层级关系,需要注意冒号之后要有个空格
范例:
network:
version: 2
renderer: NetworkManager
ethernets:
ens33: # 配置的网卡名称,可以使用ifconfig -a查看本机的网卡
dhcp4: no # 关闭动态IP设置,因为要设置固定IP
addresses: [192.168.44.101/24] # 要设置为的固定IP,后面的24为子网掩码的位数
gateway4: 192.168.44.2 # 要设置的网关地址
nameservers:
addresses: [192.168.44.2,8.8.8.8] # 要设置的DNS地址
当设置双网卡的特殊情况时,内网网卡不设置网关地址,不然会产生冲突,导致路由外网映射失败,给连接外网网段的那张网卡设置网关即可:
network:
version: 2
renderer: NetworkManager
ethernets:
ens33:
addresses: [192.168.2.67/24] # 内网网卡不设置网关与DNS
dhcp4: no
ens44:
addresses: [192.168.1.67/24]
dhcp4: no
gateway4: 192.168.1.1
nameservers:
addresses: [192.168.1.1]
使用以下命令使配置生效:
sudo netplan apply