On Tue, Jul 10, 2012 at 01:46:07AM +0900, Neha Jatav wrote:
I have KVM installed on my Fedora 17 box. I added the network
interfaces of the virtual machines to the openvswitch bridge as follows:
____ ____
/ VM1\______br0_______/ em1\
\____/ | \____/
|
_|_
/VM2\
\____/
virbr0 is the virtual network switch
VM1 and VM2 are on the same subnet having tap interfaces vnet0 and vnet1 respectively.
em1 is the default network interface.
$sudo ovs-vsctl add-br br0
$sudo ovs-vsctl add-port br0 em1
$sudo ifconfig br0 <ip address of em1>
$sudo ip route del default dev em1
$sudo ip route add default dev br0
(Using the above commands, I was able to connect to the internet)
$sudo brctl delif virbr0 vnet0
$sudo ovs-vsctl add-port br0 vnet0
$sudo brctl delif virbr0 vnet1
$sudo ovs-vsctl add-port br0 vnet1
$brctl show
bridge name bridge id STP enabled interfaces
virbr0 8000.52540094e45e yes virbr0-nic
vnet0
vnet2
$sudo ovs-vsctl show
Bridge "br0"
Port "vnet1"
Interface "vnet1"
Port "br0"
Interface "br0"
type: internal
Port "vnet0"
Interface "vnet0"
Port "em1"
Interface "em1"
ovs_version: "1.4.0"
$ifconfig em1
em1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.66.97.253 netmask 255.255.254.0 broadcast 10.66.97.255
inet6 fe80::226:55ff:fe3e:971c prefixlen 64 scopeid 0x20<link>
ether 00:26:55:3e:97:1c txqueuelen 1000 (Ethernet)
RX packets 194955 bytes 81216930 (77.4 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 53004 bytes 9477482 (9.0 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
device interrupt 19 memory 0xf0200000-f0220000
$ifconfig br0
br0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.66.97.253 netmask 255.0.0.0 broadcast 10.255.255.255
inet6 fe80::226:55ff:fe3e:971c prefixlen 64 scopeid 0x20<link>
ether 00:26:55:3e:97:1c txqueuelen 0 (Ethernet)
RX packets 84745 bytes 60302978 (57.5 MiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 44528 bytes 7732040 (7.3 MiB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
By default, the OVS should act as a MAC-layer learning switch. However, the VMs which are
in the same subnet can ping each other but the VMs can't ping the host machine
(10.66.97.253) & viceversa.
Can you tell me where am I wrong in my approach?
You appear to have both OVS bridges and Linux bridges. Why? And at
least interface vnet0 is configured to be on both the Linux bridge and
the OVS bridge. That can't work.
Also you appear to have the same IP address 10.66.97.253 configured on
both em1 and br0 (with different netmasks). That won't work properly
either.
Did you read the FAQ?
http://openvswitch.org/faq/