Thank you for the quick response. I have been trying out numerous
variations of the commands to get the desired outcome.

> Sure, just specify an appropriate address.  For example, set up the
> switch to listen on an IP address ("ovs-vsctl set-controller br0 ptcp:")
> then use ovs-ofctl to connect to that ("ovs-ofctl dump-flows
> tcp:$MY_IP").

That command worked great, thanks! I noticed that the following command
combination would fail to establish a TCP connection:
ovs-vsctl set-controller br0 tcp:127.0.0.1:6633
ovs-ofctl dump-flows tcp:127.0.0.1:6633
Your solution fixed that problem and I was able to establish a TCP
connection. As well as send OpenFlow messages through the loopback
interface:
ovs-vsctl set-controller br0 ptcp:6633
ovs-ofctl dump-flows tcp:127.0.0.1:6633

I was wondering what the difference between "ptcp" and "tcp" is. And why
using ptcp:6633 as a controller would allow TCP connections but tcp:
127.0.0.1:6633 would not.

> Sure, just specify those addresses instead of 127.0.0.1.

I noticed a typo in my previous message, under "Experiment 2 Results" the
IP address 192.168.56.3 should have been 10.0.0.1. I am still trying to get
the addresses to show up as 10.0.0.1 (br0) and 127.0.0.1 (controller) but I
can't seem to get it working. The closests I was able to get was using the
commands that builds Environment 2 and:
python3.6 ./bin/ryu-manager ./ryu/app/simple_switch.py
--ofp-switch-address-list 10.0.0.1:6633
The controller would establish a connection with the 10.0.0.1 (br0) address
using 10.0.0.1 as its address as well, but after sending the OpenFlow hello
messages it would make a new connection where the controller and switch
would use the 127.0.0.1 address. Then use the 127.0.0.1 address for the
remainder of the experiment.

On Mon, Mar 23, 2020 at 10:33 PM Ben Pfaff <b...@ovn.org> wrote:

> On Mon, Mar 23, 2020 at 08:40:55PM -0700, Brian Perry wrote:
> > Environment 1 Results:
> > When running Wireshark on the loopback interface and the br0 interface I
> > was unable to find any OpenFlow messages when using flow table commands
> > like:
> > ovs-ofctl dump-flows br0
> >
> > Looking through various documentation eventually lead me to a website
> that
> > states that the ovs-ofctl command is using a Unix domain socket to
> > communicate with the switch (
> >
> https://github.com/mininet/openflow-tutorial/wiki/Learn-Development-Tools#accessing-remote-ovs-instances-or-the-stanford-reference-switch
> )
> > . And I also found out that Wireshark can't capture Unix domain socket
> > traffic because it isn't a network interface (
> > https://www.wireshark.org/lists/ethereal-users/200202/msg00259.html).
> >
> > Is it possible to have the ovs-ofctl commands go through an interface so
> I
> > can see the OpenFlow messages on Wireshark?
>
> Sure, just specify an appropriate address.  For example, set up the
> switch to listen on an IP address ("ovs-vsctl set-controller br0 ptcp:")
> then use ovs-ofctl to connect to that ("ovs-ofctl dump-flows
> tcp:$MY_IP").
>
> > Environment 2 Results:
> > When running Wireshark on the loopback interface and the br0 interface I
> > saw the OpenFlow messages being sent to and from the loopback address
> > 127.0.0.1. While I initially thought the messages would be addressed from
> > br0 (192.168.56.3) to the controller (127.0.0.1). After thinking about it
> > some more, I understand why the switch br0 and the controller are both
> > addressed 127.0.0.1. Because the switch and controller are two processes
> > that are on the same Host OS communicating with each other.
> >
> > But I was wondering if it is possible to configure the switch so that the
> > OpenFlow message packets address br0 as 192.168.56.3 and the controller
> as
> > 127.0.0.1?
>
> Sure, just specify those addresses instead of 127.0.0.1.
>
_______________________________________________
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss

Reply via email to