Ubuntu 22.x 网络配置(VMware 环境)

一、禁用 NetworkManager

sudo systemctl stop NetworkManager
sudo systemctl disable NetworkManager
sudo systemctl mask NetworkManager

二、修改 Netplan 配置

编辑或新建 /etc/netplan/01-netcfg.yaml

sudo vim /etc/netplan/01-netcfg.yaml

内容如下(使用 DHCP 自动获取 IP):

network:
  version: 2
  renderer: networkd
  ethernets:
    ens33:
      dhcp4: true

注意:

  • 缩进必须为两个空格。
  • 不要使用 Tab。
  • 不要保留旧的 renderer: NetworkManager

删除旧的 NetworkManager 配置文件(防止冲突):

sudo rm /etc/netplan/01-network-manager-all.yaml

修正权限:

sudo chmod 600 /etc/netplan/01-netcfg.yaml
sudo chown root:root /etc/netplan/01-netcfg.yaml

三、启用 systemd-networkd 再应用 Netplan

  1. 启动并启用 systemd-networkd
sudo systemctl unmask systemd-networkd
sudo systemctl enable systemd-networkd --now
  1. 启动并启用 systemd-resolved 管理 DNS:
sudo systemctl enable systemd-resolved --now
sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
  1. 应用 Netplan 配置:
sudo netplan apply

四、验证网络是否启动成功

查看网络状态:

networkctl status ens33

或:

ip addr show ens33

应看到:

inet 192.168.x.x/24 scope global dynamic ens33

测试连接:

ping -c 3 8.8.8.8
ping -c 3 www.baidu.com

五、配置静态 IP(可选)

如果需要固定 IP,可修改 /etc/netplan/01-netcfg.yaml

network:
  version: 2
  renderer: networkd
  ethernets:
    ens33:
      addresses: [192.168.1.100/24]
      routes:
        - to: default
          via: 192.168.1.1
      nameservers:
        addresses: [223.5.5.5, 8.8.8.8]

然后执行:

sudo netplan apply

六、确认最终网络状态

查看网络设备状态:

networkctl

输出示例:

IDX LINK   TYPE     OPERATIONAL SETUP
  1 lo     loopback carrier     unmanaged
  2 ens33  ether    routable    configured

七、常见问题

问题原因解决方案
Permissions for /etc/netplan/*.yaml are too open配置文件权限太宽执行 sudo chmod 600 /etc/netplan/*.yaml
Failed to start NetworkManager.service: Unit is maskedNetworkManager 被禁用忽略(预期行为)
systemd-networkd is not running网络服务未启动sudo systemctl enable systemd-networkd --now
无法解析域名DNS 未启用启动 systemd-resolved 并修复 /etc/resolv.conf

八、命令速查表

# 1. 禁用 NetworkManager
sudo systemctl stop NetworkManager
sudo systemctl disable NetworkManager
sudo systemctl mask NetworkManager

# 2. 编辑 Netplan 配置
sudo nano /etc/netplan/01-netcfg.yaml

# 3. 启用 systemd-networkd 与 DNS
sudo systemctl unmask systemd-networkd
sudo systemctl enable systemd-networkd --now
sudo systemctl enable systemd-resolved --now
sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf

# 4. 应用 Netplan
sudo netplan apply

# 5. 检查网络状态
networkctl status ens33
ip addr show ens33
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值