Emuluj odłączanie kabla sieciowego za pomocą qemu-kvm


22

[Tło: Chciałbym faktycznie przetestować Jak usunąć statyczny interfejs sieciowy, gdy nie jest podłączony? ]

Konfiguruję maszynę wirtualną QEMU-KVM przy użyciu libvirt (via virt-manager). Umieściłem na nim dwie karty sieciowe (oba virtio). Są one połączone z fizyczną kartą sieciową na hoście.

Chcę przetestować działanie NetworkManagera, gdy go „odłączę”. Ale nie ma przycisku / pola wyboru w virt-manager, ani szybkie wyszukiwanie Google niczego nie pokazuje.

Jak emulować odłączenie kabla sieciowego?


virt-manager nie jest najlepszym GUI, jakie kiedykolwiek stworzono ...
Hauke ​​Laging

@HaukeLaging to zdecydowanie prawda!
derobert

Odpowiedzi:


27

Możesz to zrobić w konsoli za pomocą:

virsh domif-setlink domain interface-device state

I sprawdź jego status za pomocą:

virsh domifstat domain interface-device

Możesz zobaczyć interfejsy sieciowe skonfigurowane z:

virsh domifaddr domain

Szczegółowe informacje można znaleźć na stronie podręcznika użytkownika.


Oto przykład typowego przepływu pracy:

$ sudo virsh list
 Id    Name                           State
----------------------------------------------------
 24    ubuntu17.10                    running

$ sudo virsh domifaddr ubuntu17.10
 Name       MAC address          Protocol     Address
-------------------------------------------------------------------------------
 vnet0      52:54:00:d0:76:cb    ipv4         192.168.122.183/24

$ sudo virsh domif-getlink ubuntu17.10 vnet0
vnet0 up
$ sudo virsh domif-setlink ubuntu17.10 vnet0 down
Device updated successfully

$ sudo virsh domif-getlink ubuntu17.10 vnet0
vnet0 down
gerlos@mediavault[20:53]:~$ sudo virsh domif-setlink ubuntu17.10 vnet0 up  
Device updated successfully

gerlos@mediavault[20:53]:~$ sudo virsh domif-getlink ubuntu17.10 vnet0
vnet0 up

Wersja Virsha, którą mam na mojej dystrybucji, jest dość stara (1.2.2) i nie ma domifaddrpolecenia. domiflistZamiast tego musiałem użyć .
Lacek

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.