Ubuntu netplan 如何为网卡配置 IP 地址
Ubuntu netplan 如何为网卡配置 IP 地址
Ubuntu 18.04 及之后版本
Ubuntu 18.04 及之后版本采用 netplan 管理网络配置,配置文件在 /etc/netplan/ 目录下
配置静态示例
- /etc/netplan/01-network-manager-all.yaml
network:
version: 2
renderer: networkd
ethernets:
ens33:
dhcp4: no
addresses: [172.20.0.81/24]
gateway4: 172.20.0.2
nameservers:
addresses: [223.5.5.5]- 测试配置文件
netplan try- 应用配置文件
netplan --debug apply配置DHCP
network:
version: 2
renderer: networkd
ethernets:
ens33:
dhcp4: true单网卡多IP和路由
network:
version: 2
renderer: networkd
ethernets:
ens33:
addresses:
- 172.20.0.91/24
- 192.168.0.91/24
#gateway4: # unset, since we configure routes below
routes:
- to: 0.0.0.0/0
via: 172.20.0.91
metric: 100
- to: 192.168.0.0/24
via: 192.168.0.91
metric: 100Ubuntu 18.04 之前版本
IP命令行配置如下
sudo gedit /etc/network/interfacesDHCP
DHCP配置如下(假设通过eth1上网)
# The primary network interface - use DHCP to find our address
auto eth1
iface eth1 inet dhcp //指定为dhcp然后重启
sudo /etc/init.d/networking restartStatic IP
静态IP地址配置如下(假设通过eth1上网)
# The primary network interface
auto eth1
iface eth1 inet static //指定为static
address 192.168.3.90 //IP地址
gateway 192.168.3.1 //网关
netmask 255.255.255.0 //子网掩码同样需要重启
sudo /etc/init.d/networking restartDNS
如果有必要,配置DNS sudo gedit /etc/resolv.conf
nameserver 192.168.3.2Bond Modes
Netplan 支持的 mode 参数对应 Linux 内核 bonding 驱动的模式,只有以下 7 种:
balance-rr(模式 0)active-backup(模式 1) - 最常用balance-xor(模式 2)broadcast(模式 3)802.3ad(模式 4) - 即 LACPbalance-tlb(模式 5)balance-alb(模式 6) 自适应负载均衡,这是 Bonding 中功能最强、同时也比较智能的一种模式。它包含了 balance-tlb (模式 5) 的所有功能,并增加了 接收负载均衡 (RLB)。- 发送流量 (Transmit):驱动程序会根据当前各 slave 网卡的负载情况,智能地分配外发数据包。
- 接收流量 (Receive):这是 ALB 的核心。Bond 驱动程序通过拦截并修改 ARP 应答(ARP negotiation),让局域网内不同的客户端(其他机器)学习到服务器不同物理网卡的 MAC 地址。这样,外部发来的数据流就会分散到不同的物理网卡上,从而实现接收流量的负载均衡。
- 交换机要求:不需要。这是该模式最大的优点。你不需要在交换机上做任何特殊的配置(如 LACP 或 EtherChannel),只要交换机端口都在同一个 VLAN 即可。
- 适用场景:流量吞吐量大、需要双向负载均衡、且无法控制或配置上级交换机的场景。
示例:
network:
version: 2
renderer: networkd
ethernets:
eno1:
dhcp4: false
eno2:
dhcp4: false
bonds:
bond0:
# 将两块物理网卡加入 bond
interfaces: [eno1, eno2]
# 配置 IP 地址 (Access 模式直接配置在这里)
addresses:
- 192.168.1.100/24
# 配置网关 (Ubuntu 22.04 推荐使用 routes 替代 gateway4)
routes:
- to: default
via: 192.168.1.1
nameservers:
addresses: [8.8.8.8, 114.114.114.114]
parameters:
# 模式选择:
# active-backup: 主备模式。如果交换机未做任何聚合配置,选这个最稳。
# 802.3ad: 如果交换机配置了 LACP,选这个。
mode: active-backup
# 系统每隔 100 毫秒 (0.1秒) 检查一次物理网卡的链路状态(即网线是否插好、光信号是否正常),是实现故障切换 (Failover) 的基础
mii-monitor-interval: 100
# 只有在 active-backup 模式下才需要下面这行,指定首选主网卡(可选)
primary: eno1