Ubuntu 22.04 网卡配置实战:从图形界面到命令行的完整解析

为什么需要手动配置网卡

Ubuntu 22.04 LTS 在安装时通常能自动识别并配置网卡,但面对服务器环境、虚拟机迁移、网络结构调整或特殊需求(如绑定多个IP、设置MTU、配置无线网卡)时,手动配置网卡成为必备技能。本文基于Ubuntu 22.04的Netplan网络管理工具,结合图形界面和命令行两种方式,提供一套可落地的配置方案。

Ubuntu 22.04 网卡配置实战:从图形界面到命令行的完整解析
Ubuntu 22.04 网卡配置实战:从图形界面到命令行的完整解析

了解当前的网络环境

在动手配置前,先确认系统识别到的网卡名称、当前IP地址和路由状态。使用以下命令获取信息:

ip addr show
ip route show
cat /etc/netplan/*.yaml

Ubuntu 22.04默认使用Netplan作为网络配置工具,配置文件位于/etc/netplan/目录下,通常命名为01-network-manager-all.yaml00-installer-config.yaml。如果系统同时安装了NetworkManager,配置文件会包含renderer: NetworkManager,此时图形界面配置优先。

图形界面配置(适用于桌面版)

对于桌面用户,通过设置界面配置网卡是最直观的方式。点击右上角网络图标,选择“有线设置”,进入“IPv4”或“IPv6”选项卡,可切换为“手动”模式,填入IP地址、子网掩码、网关和DNS。图形界面修改后,Netplan会自动更新配置文件,无需手动编辑。

但图形界面存在限制:无法设置多个IP地址(需通过命令行补充)、无法定义路由策略、无法设置网卡绑定等高级功能。因此,掌握命令行配置更为重要。

命令行配置静态IP(Netplan方式)

Netplan使用YAML语法,结构清晰。以下是一个典型的静态IP配置示例,适用于单网卡有线连接:

network:
  version: 2
  renderer: networkd
  ethernets:
    enp3s0:
      dhcp4: no
      dhcp6: no
      addresses:
        - 192.168.1.100/24
      routes:
        - to: default
          via: 192.168.1.1
      nameservers:
        addresses: [8.8.8.8, 114.114.114.114]
        search: [example.com]

关键字段说明:renderer决定后端(networkd适合服务器,NetworkManager适合桌面);addresses可写多个IP;routes定义默认网关;nameservers设置DNS和搜索域。编辑文件后,执行sudo netplan apply使配置生效。若语法错误,可先运行sudo netplan try验证,超时后自动回滚,避免断网。

配置DHCP(动态获取)

若需恢复自动获取IP,只需将dhcp4改为yes,并删除静态地址和路由字段。动态配置适合笔记本等移动设备。

配置多IP或别名

在同一网卡上绑定多个IP,只需在addresses列表中追加:

addresses:
  - 192.168.1.100/24
  - 10.0.0.5/24

注意不同子网需配置对应路由,否则流量无法正确转发。

使用nmcli管理网络(适用于NetworkManager)

如果系统使用NetworkManager作为渲染器,推荐使用nmcli命令行工具。查看连接:nmcli connection show。修改现有连接的IP:

nmcli connection modify "Wired connection 1" ipv4.addresses 192.168.1.100/24
nmcli connection modify "Wired connection 1" ipv4.gateway 192.168.1.1
nmcli connection modify "Wired connection 1" ipv4.dns "8.8.8.8"
nmcli connection modify "Wired connection 1" ipv4.method manual
nmcli connection up "Wired connection 1"

nmcli的优势在于无需编辑YAML文件,且支持即时生效。对于临时测试,还可使用nmcli device reapply

无线网卡配置

无线网卡通常由NetworkManager管理,命令行配置如下:

nmcli device wifi connect "SSID" password "密码"
# 若需静态IP,先修改连接的ipv4设置

若使用netplan配置无线,需在wifis段下定义:

wifis:
  wlp2s0:
    dhcp4: yes
    access-points:
      "MySSID":
        password: "密码"

注意无线网卡名称通常以wl开头,可通过ip link查看。

常见问题排查

  1. 配置后无法上网:检查网关和DNS是否正确,使用ping 8.8.8.8ping www.baidu.com分别测试外网和域名解析。
  2. Netplan报错:运行sudo netplan generate查看具体错误,常见为YAML缩进错误或字段拼写错误。
  3. 网卡未启动:使用sudo ip link set enp3s0 up手动启动,或检查物理连接。
  4. DNS不生效:查看/etc/resolv.conf,若被NetworkManager覆盖,可在Netplan中指定DNS。
  5. 虚拟机网卡不识别:确认虚拟化平台提供的网卡型号,安装对应驱动(如VMware的vmxnet3)。

结语

Ubuntu 22.04的网卡配置并不复杂,关键在于理解Netplan的语法和网络基础概念。建议先在测试环境操作,熟悉后再应用到生产服务器。记住,每次修改配置前备份原文件:sudo cp /etc/netplan/xxx.yaml /etc/netplan/xxx.yaml.bak。希望本文能帮助你顺利完成网卡配置,避免常见的坑。

发表评论