I've seen users make this error several times. This FAQ will provide a useful answer to pass along.
Signed-off-by: Ben Pfaff <b...@ovn.org> --- FAQ.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/FAQ.md b/FAQ.md index 5e95ccc..df6f225 100644 --- a/FAQ.md +++ b/FAQ.md @@ -2012,6 +2012,23 @@ A: In Open vSwitch 2.3 and earlier, Open vSwitch used the destination vSwitch source tree. (OpenFlow 1.5 support in Open vSwitch is still experimental.) +### Q: I added a flow to accept packets on VLAN 123 and output them on + VLAN 456, like so: + + ovs-ofctl add-flow br0 dl_vlan=123,actions=output:1,mod_vlan_vid:456 + + but the packets are actually being output in VLAN 123. Why? + +A: OpenFlow actions are executed in the order specified. Thus, the + actions above first output the packet, then change its VLAN. Since + the output occurs before changing the VLAN, the change in VLAN will + have no visible effect. + + To solve this and similar problems, order actions so that changes + to headers happen before output, e.g.: + + ovs-ofctl add-flow br0 dl_vlan=123,actions=mod_vlan_vid:456,output:1 + Development ----------- -- 2.1.3 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev