kvm已经设置桥接网卡的虚拟机无法连接宿主机?
问题描述:
我在一台centos的系统中安装了kvm虚拟机。
现在所有的虚拟机都使用了桥接模式连接网络,并且都可以正常连接外网,相互之间也能正常通信。但是使用过程中发现宿主机无法连接虚拟机。
假定宿主机是A,里面的虚拟机是B、C、D
现在A连接BCD均不通,BCD之间正常通信。
想知道是什么原因导致的的宿主机不能连接虚拟机?
宿主机环境:
防火墙已经关闭
CentOS Linux release 7.5.1804 (Core)
libvirtd (libvirt) 4.5.0
[root@localhost ~]# netstat -rn
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 192.168.2.1 0.0.0.0 UG 0 0 0 enp1s0f0
172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0
172.18.0.0 0.0.0.0 255.255.0.0 U 0 0 0 br-ddf29c2d2cf2
192.168.2.0 0.0.0.0 255.255.255.0 U 0 0 0 enp1s0f0
192.168.100.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr1
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
虚拟机环境:
防火墙已经关闭
设置网络均为桥接:
<interface type='direct'>
<mac address='52:54:00:bb:dd:dd'/>
<source dev='enp1s0f0' mode='bridge'/>
<model type='virtio'/>
<address type='pci' domain='0x0000' bus='0x00' slot='0x03' function='0x0'/>
</interface>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这个问题到现在已经解决了
问题出在interface的配置上,我这里的type是direct,字面意思是直通的接口,而不是桥接的接口。
最后,我觉得正确的网络配置不应该是直接写在虚拟机配置文件中,应该是单独创建一个虚拟机网络,然后再在虚拟机机中指定一个netwrok。
具体netwrok的配置说明,可以看官方的文档,有详细的例子。
==========
20220726 补充
我当时提的这个问题其实不算是一个问题,只是当时弄错了这个配置
虚拟机的interface网络接口,type 为 direct
这里我误以为这个配置是我理解的“桥接”,实际上并不是一般意义上的“桥接”。
Direct attachment to physical interface
如果要配置kvm的网络,应该这么配置
需要参考libvirt的文档
libvirt关于网络配置的说明
openEuler管理员指南里面关于KVM的配置说明
===
如果要创建桥接网络的话,讲一下大致流程,有些也记不太清楚了,因为已经有好一段时间没接触kvm了。
===
network的配置如下:
说明
===