0

I am using Weave Net to connect my Docker containers across different hosts. Weave is making use of "Fast Datapath" which handles the routing in Kernel Space (inside the OVS (Open vSwitch) Module as shown in the diagram below.)

weave routing

In oder to get a better understanding about how Weave routes traffic, I would like to see the routing entries of the OVS Module. There are commands like ovs-vsctl show which "prints a brief overview of the database contents" but this didn't work. Seems like Weave is running its own OVS instance which cannot be accessed with this command.

I also tried inspecting Weave with the

weave status        [targets | connections | peers | dns | ipam]

commands but that didn't show any detailed routing information either.

So, does anyone know how to see the routing table that weave uses to decide where to route packets destined to a certain docker container?

arne.z
  • 357
  • 6
  • 24

1 Answers1

1

To see flows ("routes") which Weave Net installs into the datapath of openvswitch you can run weave report. The flows are listed under the .Router.OverlayDiagnostics.fastdp.Flows field.

Seems like Weave is running its own OVS instance which cannot be accessed with this command.

Yes, Weave Net does not use the OVS user space modules. It only relies on the openvswitch kernel module and friends (vxlan). See http://openvswitch.org/support/ovscon2016/8/0935-pumputis.pdf or https://www.youtube.com/watch?v=cKN_oaRX8Vc for more details