重要なアップデート:

重要なアップデート:

virt-managerのすべてのデフォルト設定とネットワークタイプNATで作成されたUbuntu QEMU / KVMゲストはそのネットワークを有効にできません。私のホストはFedora 35です。以下は、ゲストのNetworkManagerログスクリーンショットです。

ゲストVMネットワーク管理者ログ

以下は、デバイス設定のvirt-managerのNICタブにあるXML設定です。

<interface type="network">
  <mac address="redacted but present"/>
  <source network="default" portid="redacted but present" bridge="virbr0"/>
  <target dev="vnet2"/>
  <model type="virtio"/>
  <alias name="net0"/>
  <address type="pci" domain="0x0000" bus="0x01" slot="0x00" function="0x0"/>
</interface>

virt-managerの仮想ネットワークXMLは次のとおりです。

<network connections="2">
  <name>default</name>
  <uuid>redacted but present</uuid>
  <forward mode="nat">
    <nat>
      <port start="1024" end="65535"/>
    </nat>
  </forward>
  <bridge name="virbr0" stp="on" delay="0"/>
  <mac address="redacted but present"/>
  <ip address="192.168.122.1" netmask="255.255.255.0">
    <dhcp>
      <range start="192.168.122.2" end="192.168.122.254"/>
    </dhcp>
  </ip>
</network>

virshネットワークリスト - すべて

 Name      State    Autostart   Persistent
--------------------------------------------
 default   active   yes         yes

brctl表示

bridge name bridge id       STP enabled interfaces
virbr0      redacted    yes     

ip -br リンクの表示

lo               UNKNOWN        00:00:00:00:00:00 <LOOPBACK,UP,LOWER_UP>
enp34s0          UP             redacted <BROADCAST,MULTICAST,UP,LOWER_UP>
virbr0           DOWN           redacted <NO-CARRIER,BROADCAST,MULTICAST,UP>
wg-mullvad       UNKNOWN        <POINTOPOINT,UP,LOWER_UP>

nmcli 接続の表示 --active

NAME                UUID                                  TYPE       DEVICE
Wired connection 1  redacted  ethernet   enp34s0
virbr0              redacted  bridge     virbr0
wg-mullvad          redacted  wireguard  wg-mullvad

systemctl 状態 libvirtd

○ libvirtd.service - Virtualization daemon
     Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; disabled; vendor preset: disabled)
     Active: inactive (dead) since Mon 2022-04-04 05:13:01; 1min 40s ago
TriggeredBy: ○ libvirtd-tls.socket
             ● libvirtd-admin.socket
             ○ libvirtd-tcp.socket
             ● libvirtd.socket
             ● libvirtd-ro.socket
       Docs: man:libvirtd(8)
             https://libvirt.org
    Process: 36276 ExecStart=/usr/sbin/libvirtd $LIBVIRTD_ARGS (code=exited, status=0/SUCCESS)
   Main PID: 36276 (code=exited, status=0/SUCCESS)
        CPU: 439ms

Apr 04 05:12:49 host systemd[1]: Starting Virtualization daemon...
Apr 04 05:12:49 host systemd[1]: Started Virtualization daemon.
Apr 04 05:13:01 host systemd[1]: Stopping Virtualization daemon...
Apr 04 05:13:01 host systemd[1]: libvirtd.service: Deactivated successfully.
Apr 04 05:13:01 host systemd[1]: Stopped Virtualization daemon.
[user@host ~]$ sudo systemctl status libvirtd
○ libvirtd.service - Virtualization daemon
     Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; disabled; vendor preset: disabled)
     Active: inactive (dead) since Mon 2022-04-04 05:13:01; 2min 1s ago
TriggeredBy: ○ libvirtd-tls.socket
             ● libvirtd-admin.socket
             ○ libvirtd-tcp.socket
             ● libvirtd.socket
             ● libvirtd-ro.socket
       Docs: man:libvirtd(8)
             https://libvirt.org
    Process: 36276 ExecStart=/usr/sbin/libvirtd $LIBVIRTD_ARGS (code=exited, status=0/SUCCESS)
   Main PID: 36276 (code=exited, status=0/SUCCESS)
        CPU: 439ms

Apr 04 05:12:49 host systemd[1]: Starting Virtualization daemon...
Apr 04 05:12:49 host systemd[1]: Started Virtualization daemon.
Apr 04 05:13:01 host systemd[1]: Stopping Virtualization daemon...
Apr 04 05:13:01 host systemd[1]: libvirtd.service: Deactivated successfully.
Apr 04 05:13:01 host systemd[1]: Stopped Virtualization daemon

systemctl - 失敗

  UNIT                  LOAD   ACTIVE SUB    DESCRIPTION
● nvidia-powerd.service loaded failed failed nvidia-powerd service

これまでに試したこと:

  • 次のパッケージがインストールされていることを確認しました。 qemu dhclient netcat virt-viewer libvirt dnsmasq dmidecode ebtables virt-install virt-managerbridge-utils
  • virshでネットワーク「default」が起動していることを確認してください。
  • ファイアウォールがインストールされ実行されていることを確認してください。
  • Firewall-cmd get-active-zonesを使用して、virbr0がlibvirt領域にあることを確認してください。

重要なアップデート:

さらなるトラブルシューティングにより、私が使用していたVPNが問題を引き起こすことがわかりました。 VPNを無効にして仮想マシンを起動すると、ネットワークとインターネットに接続できます。私のVPNアプリケーションはMulvadと呼ばれ、Wireguardプロトコルを使用しています。仮想マシンがVPNを介してインターネットに接続できるようにするにはどうすればよいですか?

答え1

問題は、VPNを使用しているときに「ローカルネットワーク共有を許可する」設定が有効になっていないことです。有効にするだけです。

答え2

転送を有効にする

sysctl net.ipv4.ip_forward=1

役に立つかもしれません。

関連情報