I have installed ovs and pox controller on vm-swtich
sudo ovs-vsctl show
sudo ovs-vsctl add-br lan0
sudo ovs-vsctl add-port lan0 eth1
sudo ovs-vsctl add-port lan0 eth2
sudo ovs-vsctl add-port lan0 eth3
sudo ovs-vsctl set-controller lan0 tcp:127.0.0.1:6633
I am also a beginner but I will try to help you. I think that you have not
set up your network correctly.
I think that you have to add the same bridge to your VMs also. For example
look at my configuration:
This is the configuration of the OF switch:
*Bridge inria_nepi
Controller "tcp:131.188.44.100:6633"
Port "LSENDER-4"
Interface "LSENDER-4"
type: tunnel
options: {remote_ip="141.11.0.165", remote_port="44967"}
Port inria_nepi
Interface inria_nepi
type: internal
options: {local_ip="192.168.3.1", local_netmask="24"}
Port "LSENDER-3"
Interface "LSENDER-3"
type: tunnel
options: {remote_ip="149.156.5.114", remote_port="54676"}
Port "LSENDER-2"
Interface "LSENDER-2"
type: tunnel
options: {remote_ip="192.36.94.2", remote_port="57945"}*
And this is the configuration of one of my hosts:
*Bridge inria_nepi
Port "LSENDER-2"
Interface "LSENDER-2"
type: tunnel
options: {remote_ip="131.188.44.100", remote_port="41591"}
Port inria_nepi
Interface inria_nepi
type: internal
options: {local_ip="192.168.3.2", local_netmask="24"}*
In fact it's a different situation because I am usning Planetlab nodes. But
more or less the network setup should be similar.
Try the mininet which is very easy to use and to experiment with POX. Check
this tutorial which is very useful
http://www.openflow.org/wk/index.php/OpenFlow_Tutorial
Regards,
Alexandros
2013/4/11 Murphy McCauley <[email protected]>
> Capture the traffic between the controller and the switch (either using
> tcpdump/wireshark or POX's openflow.debug component) then look at it in
> Wireshark with the OpenFlow dissector. Feel free to post it. If the VMs
> are communicating with the switch, the switch should be sending the DHCP
> requests to the controller and you should see it in the control traffic
> (inside packet_in OpenFlow messages). If it's not there, the VMs probably
> aren't communicating with the switches. If it's there, we can try to see
> why it's not working.
>
> -- Murphy
>
>
> On Apr 10, 2013, at 6:39 PM, Karthik Sharma wrote:
>
> If I do that on the clients the all the clients are sending out
> dhcpdiscover messages.But not getting any responses from
>
> ./pox.py misc.dhcpd:default running on vm-switch
>
> Regards,
> Karthik.
>
>
> On 11 April 2013 13:33, Murphy McCauley <[email protected]> wrote:
>
>> What happens if you run dhclient -v eth0 or whatever on the VMs?
>> On Apr 10, 2013 6:30 PM, "Karthik Sharma" <[email protected]>
>> wrote:
>>
>>> Hi
>>>
>>> I don't have a dchp server configured on my network.As explained above
>>> it is 3 network segments intnet-1,intnet-2 and intnet-3 which are connected
>>> to openvswitch.These three internal networks are created using Virtual Box.
>>>
>>> Then I have attached one end of each of these to vm-switch.
>>>
>>> sudo ovs-vsctl add-port lan0 eth1
>>> sudo ovs-vsctl add-port lan0 eth2
>>> sudo ovs-vsctl add-port lan0 eth3
>>>
>>> In this situation how does the POX dhcp server work?
>>>
>>> I did try runing
>>>
>>> ./pox.py log.level --DEBUG misc.dhcpd:default on vm-switch
>>>
>>> and tried restarting vm-1 vm-2 and vm-3.
>>>
>>> But did not get any response.
>>>
>>> As mentioned I think for the dhcp server to work I think there should be
>>> a common network among the 4 machines which is not true in the above case.
>>>
>>> Any thoughts?
>>>
>>> Regards,
>>> Karthik.
>>>
>>>
>>>
>>>
>>> On 11 April 2013 13:01, Murphy McCauley <[email protected]>wrote:
>>>
>>>> POX doesn't currently support IPv6. (This is mostly because OpenFlow
>>>> 1.0 only supports IPv4. IPv6 is being added because Open vSwitch supports
>>>> it through an extension and because we're planning to support OpenFlow 1.2.
>>>> The first version is almost but not quite complete; it is slated for
>>>> carp.)
>>>>
>>>> So this is probably at least a major component of your problem. Use
>>>> IPv4. You can either statically configure the addresses, or run dhclient
>>>> or whatever on your VMs if your OpenFlow network is connected to a DHCP
>>>> server. If it's not, you can use POX's DHCP server.
>>>>
>>>> Hope that helps.
>>>>
>>>> -- Murphy
>>>>
>>>> On Apr 10, 2013, at 4:51 PM, Karthik Sharma wrote:
>>>>
>>>> I have 4 virtual Machine (Ubuntu 12.04) running on a host that is also
>>>> running Ubuntu 12.04
>>>> The Virtual Machines are named as
>>>>
>>>> vm-1
>>>> vm-2
>>>> vm-3
>>>> vm-switch
>>>>
>>>> Below are the network settings on switch-vm
>>>>
>>>>
>>>> Adapter 1:
>>>> Intel PRO/1000 MT Desktop (Bridged adapter, eth0)
>>>> Adapter 2:
>>>> Intel PRO/1000 MT Desktop (Internal network, 'intnet-1')
>>>> Adapter 3:
>>>> Intel PRO/1000 MT Desktop (Internal network, 'intnet-2')
>>>> Adapter 4:
>>>> Intel PRO/1000 MT Desktop (Internal network, 'intnet-3')
>>>>
>>>> Network settings on vm-1
>>>>
>>>> Adapter 1:
>>>> Intel PRO/1000 MT Desktop (Bridged adapter, eth0)
>>>> Adapter 2:
>>>> Intel PRO/1000 MT Desktop (Internal network, 'intnet-1')
>>>>
>>>> Network settings on vm-2
>>>>
>>>> Adapter 1:
>>>> Intel PRO/1000 MT Desktop (Bridged adapter, eth0)
>>>> Adapter 2:
>>>> Intel PRO/1000 MT Desktop (Internal network, 'intnet-2')
>>>>
>>>>
>>>> Network settings on vm
>>>>
>>>> Adapter 1:
>>>> Intel PRO/1000 MT Desktop (Bridged adapter, eth0)
>>>> Adapter 2:
>>>> Intel PRO/1000 MT Desktop (Internal network, 'intnet-3')
>>>>
>>>>
>>>> I have installed ovs and pox controller on vm-swtich
>>>>
>>>> sudo ovs-vsctl show
>>>> sudo ovs-vsctl add-br lan0
>>>> sudo ovs-vsctl add-port lan0 eth1
>>>> sudo ovs-vsctl add-port lan0 eth2
>>>> sudo ovs-vsctl add-port lan0 eth3
>>>> sudo ovs-vsctl set-controller lan0 tcp:127.0.0.1:6633
>>>>
>>>> ./pox.py log.level --DEBUG forwarding.l2_learning
>>>>
>>>> On another terminal on the vm-switch,I run the following ping6 script.
>>>>
>>>> for i in {1..10}
>>>> do
>>>> echo "pinging vm-1 via eth1"
>>>> ping6 -I eth1 -c 10 fe80::a00:27ff:fed1:9ced
>>>> echo "pinging vm-2 via eth2"
>>>> ping6 -I eth2 -c 10 fe80::a00:27ff:febe:3ae6
>>>> echo "pinging vm-2 via eth3"
>>>> ping6 -I eth3 -c 10 fe80::a00:27ff:fe92:3e72
>>>> done
>>>>
>>>>
>>>> where fe80::a00:27ff:fed1:9ced is the link local ipv6 address on (eth0)
>>>> on vm-1
>>>> fe80::a00:27ff:febe:3ae6 is the link local ipv6 address on (eth0)
>>>> on vm-2
>>>> fe80::a00:27ff:fe92:3e72 is the link local ipv6 address on (eth0)
>>>> on vm-3
>>>>
>>>> The ping commands work successfully with 0% packet loss.However
>>>>
>>>> ./pox.py log.level --DEBUG forwarding.l2_learning
>>>>
>>>> doesn't seem to show any output at all.
>>>>
>>>> Is this because I am pinging from switch-vm to vm-1 vm-2 and vm-3
>>>>
>>>> Instead if I try pinging from vm-1 to vm-2 etc.It is saying destination
>>>> unreachable.
>>>>
>>>> Is this the problem that the appropriate flows are not installed in the
>>>> POX controller?
>>>> If yes is there an easy way to do that?
>>>>
>>>>
>>>>
>>>
>
>
--
Kouvakas Alexandros