[Feedback on issues] 升级到25.0.9后 kvm虚拟机中dp25.0.8无法连接网络 Resolved
Tofloor
poster avatar
我是昵称
deepin
2025-10-30 20:04
Author

系统环境

宿主机器:deepin v25.0.9
kvm虚拟机器:deepin v25.0.8

问题描述

kvm虚拟机器无法连接网络,宿主机器在升级前是25.0.7版本,升级前kvm虚拟机器还能连网。

网卡驱动:virtio

1761825223155.png

1761825709279.png

Reply Favorite View the author
All Replies
kookboy
deepin
2025-10-30 20:11
#1

你是有线和无线同时用?只用一种试试

Reply View the author
我是昵称
deepin
2025-10-30 20:19
#2
kookboy

你是有线和无线同时用?只用一种试试

没有无线

Reply View the author
森林的天空
deepin
2025-10-30 21:34
#3

我遇到过kvm网络瘫痪的问题有两次。

一次是修改virtual-manager中的网络池,导致libvirt管理的那个桥接的网络没有起来,再改回去桥接没有起来,虚拟机获取不到ip,如果是这种,先net-start 一下,看看net-port-list下有没有虚拟机网卡的信息。

还有一次就是装了个docker,修改了docker中的netwok,居然把kvm网络挂了,花了好久才发现问题,是docker调用的iptable,把kvm的网络给drop了。

Reply View the author
森林的天空
deepin
2025-10-30 21:54
#4

正常nat模式下,是能看到一个virbrx的虚拟接口,还有一个vnet x的虚拟机网卡,

特别是brctl show,能看到virbrx的接口与vnetx的虚拟机网卡对应的

如果看不到virbrx的接口,大概率是网络池没有起来,在virsh模式下,看看net-list ,看看网络池有没有起来

如果能看到virbrx的接口,看不到vnetx的接口,大概率是虚拟机的接口出问题了

看看net-port-list中,看看有没有对应的网卡uuid,如果没有,那去虚拟机里看

image.png

image.png

Reply View the author
我是昵称
deepin
2025-10-31 09:32
#5
森林的天空

正常nat模式下,是能看到一个virbrx的虚拟接口,还有一个vnet x的虚拟机网卡,

特别是brctl show,能看到virbrx的接口与vnetx的虚拟机网卡对应的

如果看不到virbrx的接口,大概率是网络池没有起来,在virsh模式下,看看net-list ,看看网络池有没有起来

如果能看到virbrx的接口,看不到vnetx的接口,大概率是虚拟机的接口出问题了

看看net-port-list中,看看有没有对应的网卡uuid,如果没有,那去虚拟机里看

image.png

image.png

sudo virsh net-list
 名称      状态   自动开始   持久
-----------------------------------
 default   活动   是         是
sudo virsh net-port-list default 
 UUID
---------------------------------------
 b2704520-e42b-48b6-98a0-2f88e25e173c
sudo virsh dumpxml 2 | rg interface -A 6
    
      
      
      
      
      
      
nmcli device DEVICE TYPE STATE CONNECTION enp0s31f6 ethernet 已连接 Wired Connection lo loopback 连接(外部) lo docker0 bridge 连接(外部) docker0 virbr0 bridge 连接(外部) virbr0 vnet1 tun 连接(外部) vnet1 wlx485f084fca76 wifi 已断开 -- nmcli device DEVICE TYPE STATE CONNECTION enp0s31f6 ethernet 已连接 Wired Connection lo loopback 连接(外部) lo docker0 bridge 连接(外部) docker0 virbr0 bridge 连接(外部) virbr0 vnet1 tun 连接(外部) vnet1 wlx485f084fca76 wifi 已断开 -- brctl show bridge name bridge id STP enabled interfaces docker0 8000.02423a473e15 no virbr0 8000.525400321f42 yes vnet1 sudo virsh net-dumpxml default default 109b9d2e-1ff0-4bbc-b690-9e57dc75a71d
Reply View the author
我是昵称
deepin
2025-10-31 09:41
#6

image.png

Reply View the author
我是昵称
deepin
2025-10-31 09:48
#7

应该是dhcp出问题了,配置静态地址就好了

image.png

Reply View the author
森林的天空
deepin
2025-10-31 10:32
#8

搞定就好,最近在学习docker,发现docker与kvm的网络故障排查都是一个套路,先判断是局部问题(虚拟机)还是全局问题(物理机);

虚拟机操作系统层面:虚拟机就是通过虚拟机的nmcli 、ip 去排查;

virsh模式:通过domif(前提是虚拟机安装qemu-guest-agent)、net开头的命令去排查;

物理机层面:通过nmcli、brctl、ip 、dns、dhcp等去排查

我折腾了半个小时,在豆包的给力支持下才学的一知半解。

Reply View the author
我是昵称
deepin
2025-10-31 12:02
#9
我是昵称

应该是dhcp出问题了,配置静态地址就好了

image.png

感觉哪里还有隐患,有空再排查下

Reply View the author
笑看风云
deepin
2025-11-01 22:45
#10

哪位大神发个 kvm 安装调试的详细教程

Reply View the author