VirtualBox中Ubuntu 22.04网卡配置以及解决过程中遇到的问题
1.添加网卡(仅主机)
2.启动虚拟机,查看新添加网卡信息
#查看网卡
ip addr
# 查看网络信息,发现新网卡(enp0s8)未分配
ifconfig -a
3.使用netplan进行网络配置
3.1 配置 DHCP获取IP
# 进入netplan 文件夹
cd /etc/netplan
#查看文件夹下yaml
ls -al
# 编辑yaml文件
sudo vim 50-cloud-init.yaml
#配置网卡名(enp0s8)
network:ethernets:enp0s3:dhcp4: trueenp0s8:dhcp4: trueversion: 2# 保存并退出
wq!
# 设置生效
sudo netplan apply
# 再次查看网络信息
ifconfig -a
# 发现配置文件未生效,解决方式请看下面
3.2 配置静态IP
# 进入netplan 文件夹
cd /etc/netplan
#查看文件夹下yaml
ls -al
# 编辑yaml文件
sudo vim 50-cloud-init.yaml
# 输入文件
network:ethernets:enp0s3:dhcp4: true # 启用dhcp4enp0s8:dhcp4: false # 关闭dhcp4addresses: - 192.168.56.102/24 # 配置的静态ip地址和掩码 #gateway4: 192.168.56.1 # 保存生效系统出现警告(gateway4 has been deprecated, use default routes instead),即将废弃,建议用routes routes:- to: defaultvia: 192.168.56.1 # 设置网关地址nameservers:addresses: [114.114.114.114,8.8.8.8]version: 2renderer: networkd# 保存文件
wq!# 应用生效,如未提示错误说明yaml 文件格式没问题
sudo netplan apply#重启验证
sudo reboot
# 验证网络信息,已生效如下图
ifconfig -a
#如果出现无法连接外网,请参考`遇到问题3``解决
4.遇到问题1
HARNING:root:Cannot call 0pen vswitch: ovsdb-server.service is not running
错误解决
# 更新并安装 openvswitch-switch
sudo apt-get update
sudo apt-get install openvswitch-switch
# 查看状态
sudo systemctl status ovsdb-server
#如未启动可尝试启动
sudo systemctl start ovsdb-server#设置开机启动
sudo systemctl enable ovsdb-server
#重启系统
sudo reboot
5.遇到问题2
,修改网络配置50-cloud-init.yaml
重启发现文件未生效
经过查资料发现50-cloud-init.yaml 配置文件中有一段注释中有说明
# This file is generated from information provided by the datasource. Changes
# to it will not persist across an instance reboot. To disable cloud-init's
# network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}#翻译后内容:
#此文件是根据数据源提供的信息生成的。变化
#它不会在实例重新启动后持续存在。禁用云初始化
#网络配置功能,写入文件
#/etc/cloud/cloud.cfg.d/99-diasable-network-config.cfg包含以下内容:
#network: {config: disabled}
根据备注信息提示,解决
# 编辑文件99-diasable-network-config.cfg 如果不存在则创建
sudo vim /etc/cloud/cloud.cfg.d/99-diasable-network-config.cfg
# 输入内容
network: {config: disabled}#重启验证
sudo reboot
#最后查看,已生效
ifconfig -a
5.遇到问题3
,配置静态IP后无法连接外网
移除其网关和 DNS 配置,将外网流量交给 NAT 网卡(enp0s3),配置文件调整如下:
# 进入netplan 文件夹
cd /etc/netplan
#查看文件夹下yaml
ls -al
# 编辑yaml文件
sudo vim 50-cloud-init.yaml
# 输入文件
network:ethernets:enp0s3:dhcp4: true # 启用dhcp4enp0s8:dhcp4: false # 关闭dhcp4addresses: - 192.168.56.102/24 # 配置的静态ip地址和掩码 version: 2renderer: networkd# 保存文件
wq!# 应用生效,如未提示错误说明yaml 文件格式没问题
sudo netplan apply#重启验证
sudo reboot
# 验证网络信息,已生效如下图
ifconfig -a# 检测默认路由,是否指向(enp0s3)网卡路由
ip route show default# 最后拼ping 验证
ping 8.8.8.8 # 测试外网 IP 连通性
ping www.baidu.com # 测试 DNS 解析