Ubuntu 使用 netplan 配置网络
2024-06-11
Ubuntu
安装相关软件包:
$ sudo apt install network-manager wpasupplicant wireless-tools
查看网卡信息:
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp1s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
link/ether e4:3a:6e:7c:97:a2 brd ff:ff:ff:ff:ff:ff
3: enp2s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
link/ether e4:3a:6e:7c:97:a3 brd ff:ff:ff:ff:ff:ff
4: wlo1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:21:6a:95:ed:80 brd ff:ff:ff:ff:ff:ff
其中 lo 代表本地回环接口,en 代表有线以太网接口,wl 代表无线局域网接口,后面的 p1s0 分别代表网卡对应的第几个总线和插槽。
如果有网卡没有识别到,可能是没有启用网卡:
sudo ifconfig wlo1 up
扫描无线网络:
$ sudo iwlist wlo1 scan
编辑 netplan 配置文件:
$ cd /etc/netplan/
$ ls
00-installer-config-wifi.yaml 00-installer-config.yaml
如果需要配置有线网络,可以修改 00-installer-config.yaml
,如果需要配置无线网络,可以修改 00-installer-config-wifi.yaml
。不同系统可能默认的文件不一样,但只要在 /etc/netplan/
目录下都会被使用的。
配置有线网络:
network:
ethernets:
enp1s0:
# 是否自动获取 IP 地址
dhcp4: false
# 可选:IP 地址和子网掩码
addresses:
- 10.0.2.15/24
# 可选:静态路由配置
routes:
- to: default
via: 10.0.2.2
# 可选:DNS 服务器配置
nameservers:
addresses:
- 114.114.114.114
- 8.8.8.8
enp2s0:
dhcp4: true
version: 2
配置无线网络:
network:
version: 2
wifis:
wlo1:
dhcp4: true
# 接入点配置
access-points:
# WiFi 名称
"mywifi":
password: "my_password"
# 无密码用 {} 表示
"ourwifi": {}
测试并应用 netplan 配置:
$ netplan try
$ netplan apply
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: enp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether e4:3a:6e:7c:97:a2 brd ff:ff:ff:ff:ff:ff
inet6 fe80::e63a:6eff:fe7c:97a2/64 scope link
valid_lft forever preferred_lft forever
3: enp2s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc fq_codel state DOWN group default qlen 1000
link/ether e4:3a:6e:7c:97:a3 brd ff:ff:ff:ff:ff:ff
5: wlo1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:21:6a:95:ed:80 brd ff:ff:ff:ff:ff:ff
inet 192.168.31.250/24 brd 192.168.31.255 scope global dynamic wlo1
valid_lft 43180sec preferred_lft 43180sec
inet6 fe80::221:6aff:fe95:ed80/64 scope link
valid_lft forever preferred_lft forever
其中 inet 和 inet6 即为获取到的 ip 地址。