Bug 1918594
| Summary: | [failover vf] In the vm, the failover vf and failover virtio nic with the same MAC address have different valid IP addresses | ||||||||
|---|---|---|---|---|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 8 | Reporter: | Yanghang Liu <yanghliu> | ||||||
| Component: | virtio-win | Assignee: | ybendito | ||||||
| virtio-win sub component: | virtio-win-prewhql | QA Contact: | Yanhui Ma <yama> | ||||||
| Status: | CLOSED CURRENTRELEASE | Docs Contact: | |||||||
| Severity: | medium | ||||||||
| Priority: | medium | CC: | chayang, jinzhao, juzhang, mdean, virt-maint, vrozenfe, yalzhang, ybendito, yvugenfi | ||||||
| Version: | 8.4 | Keywords: | Triaged | ||||||
| Target Milestone: | beta | Flags: | pm-rhel:
mirror+
|
||||||
| Target Release: | 8.5 | ||||||||
| Hardware: | x86_64 | ||||||||
| OS: | Windows | ||||||||
| Whiteboard: | |||||||||
| Fixed In Version: | Doc Type: | If docs needed, set a value | |||||||
| Doc Text: | Story Points: | --- | |||||||
| Clone Of: | Environment: | ||||||||
| Last Closed: | 2021-11-16 10:00:03 UTC | Type: | --- | ||||||
| Regression: | --- | Mount Type: | --- | ||||||
| Documentation: | --- | CRM: | |||||||
| Verified Versions: | Category: | --- | |||||||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |||||||
| Cloudforms Team: | --- | Target Upstream Version: | |||||||
| Embargoed: | |||||||||
| Bug Depends On: | |||||||||
| Bug Blocks: | 1950227 | ||||||||
| Attachments: |
|
||||||||
(In reply to Yanghang Liu from comment #0) >(1) both linux vm and windows vm has this problem sometimes How Linux can have this problem? The virtio-net on Linux should immediately switch to failover mode when both VF and virtio-net come with failover=on, correct? > (3) I think it may be due to this reason: > the failover VF is started before the failvoer virtio nic during the startup > process of the vm. No, at least on Windows this does not present a problem. The VF can start before or after. If the virtio-net does not have an IP address, this is normal situation and it will be addressed soon by https://bugzilla.redhat.com/show_bug.cgi?id=1912088. Q1: Does this problem (both adapter has IP address) happen only with this specific SRIOV card or it happens with other Intel cards or with cards from other vendors? Q2: Can the problem be reproduces simply with several reboots (without installing the protocol at all)? If yes, please take a log of Windows DHCP as following: 1. enable DHCP logging: wevtutil sl Microsoft-Windows-Dhcp-Client/Operational /e:true 2. clear DHCP log: wevtutil cl Microsoft-Windows-Dhcp-Client/Operational 3. reboot 4. check whether adapters have IP addresses, like ipconfig | findstr -i ipv4 5. If the problem happened, dump dhcp events: wevtutil qe Microsoft-Windows-Dhcp-Client/Operational /f:text > dhcplog.txt Then attach the dhcplog.txt Q3: Where the DHCP server 192.168.200.254 is running in this case? Q4: Where the SRIOV adapter is connected to? As I understand you do not have 40Gb switch, correct? (In reply to ybendito from comment #1) Hi Yuri, > Q1: Does this problem (both adapter has IP address) happen only with this specific SRIOV card or it happens with other Intel cards or with cards from other vendors? According to my current test results, BCM57810(bnx2x),82599ES(ixgbe) can reproduce this problem as well. > Q2: Can the problem be reproduces simply with several reboots (without installing the protocol at all)? > If yes, please take a log of Windows DHCP as following: > 1. enable DHCP logging: wevtutil sl Microsoft-Windows-Dhcp-Client/Operational /e:true > 2. clear DHCP log: wevtutil cl Microsoft-Windows-Dhcp-Client/Operational > 3. reboot > 4. check whether adapters have IP addresses, like ipconfig | findstr -i ipv4 > 5. If the problem happened, dump dhcp events: wevtutil qe Microsoft-Windows-Dhcp-Client/Operational /f:text > dhcplog.txt > Then attach the dhcplog.txt Yes, I can reproduce this problem after several reboots. In the beginning, the VF has the IP address 169.254.x.x and virtio nic has an valid IP address After rebooting the vm a few more times, the VF and the virtio nic has an different valid IP address. The dhcplog.txt is in the attachment. > Q3: Where the DHCP server 192.168.200.254 is running in this case? > Q4: Where the SRIOV adapter is connected to? > As I understand you do not have 40Gb switch, correct? I have configured a DHCP service on our private switch(sw-h3c-s6300) whose ip address is 10.73.64.10 The XL710 is connected to this private switch and can get an IP address of 192.168.X.X I feel that this problem has nothing to do with the private switch HW env. Because 82599ES and BCM57810 can also reproduce this problem, and these two nics are connected to our public switch, and can get the IP address of 10.33.X.X. Created attachment 1751692 [details]
82599ES DHCP LOG
Created attachment 1751707 [details]
BCM57810 DHCP LOG
> (1) both linux vm and windows vm has this problem sometimes
I can use the RHEL84 vm to reproduce this problem:
Test env:
host:
4.18.0-295.el8.x86_64
qemu-kvm-5.2.0-11.module+el8.4.0+10268+62bcbbed.x86_64
guest:
4.18.0-296.el8.x86_64
Test step:
(1) start a RHEL84 vm with a failover virtio net device
the domain xml:
<interface type='bridge'>
<mac address='52:54:00:aa:1c:ef'/>
<source network='private-failover-bridge' portid='edaac19d-c908-44d8-9b66-c8ffbf311555' bridge='private_br0'/>
<target dev='vnet4'/>
<model type='virtio'/>
<teaming type='persistent'/>
<alias name='ua-test'/>
<address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
</interface>
qemu cmd line:
-netdev tap,fd=39,id=hostua-test,vhost=on,vhostfd=40 \
-device virtio-net-pci,failover=on,netdev=hostua-test,id=ua-test,mac=52:54:00:aa:1c:ef,bus=pci.1,addr=0x0 \
(2) hot-plug a failover vf into the RHEL84 vm
the domain xml:
<interface type='hostdev' managed='yes'>
<mac address='52:54:00:aa:1c:ef'/>
<driver name='vfio'/>
<source>
<address type='pci' domain='0x0000' bus='0x82' slot='0x02' function='0x0'/>
</source>
<teaming type='transient' persistent='ua-test'/>
<alias name='hostdev0'/>
<address type='pci' domain='0x0000' bus='0x07' slot='0x00' function='0x0'/>
</interface>
the qmp:
{"execute":"device_add","arguments":{"driver":"vfio-pci","host":"0000:82:02.0","id":"hostdev0","bus":"pci.7","addr":"0x0","failover_pair_id":"ua-test"},"id":"libvirt-385"}
(3) check the ip address of the failover vf and failover virtio net device in the vm
The failover vf and failover virtio nic with the same MAC address(52:54:00:aa:1c:ef) have different valid IP addresses
# ifconfig
enp1s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 <---- the virtio net device
inet 192.168.200.97 netmask 255.255.255.0 broadcast 192.168.200.255 <--- the ip address of the failover vf is 192.168.200.97
inet6 2001::d851:6ea5:7188:e22 prefixlen 64 scopeid 0x0<global>
inet6 fe80::6b98:4a67:ddc:66d prefixlen 64 scopeid 0x20<link>
ether 52:54:00:aa:1c:ef txqueuelen 1000 (Ethernet)
RX packets 79 bytes 9363 (9.1 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 129 bytes 10960 (10.7 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
enp1s0nsby: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.200.98 netmask 255.255.255.0 broadcast 192.168.200.255
inet6 fe80::f306:608:a04f:fd6f prefixlen 64 scopeid 0x20<link>
ether 52:54:00:aa:1c:ef txqueuelen 1000 (Ethernet)
RX packets 75 bytes 8543 (8.3 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 96 bytes 8926 (8.7 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
enp7s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 <--- the failover vf
inet 192.168.200.99 netmask 255.255.255.0 broadcast 192.168.200.255 <--- the ip address of the failover vf is 192.168.200.99
inet6 fe80::74b9:202f:33a0:9148 prefixlen 64 scopeid 0x20<link>
ether 52:54:00:aa:1c:ef txqueuelen 1000 (Ethernet)
RX packets 4 bytes 820 (820.0 B)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 33 bytes 2034 (1.9 KiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Additional info:
(1) This BZ can also be reproduced by directly starting the vm with the failover vf and the failover virtio net device.
Potential fix was merged upstream https://github.com/virtio-win/kvm-guest-drivers-windows/pull/563 Test env:
host:
qemu-kvm-5.2.0-15.module+el8.4.0+10650+50781ca0.x86_64
4.18.0-304.el8.x86_64
virtio-win-prewhql-0.1-198
82599ES VF driver:https://downloadcenter.intel.com/download/22283
guest:
Win10(20H2)
Windows Server 2012R2
Test step:
(1) start a Win10(20H2) vm with a failover virtio net device and a failover 82599ES VF
The domain xml:
<interface type='bridge'>
<mac address='52:54:00:aa:1c:ef'/>
<source bridge='br0'/>
<target dev='vnet0'/>
<model type='virtio'/>
<teaming type='persistent'/>
<alias name='ua-test'/>
<address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
</interface>
<interface type='hostdev' managed='yes'>
<mac address='52:54:00:aa:1c:ef'/>
<driver name='vfio'/>
<source>
<address type='pci' domain='0x0000' bus='0x06' slot='0x10' function='0x0'/>
</source>
<teaming type='transient' persistent='ua-test'/>
<alias name='hostdev0'/>
<address type='pci' domain='0x0000' bus='0x04' slot='0x00' function='0x0'/>
</interface>
The qemu cmd line:
-netdev tap,fd=39,id=hostua-test,vhost=on,vhostfd=40
-device virtio-net-pci,failover=on,netdev=hostua-test,id=ua-test,mac=52:54:00:aa:1c:ef,bus=pci.1,addr=0x0
-device vfio-pci,host=0000:06:10.0,id=hostdev0,bus=pci.4,addr=0x0,failover_pair_id=ua-test
(2)check the ip address of the failover virtio net device and the failover vf in the domain
C:\Windows\system32>ipconfig /all
Ethernet adapter Ethernet 2:
Media State . . . . . . . . . . . : Media disconnected
Connection-specific DNS Suffix . : lab.eng.pek2.redhat.com
Description . . . . . . . . . . . : Red Hat VirtIO Ethernet Adapter #2 <--- the failover virtio net device does not have any ip address
Physical Address. . . . . . . . . : 52-54-00-AA-1C-EF
DHCP Enabled. . . . . . . . . . . : Yes
Autoconfiguration Enabled . . . . : Yes
Ethernet adapter Ethernet 3:
Connection-specific DNS Suffix . : lab.eng.pek2.redhat.com
Description . . . . . . . . . . . : Intel(R) 82599 Virtual Function
Physical Address. . . . . . . . . : 52-54-00-AA-1C-EF
DHCP Enabled. . . . . . . . . . . : Yes
Autoconfiguration Enabled . . . . : Yes
IPv6 Address. . . . . . . . . . . : 2620:52:0:4920:31e7:e04:719f:2280(Preferred)
Temporary IPv6 Address. . . . . . : 2620:52:0:4920:550e:c5f5:c5ed:f9f7(Preferred)
Link-local IPv6 Address . . . . . : fe80::31e7:e04:719f:2280%5(Preferred)
IPv4 Address. . . . . . . . . . . : 10.73.33.134(Preferred) <--- the failover vf has a valid ip address
Subnet Mask . . . . . . . . . . . : 255.255.254.0
Lease Obtained. . . . . . . . . . : Wednesday, April 21, 2021 8:04:11 AM
Lease Expires . . . . . . . . . . : Wednesday, April 21, 2021 8:04:11 PM
Default Gateway . . . . . . . . . : fe80::46f4:77ff:feb7:6bc1%5
10.73.33.254
DHCP Server . . . . . . . . . . . : 10.73.2.108
DHCPv6 IAID . . . . . . . . . . . : 189944832
DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-28-11-76-89-9A-79-17-6D-EA-E6
DNS Servers . . . . . . . . . . . : 10.73.2.107
10.73.2.108
10.66.127.10
NetBIOS over Tcpip. . . . . . . . : Enabled
Hi Yuri, Could you please help check my test result in the comment 8 ? Is it expected or not ? If you need QE to do more tests to verify this bug, please feel free to let me know. BTW, could we move this bug to virtio-win based on the comments 6 and comment 7? I'd like to have more confidence that the problem was fixed: Can you please confirm that on the same pre-197 build reproduces the problem when build 197 does not? This problem can still be reproduced in the virtio-win-prewhql-0.1-196.
Test env:
host:
qemu-kvm-5.2.0-15.module+el8.4.0+10650+50781ca0.x86_64
4.18.0-304.el8.x86_64
virtio-win-prewhql-0.1-196
82599ES VF driver:https://downloadcenter.intel.com/download/22283
guest:
Win10(20H2)
The process of reproducing the bug:
(1) Start a Win10(20H2) vm with a failover virtio net device and a failover 82599ES VF
The domain xml:
<interface type='bridge'>
<mac address='52:54:00:aa:1c:ef'/>
<source bridge='br0'/>
<target dev='vnet0'/>
<model type='virtio'/>
<teaming type='persistent'/>
<alias name='ua-test'/>
<address type='pci' domain='0x0000' bus='0x01' slot='0x00' function='0x0'/>
</interface>
<interface type='hostdev' managed='yes'>
<mac address='52:54:00:aa:1c:ef'/>
<driver name='vfio'/>
<source>
<address type='pci' domain='0x0000' bus='0x06' slot='0x10' function='0x0'/>
</source>
<teaming type='transient' persistent='ua-test'/>
<alias name='hostdev0'/>
<address type='pci' domain='0x0000' bus='0x04' slot='0x00' function='0x0'/>
</interface>
The qemu cmd line:
-netdev tap,fd=39,id=hostua-test,vhost=on,vhostfd=40
-device virtio-net-pci,failover=on,netdev=hostua-test,id=ua-test,mac=52:54:00:aa:1c:ef,bus=pci.1,addr=0x0
-device vfio-pci,host=0000:06:10.0,id=hostdev0,bus=pci.4,addr=0x0,failover_pair_id=ua-test
(2) Shut down/restart the vm, then check the ip address of the failover virtio net device and the failover vf in the vm
It may have to restart/shut down the win10(20H2) vm multiple times because this bug cannot be reproduced every time,
I observed the following results after restarting the vm three times.
C:\Windows\system32>ipconfig -all
Ethernet adapter Ethernet 2:
Connection-specific DNS Suffix . : lab.eng.pek2.redhat.com
Description . . . . . . . . . . . : Red Hat VirtIO Ethernet Adapter #2
Physical Address. . . . . . . . . : 52-54-00-AA-1C-EF
DHCP Enabled. . . . . . . . . . . : Yes
Autoconfiguration Enabled . . . . : Yes
IPv6 Address. . . . . . . . . . . : 2620:52:0:4920:95c6:8c65:efcd:9620(Preferred)
Temporary IPv6 Address. . . . . . : 2620:52:0:4920:41f1:3b38:7adb:9c29(Preferred)
Link-local IPv6 Address . . . . . : fe80::95c6:8c65:efcd:9620%8(Preferred)
IPv4 Address. . . . . . . . . . . : 10.73.33.136(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.254.0
Lease Obtained. . . . . . . . . . : Friday, April 23, 2021 3:44:42 AM
Lease Expires . . . . . . . . . . : Friday, April 23, 2021 3:44:41 PM
Default Gateway . . . . . . . . . : fe80::46f4:77ff:feb7:6bc1%8
10.73.33.254
DHCP Server . . . . . . . . . . . : 10.73.2.108
DHCPv6 IAID . . . . . . . . . . . : 133467704
DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-28-10-72-28-9A-6C-17-2C-33-3C
DNS Servers . . . . . . . . . . . : 10.73.2.107
10.73.2.108
10.66.127.10
NetBIOS over Tcpip. . . . . . . . : Enabled
Ethernet adapter Ethernet 3:
Connection-specific DNS Suffix . : lab.eng.pek2.redhat.com
Description . . . . . . . . . . . : Intel(R) 82599 Virtual Function
Physical Address. . . . . . . . . : 52-54-00-AA-1C-EF
DHCP Enabled. . . . . . . . . . . : Yes
Autoconfiguration Enabled . . . . : Yes
IPv6 Address. . . . . . . . . . . : 2620:52:0:4920:20f4:1fa:36a2:8658(Preferred)
Temporary IPv6 Address. . . . . . : 2620:52:0:4920:44cd:556f:6fe7:ae20(Preferred)
Link-local IPv6 Address . . . . . : fe80::20f4:1fa:36a2:8658%5(Preferred)
IPv4 Address. . . . . . . . . . . : 10.73.33.134(Preferred)
Subnet Mask . . . . . . . . . . . : 255.255.254.0
Lease Obtained. . . . . . . . . . : Friday, April 23, 2021 3:45:06 AM
Lease Expires . . . . . . . . . . : Friday, April 23, 2021 3:38:02 PM
Default Gateway . . . . . . . . . : fe80::46f4:77ff:feb7:6bc1%5
10.73.33.254
DHCP Server . . . . . . . . . . . : 10.73.2.108
DHCPv6 IAID . . . . . . . . . . . : 139613184
DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-28-10-72-28-9A-6C-17-2C-33-3C
DNS Servers . . . . . . . . . . . : 10.73.2.107
10.73.2.108
10.66.127.10
NetBIOS over Tcpip. . . . . . . . : Enabled
Test Result Summary: (1)Test scenarios 1 : win10(20H2) vm + virtio-win-prewhql-0.1-196 The failover VF and failover virtio nic(with the same MAC address as failover VF) have different valid IP addresses in the vm (2)Test scenarios 2 : win10(20H2) vm + virtio-win-prewhql-0.1-198 The failover VF has a valid ip address while the failover virtio nic(with the same MAC address as failover VF) does not have any ip address. Hi Yuri, Is the test result acceptable to you ? Could QE verify this bug based on this test result ? If you have any other concerns, please feel free to let me know. Thanks for your help. (In reply to Yanghang Liu from comment #12) > Test Result Summary: > Thank you, this looks ok for me also. Hi, Yuri, Could you please help move the component of this bug from qemu-kvm to virtio-win, because this bug is fixed in the virtio-win-prewhql-0.1-197 ? I will directly verify this bug after this bug is in the correct component. According to comment 8, comment 11 and comment 12, move this bug status to VERIFIED. |
Description of problem: In the vm, the failover vf and failover virtio nic with the same MAC address have different valid IP addresses. Version-Release number of selected component (if applicable): host: qemu-kvm-5.2.0-3.module+el8.4.0+9499+42e58f08.x86_64 4.18.0-275.el8.dt5.x86_64 guest: en_windows_10_business_editions_version_2004_updated_may_2020_x64_dvd_aa8db2cc.iso virtio-win-prewhql-0.1-193 How reproducible: < 30% Steps to Reproduce: 1. create a bridge named private_switch on the host # nmcli connection add type ethernet ifname enp4s0f0 con-name enp4s0f0 # nmcli connection add type bridge ifname private_switch con-name private_switch stp no # nmcli connection modify "enp4s0f0" master private_switch # ifconfig ... private_switch: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.200.1 netmask 255.255.255.0 broadcast 192.168.200.255 inet6 fe80::f33:5101:25d7:4e87 prefixlen 64 scopeid 0x20<link> inet6 2001::2bc9:cea7:8133:b322 prefixlen 64 scopeid 0x0<global> ether 3c:fd:fe:15:90:a8 txqueuelen 1000 (Ethernet) RX packets 1037 bytes 120058 (117.2 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 90 bytes 11369 (11.1 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 # lshw -c network -businfo Bus info Device Class Description ======================================================== pci@0000:04:00.0 enp4s0f0 network Ethernet Controller XL710 for 40GbE QSFP+ pci@0000:04:00.1 enp4s0f1 network Ethernet Controller XL710 for 40GbE QSFP+ 2. create a VF # echo 1 > /sys/bus/pci/devices/0000\:04\:00.0/sriov_numvfs 3. install and import a win10 domain virt-install --machine=q35 --noreboot --name=win10 --memory=4096 --vcpus=4 --graphics type=vnc,port=5910,listen=0.0.0.0 --import --noautoconsole --disk path=/home/images/win10.qcow2,bus=virtio,cache=none,format=qcow2,io=threads,size=20 4. add the failover vf xml and virtio net device xml in this win10 domain xml and then start the domain device xml: <interface type='bridge'> <mac address='f4:8e:38:c3:84:84'/> <source bridge='private_switch'/> <target dev='vnet0'/> <model type='virtio'/> <teaming type='persistent'/> <alias name='net0'/> </interface> <interface type='hostdev' managed='yes'> <mac address='f4:8e:38:c3:84:84'/> <driver name='vfio'/> <source> <address type='pci' domain='0x0000' bus='0x04' slot='0x02' function='0x0'/> </source> <teaming type='transient' persistent='net0'/> <alias name='hostdev0'/> </interface> device qemu cmd line: -netdev tap,fd=39,id=hostnet0,vhost=on,vhostfd=40 \ -device virtio-net-pci,failover=on,netdev=hostnet0,id=net0,mac=f4:8e:38:c3:84:84,bus=pci.1,addr=0x0 \ -device vfio-pci,host=0000:04:02.0,id=hostdev0,bus=pci.4,addr=0x0,failover_pair_id=net0 \ 5. check the ip address of the failover virtio nic and the failover nic in the domain C:\Windows\system32>ipconfig /all ... Ethernet adapter Ethernet 8: Connection-specific DNS Suffix . : Description . . . . . . . . . . . : Intel(R) Ethernet Virtual Function 700 Series Physical Address. . . . . . . . . : F4-8E-38-C3-84-84 DHCP Enabled. . . . . . . . . . . : Yes Autoconfiguration Enabled . . . . : Yes IPv6 Address. . . . . . . . . . . : 2001::bd8c:42e1:ff38:6b20(Preferred) Temporary IPv6 Address. . . . . . : 2001::91d1:be83:99cc:c158(Preferred) Link-local IPv6 Address . . . . . : fe80::bd8c:42e1:ff38:6b20%13(Preferred) IPv4 Address. . . . . . . . . . . : 192.168.200.230(Preferred) Subnet Mask . . . . . . . . . . . : 255.255.255.0 Lease Obtained. . . . . . . . . . : Thursday, January 21, 2021 4:53:14 AM Lease Expires . . . . . . . . . . : Friday, January 22, 2021 4:53:14 AM Default Gateway . . . . . . . . . : fe80::b2f9:63ff:feb8:6d37%13 192.168.200.254 DHCP Server . . . . . . . . . . . : 192.168.200.254 DHCPv6 IAID . . . . . . . . . . . : 284462648 DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-27-95-FB-F3-9A-7F-BD-26-D1-60 DNS Servers . . . . . . . . . . . : 192.168.200.253 NetBIOS over Tcpip. . . . . . . . : Enabled Ethernet adapter Ethernet 7: Connection-specific DNS Suffix . : Description . . . . . . . . . . . : Red Hat VirtIO Ethernet Adapter #4 Physical Address. . . . . . . . . : F4-8E-38-C3-84-84 DHCP Enabled. . . . . . . . . . . : Yes Autoconfiguration Enabled . . . . : Yes IPv6 Address. . . . . . . . . . . : 2001::946b:a7d9:978a:c1c1(Preferred) Temporary IPv6 Address. . . . . . : 2001::5c40:83d1:aa2b:3f38(Preferred) Link-local IPv6 Address . . . . . : fe80::946b:a7d9:978a:c1c1%11(Preferred) IPv4 Address. . . . . . . . . . . : 192.168.200.231(Preferred) Subnet Mask . . . . . . . . . . . : 255.255.255.0 Lease Obtained. . . . . . . . . . : Thursday, January 21, 2021 4:54:21 AM Lease Expires . . . . . . . . . . : Friday, January 22, 2021 4:54:21 AM Default Gateway . . . . . . . . . : fe80::b2f9:63ff:feb8:6d37%11 192.168.200.254 DHCP Server . . . . . . . . . . . : 192.168.200.254 DHCPv6 IAID . . . . . . . . . . . : 217353784 DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-27-95-FB-F3-9A-7F-BD-26-D1-60 DNS Servers . . . . . . . . . . . : 192.168.200.253 NetBIOS over Tcpip. . . . . . . . : Enabled 6.Download the virtio-win-prewhql package in the Win10 vm and install the VIOPROT protocol # cd virtio-win-prewhql-0.1.193\Win10\amd64 # netcfg -v -l vioprot.inf -c p -i VIOPROT 7. check the network status in the vm # ipconfig -all Ethernet adapter Ethernet 7: Connection-specific DNS Suffix . : Description . . . . . . . . . . . : Red Hat VirtIO Ethernet Adapter #4 Physical Address. . . . . . . . . : F4-8E-38-C3-84-84 DHCP Enabled. . . . . . . . . . . : Yes Autoconfiguration Enabled . . . . : Yes IPv6 Address. . . . . . . . . . . : 2001::946b:a7d9:978a:c1c1(Preferred) Temporary IPv6 Address. . . . . . : 2001::9577:189f:bba7:cc54(Preferred) Link-local IPv6 Address . . . . . : fe80::946b:a7d9:978a:c1c1%11(Preferred) IPv4 Address. . . . . . . . . . . : 192.168.200.235(Preferred) Subnet Mask . . . . . . . . . . . : 255.255.255.0 Lease Obtained. . . . . . . . . . : Thursday, January 21, 2021 6:58:42 AM Lease Expires . . . . . . . . . . : Friday, January 22, 2021 6:58:42 AM Default Gateway . . . . . . . . . : fe80::b2f9:63ff:feb8:6d37%11 192.168.200.254 DHCP Server . . . . . . . . . . . : 192.168.200.254 DHCPv6 IAID . . . . . . . . . . . : 217353784 DHCPv6 Client DUID. . . . . . . . : 00-01-00-01-27-95-FB-F3-9A-7F-BD-26-D1-60 DNS Servers . . . . . . . . . . . : 192.168.200.253 NetBIOS over Tcpip. . . . . . . . : Enabled ping the ip address of the swich on the host successfully ping the ip address of other host which is in the same network successfully Actual results: the failover vf and failover virtio nic with the same MAC address have different valid IP addresses Expected results: After starting the Win10 vm, the failover vf should have the IP address 169.254.x.x and the failover virtio nic should have the valid IP address. Additional info: (1) both linux vm and windows vm has this problem sometimes. (2) Download the driver of VF in Win10 vm from https://downloadcenter.intel.com/download/22283 (3) I think it may be due to this reason: the failover VF is started before the failvoer virtio nic during the startup process of the vm.