微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

ovirt 集群中的 kvm 桥接网络

如何解决ovirt 集群中的 kvm 桥接网络

您好,我正在使用 virt_install 来运行我的 vm 实例,其类型为 kvm 和网桥 br0 这是我的设置:

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNowN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: ens3: <broADCAST,MULTICAST,LOWER_UP> mtu 1500 qdisc mq master br0 state UP group default qlen 1000
    link/ether 56:6f:b9:ae:00:1d brd ff:ff:ff:ff:ff:ff
4: docker0: <NO-CARRIER,broADCAST,UP> mtu 1500 qdisc noqueue state DOWN group default 
    link/ether 02:42:6e:07:7d:32 brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
       valid_lft forever preferred_lft forever
8: br0: <broADCAST,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
    link/ether 56:6f:b9:ae:00:1d brd ff:ff:ff:ff:ff:ff
    inet 192.168.84.133/24 brd 192.168.84.255 scope global br0
       valid_lft forever preferred_lft forever
12: vnet0: <broADCAST,LOWER_UP> mtu 1500 qdisc pfifo_fast master br0 state UNKNowN group default qlen 1000
    link/ether fe:54:00:26:d5:ef brd ff:ff:ff:ff:ff:ff
    inet6 fe80::fc54:ff:fe26:d5ef/64 scope link 
       valid_lft forever preferred_lft forever
13: virbr0: <NO-CARRIER,UP> mtu 1500 qdisc noqueue state DOWN group default qlen 1000
    link/ether 52:54:00:74:25:0e brd ff:ff:ff:ff:ff:ff
    inet 192.168.122.1/24 brd 192.168.122.255 scope global virbr0
       valid_lft forever preferred_lft forever
14: virbr0-nic: <broADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast master virbr0 state DOWN group default qlen 1000
    link/ether 52:54:00:74:25:0e brd ff:ff:ff:ff:ff:ff

但是,当我使用命令将我的实例附加到网桥时:

virt-install \
--name=$VM_NAME \
--ram=2048 \
--vcpus=2 \
--boot loader=/usr/share/OVMF/OVMF_CODE.fd \
--disk path=$CLOUD_INIT_SEED,device=cdrom \
--disk path=$IMAGE_QCOW2,device=disk \
--os-type linux \
--os-variant debian10 \
--virt-type=kvm \
--graphics none \
--noautoconsole \
--bridge=br0

如果我使用 cloud init 手动设置 ip,我的网络不会被初始化,vm 可以解析主机 ip 和其他方式,但这完全没有互联网连接,我也无法在同一网络中获得机器。

那些是我的 iptables:

-P INPUT ACCEPT
-P FORWARD DROP
-P OUTPUT ACCEPT
-N DOCKER
-N DOCKER-ISOLATION-STAGE-1
-N DOCKER-ISOLATION-STAGE-2
-N DOCKER-USER
-A INPUT -i virbr0 -p udp -m udp --dport 53 -j ACCEPT
-A INPUT -i virbr0 -p tcp -m tcp --dport 53 -j ACCEPT
-A INPUT -i virbr0 -p udp -m udp --dport 67 -j ACCEPT
-A INPUT -i virbr0 -p tcp -m tcp --dport 67 -j ACCEPT
-A FORWARD -i br10 -j REJECT --reject-with icmp-port-unreachable
-A FORWARD -d 192.168.122.0/24 -o virbr0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -s 192.168.122.0/24 -i virbr0 -j ACCEPT
-A FORWARD -i virbr0 -o virbr0 -j ACCEPT
-A FORWARD -o virbr0 -j REJECT --reject-with icmp-port-unreachable
-A FORWARD -i virbr0 -j REJECT --reject-with icmp-port-unreachable
-A FORWARD -i virbr0 -j REJECT --reject-with icmp-port-unreachable
-A FORWARD -j DOCKER-USER
-A FORWARD -j DOCKER-ISOLATION-STAGE-1
-A FORWARD -o docker0 -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -o docker0 -j DOCKER
-A FORWARD -i docker0 ! -o docker0 -j ACCEPT
-A FORWARD -i docker0 -o docker0 -j ACCEPT
-A FORWARD -i br0 -o br0 -j ACCEPT
-A OUTPUT -o virbr0 -p udp -m udp --dport 68 -j ACCEPT
-A DOCKER-ISOLATION-STAGE-1 -i docker0 ! -o docker0 -j DOCKER-ISOLATION-STAGE-2
-A DOCKER-ISOLATION-STAGE-1 -j RETURN
-A DOCKER-ISOLATION-STAGE-2 -o docker0 -j DROP
-A DOCKER-ISOLATION-STAGE-2 -j RETURN
-A DOCKER-USER -j RETURN

当我从 vm ping 某些东西时,我看到主机接口 br0 上有一个 arp 请求,它是实际的网桥。

14:33:01.861314 ARP,Request who-has 192.168.84.135 tell 192.168.84.198,length 28

192.168.84.198 是我手动设置的虚拟机 IP 地址。 但是,即使 arp -a 在创建网桥的主机上显示它知道该 IP 地址的 mac 地址,我也没有得到答复。

我也有

net.ipv4.ip_forward = 1

任何想法

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。