ubuntu16.04版本为例:
一、 配置过程(包含遇到的问题)
1. 添加多网卡(适配器2和3)

最好都选为NAT模式,否则桥接模式的话可能部分网卡只有ipv6的地址、没有ipv4的
2. 登录虚拟机,发现新增网卡没有ip

3. ifconfig -a 查看

发现确实新增了两个网卡,但是没有ip
4. 给新增的网卡配置ip分配规则
sudo vim /etc/network/interfaces

5. 执行命令使配置生效:
sudo systemctl restart networking
或者:
sudo /etc/init.d/networking restart
6. 再次查看

成功解决
7. 配置多队列网卡
打开虚拟机种vmk文件

修改ethernet1的配置后:

8. 重启虚拟机发现:

配置多队列网卡后,原来的ens37不见了
9. ifconfig -a 查看

发现ens37 变成了 ens160,而ens160我们是没有规定ip分配规则的,所以它没有连上网
10. 再次给ens160配置ip分配规则后

发现解决了
11. 检验ens160是否为多队列网卡
cat /proc/interrupts | grep ens160

发现ens160就是我们配置的多队列网卡
二、问题解决
问题:
每次配置多队列网卡,其网卡名可能会变化,这样也太麻烦了:
因此根据HWaddr(物理网卡的具体编号,恒定不变的),给它取一个名字
解决:
步骤 1:确认目标网卡的 MAC 地址
从中找到
ifconfig -a的 MAC 地址:
ens160
HWaddr 00:0c:29:f6:74:4f
步骤 2:创建 udev 规则文件
执行命令创建并编辑 udev 规则文件
sudo vim /etc/udev/rules.d/70-persistent-net.rules
依次命名为:eth0、eth1、eth2
是 udev 的自定义规则文件,系统启动时会按文件名顺序(
tips:70-persistent-net.rules属于优先级较高的执行阶段)扫描该文件,并根据规则对匹配的网络设备执行命名操作。
70-*

步骤 3:重启系统使规则生效
sudo reboot
补充说明:
此方法通过udev 设备管理规则强制将指定 MAC 地址的网卡固定命名为
,即使 VMware 硬件配置变化(如多队列调整),只要 MAC 地址不变,网卡名称就不会再自动变更。若系统使用
ens37(较新 Ubuntu 版本),也可在
netplan配置文件中通过
netplan字段绑定网卡名称,逻辑与 udev 规则一致。
match.macaddress
步骤4:最后再配置一下ip分配规则就好了

:系统启动时自动激活网卡
auto eth0。
eth0:配置
iface eth0 inet dhcp接口为IPv4 的 DHCP 模式,即该网卡会自动从网络中的 DHCP 服务器获取 IP 地址、子网掩码、网关、DNS 等网络参数。
eth0
二、步骤总结
1. 新增网卡

最好都选为NAT模式,否则桥接模式的话可能部分网卡只有ipv6的地址、没有ipv4的
2. 新增网卡后查看,网卡的HWaddr
ifconfig -a

3. 根据 HWaddr 固定网卡的名字
sudo vim /etc/udev/rules.d/70-persistent-net.rules

4. 配置网卡的ip分配规则

5. 使配置生效
sudo reboot
sudo systemctl restart networking
6. 配置多队列网卡(这里选择eth1)
关闭虚拟机,打开 vmk 文件
找到:

修改:

保存,然后启动虚拟机,查看eth1是否为多队列
cat /proc/interrupts | grep eth1

发现有四个队列,至此成功给虚拟机新增网卡,并将某个网卡配置为多队列

