解决ESXI 7.0安装USB网卡,关机重启后网卡丢失不能用的问题
本帖最后由 深海游鱼 于 2022-5-14 20:39 编辑症状:断电、关机重启后,usb网卡不能用,web界面查看在“网络”--“虚拟交换机”中对应的虚拟机绑定的usb网卡失效,需要重新绑定usb网卡。
思路:在esxi的开机脚本里面添加命令行,修复网卡对应的端口组。操作:1、在usb网卡能使用时,通过web收集如下数据,在“网络”--“物理网卡”中找到并记录usb网卡的MAC地址,假设为“00:0c:29:d5:35:e4”,记录usb网卡的名称,假设为“vusb2”。在“网络”--“虚拟交换机”中,记录你设置的与网卡对应的名称,假设为“vSwitch2”。在“网络”--“端口组”中,记录你设置的与网卡对应的名称,假设为“portgroup2”。注意:你的名称与我的可能不一样;这里面的端口组名称,虚拟交换机名称都不要带空格、括号等特殊符号,不然命令里执行不了。 2、esxi打开ssh,通过新版的winscp链接esxi,老版本链接不上。在/etc/rc.local.d/local.sh中的最后一行“exit 0”的前面(上面)加上如下语句:# 在“vmkusb_nic_fling”添加usb网卡的mac地址。其中的“vusb2”修改为你的网卡名称,等号后面的mac地址修改为你的mac地址。如果有多张usb网卡,则在引号内的第一个mac地址后加空格,再写入第二块usb网卡的内容,如第二行。esxcli system module parameters set -p "vusb2_mac=00:0c:29:d5:35:e4" -m vmkusb_nic_fling下面为2张usb网卡格式:esxcli system module parameters set -p "vusb2_mac=00:0c:29:d5:35:e4 vusb3_mac=00:0c:29:d5:35:e5" -m vmkusb_nic_fling
#删除usb网卡的名为vusb2 的网卡对应的虚拟交换机。其中的网卡名称(vusb2) 和虚拟交换机名称(vSwitch2)替换为你的实际名称。# esxcli network vswitch standard uplink remove --uplink-name=vusb2--vswitch-name=vSwitch2
# 修改名为“vSwitch2”的虚拟机配置中的安全选项中的“混杂模式”、“MAC地址更改”、“伪传输”为“接受”,其中的“vSwitch2”修改为你的实际虚拟机名称。如果将其中的“true”修改为“false”,即修改为“拒绝”。esxcli networkvswitch standard policy security set--vswitch-name=vSwitch2--allow-forged-transmits=true --allow-mac-change=true--allow-promiscuous=true
忘了一条,还必须补上下面一条。# 激活网卡 vusb2,在菜单 网卡绑定——故障切换顺序中标记为活动,状态为“活动”。其中的“vSwitch2”“vusb2”,修改为你的实际名称。esxcli network vswitch standard policy failover set-v=vSwitch2 -a=vusb2
作为管理口行不行 jyc0516 发表于 2022-3-22 12:09
作为管理口行不行
通过设置usb网卡的安全为混杂模式,能管理esxi。 深海游鱼 发表于 2022-3-22 14:42
通过设置usb网卡的安全为混杂模式,能管理esxi。
断电开机好像就不行了 我这安装好虚拟机后,又安装了op,可以正常使用,但是只要重启软路由,就无法上网了,有和我这情况一样的吗? 1196034662 发表于 2022-3-25 01:47
我这安装好虚拟机后,又安装了op,可以正常使用,但是只要重启软路由,就无法上网了,有和我这情况一样的吗 ...
按我的方法试一下,应该没有问题 jyc0516 发表于 2022-3-24 21:55
断电开机好像就不行了
断电开机也行啊,我一直这样用 深海游鱼 发表于 2022-3-28 21:37
按我的方法试一下,应该没有问题
应该是好使了,测试了几次,还挺稳定 一模一样的问题,按楼主方式无效果啊 最重要的一步楼主没贴出来,有点坑啊,踩坑了2个小时。。。终于完美解决 我只是路过打酱油的。 drfyup 发表于 2022-5-12 01:26
最重要的一步楼主没贴出来,有点坑啊,踩坑了2个小时。。。终于完美解决
哪一步?写漏了? esxcli system module parameters set -p "vusb0_mac=00:e0:4c:68:02:c9" -m vmkusb_nic_fling
esxcli network vswitch standard uplink remove --uplink-name=vusb0--vswitch-name=vm2
esxcli networkvswitch standard policy security set--vswitch-name=vm2--allow-forged-transmits=true --allow-mac-change=true--allow-promiscuous=true
esxcli network vswitch standard policy failover set-v=vm2 -a=vusb0
楼主我按这个还是不行啊。esxi重启后虚拟交换机上联端口没了,上联端口为USB网卡。网卡型号2.5GB usb RTL8156:Q 已解决,见官方这篇文章:https://flings.vmware.com/usb-network-native-driver-for-esxi#instructions
持久化 USB NIC 绑定
目前在 ESXi 中存在一个限制,即 USB NIC 绑定在引导过程中很晚才被拾取,并确保在重新引导时保留设置,需要将以下内容添加到基于/etc/rc.local.d/local.sh在你的配置上。
vusb0_status=$(esxcli network nic get -n vusb0 | grep 'Link Status' | awk '{print $NF}')
count=0
while [[ $count -lt 20 && "${vusb0_status}" != "Up" ]]
do
sleep 10
count=$(( $count + 1 ))
vusb0_status=$(esxcli network nic get -n vusb0 | grep 'Link Status' | awk '{print $NF}')
done
esxcfg-vswitch -R
注意: vusbX vmkernel 界面可能不会显示在 ESXi Embedded Host Client 和/或 vSphere HTML5 UI 中,这并不意味着存在问题。ESXi 从未设计为支持用于管理网络的基于 USB 的 NIC,并且 UI 在使用 UI 时可能无法正确检测到这些设备。建议将 ESXi Shell 用于需要配置 vusbX 设备的任何操作。
持久化 VMkernel 到 USB NIC 的映射
当连接多个 USB NIC 时,vmkX 到 USB NIC 的物理 MAC 地址之间的映射可能会在重新引导 ESXi 时随机更改。为确保不会发生这种情况,客户可以通过向 USB NIC 模块添加自定义参数来指定映射。
这是一个示例,我们将vusb0映射到 70:88:6b:85:c0:53 并将vusb1 映射到 58:ef:68:7f:2b:f7:
esxcli system module parameters set -p "vusb0_mac=70:88:6b:85:c0:53" -m vmkusb_nic_fling yan.lin 发表于 2022-6-7 04:13
已解决,见官方这篇文章:https://flings.vmware.com/usb-network-native-driver-for-esxi#instructions
...
上面两段命令都粘贴到 /etc/rc.local.d/local.sh 这个脚本文件中,网卡名称、mac地址见楼主文章查看,本人usb2.0网卡,亲测可用
页:
[1]
2