Hi, it seems the communication then was only available through docker0 bridge, and even if you have other interfaces connected via OVS, the default communications were done via the docker0.
On the other hand, how did you do the pinging process? Did you ping 172.16.2.10 from 172.16.1.10, or you were using alias names? Did you have any flow rules in OVS? As Guru Shetty also mentioned, in order to connect to different networks, the default NORMAL operation of OVS won't do the job for you (that's only for L2/Switch-based forwarding! You need to remove that default flow rules and add the respective ones into your switches! I am not really confident about your setup, but you might need proper ARP rules as well (not sure as assinging IP addresses to the ovs bridges means that they will reply to ARP by default - someone needs to justify this, sorry). and in order to avoid any networking namespace related issue on your host machine, I would recommend to use patch ports OVS provides you for connecting your bridges! Than everything which is related to OVS will be done via OVS itself -> this just reduces the number of problems you might encounter in the future. I hope this helps! Cheers, Levi On Sat, 2019-04-06 at 23:08 +0700, Tu Nguyen Phuoc wrote: > Hi OVS Community. > I have 1 Physical host which had docker and ovs installed. > I want to set up 2 ovs bridges (ovsbr1 and ovsbr2), each bridge has 1 > container connects to (h1 and h2), here is my set up: > #### On Physical host #### > *** Create 2 bridges *** > # ovs-vsctl add-br ovsbr1 > # ovs-vsctl add-br ovsbr2 > *** Set ip for bridges **** > # ifconfig ovsbr1 172.16.1.1 netmask 255.255.255.0 up > # ifconfig ovsbr2 172.16.2.1 netmask 255.255.255.0 up > *** Connect 2 containers to 2 bridges *** > # ovs-docker add-port ovs-br1 eth1 h1 --ipaddress=172.16.1.10/24 > # ovs-docker add-port ovs-br2 eth1 h2 --ipaddress=172.16.2.10/24 > *** Create link (for LLDP SDN) between ovsbr1 - ovsbr2 *** > # ip link add veth1 type veth peer name veth2 > # ifconfig veth1 up > # ifconfig veth2 up > # ovs-vsctl add-port ovsbr1 veth1 > # ovs-vsctl add-port ovsbr2 veth2 > > I've connected 2 ovs bridges to Floodlight and they worked fine. But > when i removed docker0 (default docker NIC) on each container, the > containers cannot ping each other through eth1. > > What is my mistake? How can the containers communicate through the > NIC eth1 that ovs-docker command added on them? > > Thanks in advance. I appreciate any response (sorry my my bad English > btw) > _______________________________________________ > discuss mailing list > [email protected] > https://mail.openvswitch.org/mailman/listinfo/ovs-discuss _______________________________________________ discuss mailing list [email protected] https://mail.openvswitch.org/mailman/listinfo/ovs-discuss
