Ubuntu:网络配置

配置文件位置

1
/etc/netplan/

配置步骤

1. 定位配置文件

1
2
3
# 通常以 .yaml 结尾,如:
ls /etc/netplan/
# 常见文件名:01-netcfg.yaml, 50-cloud-init.yaml, 00-installer-config.yaml

2. 编辑配置文件

1
sudo nano /etc/netplan/01-netcfg.yaml

3. 配置示例(静态 IP)

1
2
3
4
5
6
7
8
9
10
11
12
13
network:
version: 2
renderer: networkd
ethernets:
enp0s3: # 网卡名称
dhcp4: no # 禁用 DHCP
addresses:
- 192.168.1.100/24 # IP地址/子网掩码
routes:
- to: default
via: 192.168.1.1 # 网关
nameservers:
addresses: [8.8.8.8, 8.8.4.4] # DNS服务器

4. 配置示例(DHCP)

1
2
3
4
5
6
7
8
9
network:
version: 2
renderer: networkd
ethernets:
enp0s3:
dhcp4: true # 启用 DHCP
dhcp4-overrides:
use-dns: true # 使用 DHCP 提供的 DNS
use-routes: true # 使用 DHCP 提供的路由

5. 应用配置

1
sudo netplan apply

验证配置

1. 检查 IP 地址

1
ip addr show

2. 检查路由表

1
ip route show

3. 测试网络连通性

1
ping -c 4 8.8.8.8

4. 检查 DNS 解析

1
nslookup google.com

高级配置

多网卡配置

1
2
3
4
5
6
7
8
9
10
11
network:
version: 2
renderer: networkd
ethernets:
enp0s3:
dhcp4: true
enp0s4:
addresses: [192.168.2.100/24]
routes:
- to: default
via: 192.168.2.1

VLAN 配置

1
2
3
4
5
6
7
8
network:
version: 2
renderer: networkd
vlans:
vlan100:
id: 100
link: enp0s3
addresses: [192.168.100.10/24]

绑定接口

1
2
3
4
5
6
7
8
9
10
11
12
13
network:
version: 2
renderer: networkd
bonds:
bond0:
interfaces: [enp0s3, enp0s4]
parameters:
mode: 802.3ad
lacp-rate: fast
addresses: [192.168.1.50/24]
routes:
- to: default
via: 192.168.1.1

故障排查

1. 测试配置语法

1
2
sudo netplan try
# 按 Enter 接受配置,或等待回滚

2. 生成网络配置

1
sudo netplan generate

3. 调试模式

1
sudo netplan --debug apply

4. 查看日志

1
journalctl -u systemd-networkd

常用命令速查

命令 功能
ip addr show 查看所有网络接口
ip link show 查看链路状态
ip route show 查看路由表
systemctl status systemd-networkd 检查网络服务状态
networkctl list 列出所有网络接口
networkctl status enp0s3 查看指定接口状态

注意:配置更改后必须执行 sudo netplan apply 使配置生效