Details
-
Bug
-
Status: Resolved
-
Resolution: Done
-
(unspecified)
-
None
-
None
-
Operating System: All
Platform: All
URL: https://git.opendaylight.org/gerrit/#/c/48663/
-
7230
Description
L2GRE tunnels: tun_id coming from a vxlan tunnel ends up being stored as the gre key
Scenario:
Packet sent from internal VM (in DC) to external VM:
internal VM > Compute Node 1 ->(vxlan_tunnel)> Compute Node 2 >(L2GRE_tunnel)> external VM
OF Pipeline:
[compute_node1 - last rule] cookie=0x8031389, duration=1946.649s, table=51, n_packets=785, n_bytes=32970, priority=20,metadata=0x1389000000/0xffff000000,dl_dst=96:d3:c8:c4:c2:bd actions=set_field:0x5->tun_id,output:1
[compute_node2 - last rule] [node-17] cookie=0x9000005, duration=2848.224s, table=36, n_packets=785, n_bytes=32970, priority=5,tun_id=0x5 actions=output:4
Output:4 is the GRE port on the OVS. Since tun_id=0x5 (from vxlan tunnel between OVS), then this value is stored as "key=0x5" in the output packet.
Example:
16:44:37.383901 In 52:54:00:3f:60:c3 ethertype 802.1Q (0x8100), length 90: vlan 1111, p 0, ethertype IPv4, 172.0.22.11 > 192.168.3.140: GREv0, key=0x5, proto TEB (0x6558), length 50: fa:16:3e:fc:5c:55 > 96:d3:c8:c4:c2:bd, ethertype ARP (0x0806), length 42: Reply 10.0.0.16 is-at fa:16:3e:fc:5c:55, length 28
As a result, packet is sent with a wrong key.