我有一臺RHEL6.4操作系統的主機。在主機下,我有一臺運行RHEL6.4的KVM虛擬機。Openvswitch/KVM訪客無法ping通外部網關
主機被連接到具有VLAN標籤1
我如下配置的主機的網絡接口標記交換機接口:
的ifcfg-eth0的
#DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
USERCTL=no
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
#
ifcfg-eth1
#DEVICE=eth1
TYPE=Ethernet
ONBOOT=yes
USERCTL=no
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
#
的ifcfg-bond0
#DEVICE=bond0
TYPE=Bond
BONDING_MASTER=yes
BOOTPROTO=static
NAME=bond0
ONBOOT=yes
USERCTL=no
BONDING_OPTS="mode=active-backup primary=eth0 miimon=100"
#
和主機的vSwitch如下:
#ovs-vsctl add-br ovsbr0
ovs-vsctl add-port ovsbr0 bond0
ovs-vsctl add-port ovsbr0 vlan1 tag=1 -- set interface content type=internal
ifconfig vlan1 192.168.1.2/28 up
#
而且我能ping外部vlan1 GW(192.168.1.1)。
我遇到的問題是我無法從VM ping通外部IPv4網關。 當我從虛擬機ping通時,我得到了第一個數據包的響應,但其他數據似乎失去了VLAN標記並進入錯誤的界面。 如果我和tcpdump bond0.1我看到的第一個ICMP請求和應答,但ICMP回信的其餘部分似乎出現bond0接口(未bond0.1)
#[[email protected] ~]# ping 192.168.1.1
PING 192.168.1.1 (192.168.1.1) 56(84) bytes of data.
64 bytes from 192.168.1.1: icmp_seq=1 ttl=255 time=2.64 ms
^C
--- 192.168.1.1 ping statistics ---
5 packets transmitted, 1 received, 80% packet loss, time 4786ms
rtt min/avg/max/mdev = 2.642/2.642/2.642/0.000 ms
[[email protected] ~]#
#
[[email protected] ~]# tcpdump -i bond0.1 host 192.168.1.1
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on bond0.1, link-type EN10MB (Ethernet), capture size 65535 bytes
20:49:28.053502 IP 192.168.1.3 > 192.168.1.1: ICMP echo request, id 55664, seq 1, length 64
20:49:28.054158 IP 192.168.1.1 > 192.168.1.3: ICMP echo reply, id 55664, seq 1, length 64
20:49:29.055189 IP 192.168.1.3 > 192.168.1.1: ICMP echo request, id 55664, seq 2, length 64
20:49:30.054971 IP 192.168.1.3 > 192.168.1.1: ICMP echo request, id 55664, seq 3, length 64
20:49:31.054935 IP 192.168.1.3 > 192.168.1.1: ICMP echo request, id 55664, seq 4, length 64
20:49:32.054918 IP 192.168.1.3 > 192.168.1.1: ICMP echo request, id 55664, seq 5, length 64
#
[[email protected]]# tcpdump -i bond0 host 192.168.1.1
tcpdump: WARNING: bond0: no IPv4 address assigned
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on bond0, link-type EN10MB (Ethernet), capture size 65535 bytes
20:49:28.053509 IP 192.168.1.3 > 192.168.1.1: ICMP echo request, id 55664, seq 1, length 64
20:49:29.055199 IP 192.168.1.3 > 192.168.1.1: ICMP echo request, id 55664, seq 2, length 64
20:49:29.055653 IP 192.168.1.1 > 192.168.1.3: ICMP echo reply, id 55664, seq 2, length 64
20:49:30.054983 IP 192.168.1.3 > 192.168.1.1: ICMP echo request, id 55664, seq 3, length 64
20:49:30.055522 IP 192.168.1.1 > 192.168.1.3: ICMP echo reply, id 55664, seq 3, length 64
20:49:31.054968 IP 192.168.1.3 > 192.168.1.1: ICMP echo request, id 55664, seq 4, length 64
20:49:31.056497 IP 192.168.1.1 > 192.168.1.3: ICMP echo reply, id 55664, seq 4, length 64
20:49:32.054927 IP 192.168.1.3 > 192.168.1.1: ICMP echo request, id 55664, seq 5, length 64
20:49:32.055402 IP 192.168.1.1 > 192.168.1.3: ICMP echo reply, id 55664, seq 5, length 64
的VM的網絡接口被配置爲如下:
的ifcfg-eth0的
#DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
USERCTL=no
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
的ifcfg-eth1的
#DEVICE=eth1
TYPE=Ethernet
ONBOOT=yes
USERCTL=no
BOOTPROTO=none
MASTER=bond0
SLAVE=yes
的ifcfg-bond0
#DEVICE=bond0
TYPE=Bond
BONDING_MASTER=yes
BOOTPROTO=static
NAME=bond1
ONBOOT=yes
USERCTL=no
BONDING_OPTS="mode=active-backup primary=eth0 miimon=100"
的ifcfg-bond0.1
#VLAN=yes
TYPE=Vlan
DEVICE=bond0.1
NAME=bond0.1
BOOTPROTO=static
ONBOOT=yes
IPADDR=192.168.1.3
NETMASK=255.255.255.240
任何想法爲什麼會出現此問題?