virt-manager를 사용하여 VM을 실행할 때 네트워크 중단의 원인은 무엇입니까?

virt-manager를 사용하여 VM을 실행할 때 네트워크 중단의 원인은 무엇입니까?

저는 을 처음 사용하기 virt-manager때문에 qemu사용법 libvirt을 거의 모릅니다. 저는 virt-managerVirtualBox(VBoxManage 포함)에서 KVM으로 더 쉽게 전환할 수 있도록 의 GUI를 사용합니다.

지금까지 GUI를 사용하여 가상 머신을 만드는 방법을 알고 있지만 큰 문제가 있습니다. VM이 시작되면 호스트와 게스트의 네트워크 연결이 끊어집니다.

NAT이든 브리지이든 상관없이 VM이 시작되면 호스트나 게스트에 대한 네트워크가 없습니다. VM이 실행되는 동안에는 웹을 탐색하여 해결책을 찾을 수 없습니다. VM을 종료해야 네트워크가 복원됩니다.

journalctl -r나는 (와 ) 에 가서 sudo그 원인이 무엇인지 알아보았습니다. 저는 Journalctl의 출력을 잘 이해하지 못해서 여기에 공유합니다. 누군가 내 로그에서 문제를 찾을 수 있을까요?

Apr 20 19:01:41 myuser systemd[1]: NetworkManager-dispatcher.service: Deactivated successfully.
Apr 20 19:01:32 myuser kernel: audit: type=1400 audit(1713628892.242:110): apparmor="STATUS" operation="profile_remove" profile="unconfined" name="libvirt-92b7cf2e-326>
Apr 20 19:01:32 myuser audit[59392]: AVC apparmor="STATUS" operation="profile_remove" profile="unconfined" name="libvirt-92b7cf2e-3262-4f04-ad63-37d5e4d94b70" pid=5939>
Apr 20 19:01:32 myuser connmand[1102]: virbr1 {newlink} index 7 operstate 2 <DOWN>
Apr 20 19:01:32 myuser connmand[1102]: virbr1 {newlink} index 7 address 52:54:00:6B:A6:9E mtu 1500
Apr 20 19:01:32 myuser connmand[1102]: virbr1 {update} flags 4099 <UP>
Apr 20 19:01:32 myuser connmand[1102]: virbr1 {TX} 28 packets 3938 bytes
Apr 20 19:01:32 myuser connmand[1102]: virbr1 {RX} 40 packets 3476 bytes
Apr 20 19:01:32 myuser connmand[1102]: vnet2 {dellink} index 8 operstate 2 <DOWN>
Apr 20 19:01:32 myuser connmand[1102]: virbr1 {newlink} index 7 operstate 6 <UP>
Apr 20 19:01:32 myuser connmand[1102]: virbr1 {newlink} index 7 address 52:54:00:6B:A6:9E mtu 1500
Apr 20 19:01:32 myuser connmand[1102]: virbr1 {update} flags 4163 <UP,RUNNING>
Apr 20 19:01:32 myuser connmand[1102]: virbr1 {TX} 28 packets 3938 bytes
Apr 20 19:01:32 myuser connmand[1102]: virbr1 {RX} 40 packets 3476 bytes
Apr 20 19:01:32 myuser connmand[1102]: Remove interface (null) [ ethernet ]
Apr 20 19:01:32 myuser connmand[1102]: (null) {remove} index 8
Apr 20 19:01:32 myuser connmand[1102]: vnet2 {dellink} index 8 operstate 2 <DOWN>
Apr 20 19:01:32 myuser connmand[1102]: vnet2 {newlink} index 8 operstate 2 <DOWN>
Apr 20 19:01:32 myuser connmand[1102]: vnet2 {newlink} index 8 address FE:54:00:DB:3A:50 mtu 1500
Apr 20 19:01:32 myuser connmand[1102]: (null) {del} address 169.254.64.167/16 label vnet2
Apr 20 19:01:32 myuser connmand[1102]: vnet2 {newlink} index 8 operstate 2 <DOWN>
Apr 20 19:01:32 myuser connmand[1102]: vnet2 {newlink} index 8 address FE:54:00:DB:3A:50 mtu 1500
Apr 20 19:01:32 myuser connmand[1102]: (null) {del} route fe80:: gw :: scope 0 <UNIVERSE>
Apr 20 19:01:32 myuser connmand[1102]: Removing default interface route failed (No such device)
Apr 20 19:01:32 myuser connmand[1102]: Removing default interface route failed (No such device)
Apr 20 19:01:32 myuser connmand[1102]: vnet2 {newlink} index 8 operstate 2 <DOWN>
Apr 20 19:01:32 myuser connmand[1102]: vnet2 {newlink} index 8 address FE:54:00:DB:3A:50 mtu 1500
Apr 20 19:01:32 myuser systemd-machined[935]: Machine qemu-3-linux2022 terminated.
Apr 20 19:01:32 myuser systemd[1]: machine-qemu\x2d3\x2dlinux2022.scope: Consumed 22.066s CPU time.
Apr 20 19:01:32 myuser systemd[1]: machine-qemu\x2d3\x2dlinux2022.scope: Deactivated successfully.
Apr 20 19:01:31 myuser systemd[1]: Started NetworkManager-dispatcher.service - Network Manager Script Dispatcher Service.
Apr 20 19:01:31 myuser dbus-daemon[928]: [system] Successfully activated service 'org.freedesktop.nm_dispatcher'
Apr 20 19:01:31 myuser systemd[1]: Starting NetworkManager-dispatcher.service - Network Manager Script Dispatcher Service...
Apr 20 19:01:31 myuser dbus-daemon[928]: [system] Activating via systemd: service name='org.freedesktop.nm_dispatcher' unit='dbus-org.freedesktop.nm-dispatcher.service>
Apr 20 19:01:31 myuser NetworkManager[1101]: <info>  [1713628891.9478] device (vnet2): released from master device virbr1
Apr 20 19:01:31 myuser NetworkManager[1101]: <info>  [1713628891.9474] device (vnet2): state change: activated -> unmanaged (reason 'unmanaged', sys-iface-state: 'remo>
Apr 20 19:01:31 myuser avahi-daemon[925]: Withdrawing address record for 169.254.64.167 on vnet2.
Apr 20 19:01:31 myuser avahi-daemon[925]: Withdrawing address record for fe80::fc54:ff:fedb:3a50 on vnet2.
Apr 20 19:01:31 myuser avahi-daemon[925]: Leaving mDNS multicast group on interface vnet2.IPv4 with address ***.***.**.***.
Apr 20 19:01:31 myuser avahi-daemon[925]: Interface vnet2.IPv4 no longer relevant for mDNS.
Apr 20 19:01:31 myuser connman-vpnd[927]: virbr1 {newlink} index 7 operstate 2 <DOWN>
Apr 20 19:01:31 myuser connman-vpnd[927]: virbr1 {newlink} index 7 address 52:54:00:6B:A6:9E mtu 1500
Apr 20 19:01:31 myuser connman-vpnd[927]: virbr1 {update} flags 4099 <UP>
Apr 20 19:01:31 myuser connman-vpnd[927]: vnet2 {dellink} index 8 operstate 2 <DOWN>
Apr 20 19:01:31 myuser connman-vpnd[927]: virbr1 {newlink} index 7 operstate 6 <UP>
Apr 20 19:01:31 myuser connman-vpnd[927]: virbr1 {newlink} index 7 address 52:54:00:6B:A6:9E mtu 1500
Apr 20 19:01:31 myuser connman-vpnd[927]: virbr1 {update} flags 4163 <UP,RUNNING>
Apr 20 19:01:31 myuser kernel: virbr1: port 1(vnet2) entered disabled state
Apr 20 19:01:31 myuser kernel: device vnet2 left promiscuous mode
Apr 20 19:01:31 myuser connman-vpnd[927]: vnet2 {remove} index 8
Apr 20 19:01:31 myuser connman-vpnd[927]: vnet2 {dellink} index 8 operstate 2 <DOWN>
Apr 20 19:01:31 myuser connman-vpnd[927]: vnet2 {newlink} index 8 operstate 2 <DOWN>
Apr 20 19:01:31 myuser connman-vpnd[927]: vnet2 {newlink} index 8 address FE:54:00:DB:3A:50 mtu 1500
Apr 20 19:01:31 myuser connman-vpnd[927]: vnet2 {newlink} index 8 operstate 2 <DOWN>
Apr 20 19:01:31 myuser kernel: virbr1: port 1(vnet2) entered disabled state
Apr 20 19:01:31 myuser connman-vpnd[927]: vnet2 {newlink} index 8 address FE:54:00:DB:3A:50 mtu 1500

의 영역 libvirt에서 활성화했습니다 : , 심지어 . 작동하지 않는 것 같습니다.firewalldhometrustedpublic

Debian 12.5(Bookworm), LXQt 데스크탑 GUI 사용

업데이트:VM의 네트워크를 "격리"로 설정하면 VM에 네트워크가 없을 수도 있지만 호스트의 네트워크는 작동합니다. 격리되지 않은 네트워크에서 발생합니다.

업데이트 2:중지했는데 firewalld도움이 되지 않았으므로 방화벽 문제는 아닙니다.

이 문제를 해결하도록 도와주세요. 감사합니다


@AB에 대한 응답 -

업데이트됨 - VM이 켜져 있는 경우(호스트)*:

$ sudo bash -c "ip link; ip -br addr; ip route; ip rule; ip neigh"
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN mode DEFAULT group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
2: enp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP mode DEFAULT group default qlen 1000
    link/ether 10:7b:44:93:7e:60 brd ff:ff:ff:ff:ff:ff
3: enx00e04c6802a7: <NO-CARRIER,BROADCAST,MULTICAST,DYNAMIC,UP> mtu 1500 qdisc fq_codel state DOWN mode DEFAULT group default qlen 1000
    link/ether 00:e0:4c:68:02:a7 brd ff:ff:ff:ff:ff:ff
5: virbr0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP mode DEFAULT group default qlen 1000
    link/ether 52:54:00:3a:4a:9b brd ff:ff:ff:ff:ff:ff
6: vnet0: <BROADCAST,MULTICAST,DYNAMIC,UP,LOWER_UP> mtu 1500 qdisc noqueue master virbr0 state UNKNOWN mode DEFAULT group default qlen 1000
    link/ether fe:54:00:d6:4a:49 brd ff:ff:ff:ff:ff:ff
lo               UNKNOWN        127.0.0.1/8 ::1/128 
enp3s0           UP             192.168.1.9/24 fe80::127b:44ff:fe93:7e60/64 
enx00e04c6802a7  DOWN           
virbr0           UP             192.168.100.1/24 
vnet0            UNKNOWN        169.254.149.177/16 fe80::fc54:ff:fed6:4a49/64 
0.0.0.0 dev vnet0 scope link 
default dev vnet0 scope link 
169.254.0.0/16 dev vnet0 proto kernel scope link src 169.254.149.177 
192.168.1.0/24 dev enp3s0 proto kernel scope link src 192.168.1.9 
192.168.1.1 dev enp3s0 scope link 
192.168.100.0/24 dev virbr0 proto kernel scope link src 192.168.100.1 
0:      from all lookup local
32766:  from all lookup main
32767:  from all lookup default
192.168.1.6 dev enp3s0 lladdr 00:00:c0:34:14:db STALE 
192.168.100.202 dev virbr0 lladdr 52:54:00:d6:4a:49 STALE 
192.168.1.1 dev enp3s0 lladdr 74:da:88:d6:c8:e6 STALE 
198.252.206.25 dev vnet0 FAILED 
192.168.1.5 dev enp3s0 lladdr 50:eb:f6:24:85:a6 STALE 
fe80::76da:88ff:fed6:c8e6 dev enp3s0 lladdr 74:da:88:d6:c8:e6 router STALE 
fe80::9c7a:f1bb:ca7f:4c1e dev enp3s0 lladdr 50:eb:f6:24:85:a6 STALE 
$ sudo systemctl stop firewalld.service && sudo nft list ruleset
table ip filter {
}
table ip nat {
}
table ip mangle {
}
table ip6 filter {
}
table ip6 nat {
}
table ip6 mangle {
}
$ sudo cat /etc/resolv.conf
# Generated by resolvconf
nameserver 192.168.1.1
  • 내가 말했듯이 - 게스트에 데비안을 설치하는 동안 터미널이 없습니다(또는 액세스하는 방법을 모릅니다). 그래서 게스트로부터 정보를 제공할 수 없습니다.

답변1

@AB의 도움으로 문제가 무엇인지 알아냈습니다. 그리고... 해결 방법도 알아냈습니다!

connmandAB는 나에게 및 NM(NetworkManager) 를 모두 사용하는 방법에 대한 힌트를 주었습니다 . 나는 문제를 조사하기 시작했고, 내 장치/인터페이스( ) 가 (LXQt GUI의 일부인)을 통해 제어되는 동안 네트워킹에 Virt-manager사용하고 있음 을 발견했습니다 .NMenp3s0connmand

그래서 나는 다음을 수행했습니다.

  1. NetworkManager를 사용하여 장치를 활성화하기로 결정했습니다. NM내 장치가 "엄격히 관리되지 않음"이라고 말했기 때문에 내 장치를 에서 해제하기로 결정했습니다 connman. 복잡했어요. 가능한 모든 디렉토리(및 ) find에 대해 명령을 실행했지만 내 장치와 관련된 항목을 찾지 못했습니다.connman/var/lib/etc
  2. NM나는 님의 디렉토리를 찾기로 결정했습니다 . 아마도 거기에 구성되어 있지 않을까요? 내가 그럴 수 없다는 것을 알았을 때:
  3. 나는 하기로 결정했다.멈추다그리고장애를 입히다 connmand잠시 동안. 하지만 아직 Virt-manager까지 이 장치를 사용할 수 없었습니다.
  4. 그래서 극단적으로 갔죠 -나는 을(를) connman*영원히 제거했습니다., 로 이동했습니다 NM.
  5. 여전히 작동하지 않았지만 괜찮았습니다. 일단 파일에서 장치에 주석을 달고 /etc/network/interfaces( NM의 도움으로 sudo nmcli device set enp3s0 managed true) 장치를 제어하고 마침내 NM.
  6. 재부팅(Windows 이후로 익숙했기 때문에 그럴 필요는 없었지만) 이제 클라이언트와 호스트 모두에 네트워크가 있습니다!

관련 정보