Uploaded image for project: 'Fast Datapath Product'
  1. Fast Datapath Product
  2. FDP-1710

Inconsistent drop behaviour in OVN on the GatewayRouter (pod in UDNA to nodeport in UDNB is the traffic flow)

    • Icon: Bug Bug
    • Resolution: Unresolved
    • Icon: Major Major
    • None
    • None
    • OVN, ovn25.03
    • None
    • False
    • Hide

      None

      Show
      None
    • False
    • Hide

      Given OVN-K on IPv6, local gateway topology with a GR and optional ETP=Local NodePort LBs,

      When packets destined to the node IPv6 arrive on the GR,

      Then the presence or absence of ETP=Local LBs must not change the lr_in_ip_input drop set or decision and  traffic must be consistently dropped by GR or steered by documented policy/routing.

      Show
      Given OVN-K on IPv6, local gateway topology with a GR and optional ETP=Local NodePort LBs, When packets destined to the node IPv6 arrive on the GR, Then the presence or absence of ETP=Local LBs must not change the lr_in_ip_input drop set or decision and  traffic must be consistently dropped by GR or steered by documented policy/routing.
    • rhel-10
    • None
    • rhel-net-ovn
    • ssg_networking
    • Important

       Problem Description: Clearly explain the issue.

      On IPV6, in OVN-Kubernetes on Layer2 topology, on the GR depending on whether I have at least 1 ETP=local load balancer or not, I am hitting an inconsistency in drop behaviour.

      case with ETP=local nodeport service:

       

      # ovn-nbctl lr-lb-list GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane
      UUID                                    LB                  PROTO      VIP                              IPs
      e08ffcaf-5b4a-4c2b-851f-35f9e91058c5    cluster_udn_bgp.    tcp        [fd00:10:96::7781]:80            [2013:100:200::10]:8080
      73e7b673-ce57-43d6-b168-3cdbe56aa7fd    cluster_udn_bgp.    tcp        [fc00:f853:ccd:e793::4]:31049    [2013:100:200::10]:8080 ----> ETP=local
      87c752bd-16c9-43f3-8745-8cc404faafcf    cluster_udn_bgp.    tcp        [fc00:f853:ccd:e793::4]:32125    [2013:100:200::5]:8080,[2013:100:200::8]:8080,[2013:100:200::a]:8080
                                                                  tcp        [fd00:10:96::8480]:8080          [2013:100:200::5]:8080,[2013:100:200::8]:8080,[2013:100:200::a]:8080
       

      which has corresponding flows in SBDB:

      sh-5.2# ovn-sbctl lflow-list GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane | grep lr_in_ip_input
        table=3 (lr_in_ip_input     ), priority=150  , match=(inport == "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch" && ip6 && reg9[1] && reg9[0] == 0), action=(icmp6_error {reg9[0] = 1; reg9[1] = 0; eth.dst = 0a:58:4d:58:9e:f6; ip6.dst = ip6.src; ip6.src = 2013:100:200::1; ip.ttl = 255; icmp6.type = 2; /* Packet Too Big. */ icmp6.code = 0; icmp6.frag_mtu = 1400; next(pipeline=ingress, table=0); };)
        table=3 (lr_in_ip_input     ), priority=100  , match=(ip4.src_mcast ||ip4.src == 255.255.255.255 || ip4.src == 127.0.0.0/8 || ip4.dst == 127.0.0.0/8 || ip4.src == 0.0.0.0/8 || ip4.dst == 0.0.0.0/8), action=(drop;)
        table=3 (lr_in_ip_input     ), priority=90   , match=(inport == "rtoe-GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane" && ip6.dst == {fc00:f853:ccd:e793::4, ff02::1:ff00:4} && nd_ns && nd.target == fc00:f853:ccd:e793::4), action=(nd_na_router { eth.src = xreg0[0..47]; ip6.src = nd.target; nd.tll = xreg0[0..47]; outport = inport; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=90   , match=(inport == "rtoe-GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane" && ip6.dst == {fd69::1f, ff02::1:ff00:1f} && nd_ns && nd.target == fd69::1f), action=(nd_na_router { eth.src = xreg0[0..47]; ip6.src = nd.target; nd.tll = xreg0[0..47]; outport = inport; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=90   , match=(inport == "rtoe-GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane" && ip6.dst == {fe80::c21:aaff:fe36:3a38, ff02::1:ff36:3a38} && nd_ns && nd.target == fe80::c21:aaff:fe36:3a38), action=(nd_na_router { eth.src = xreg0[0..47]; ip6.src = nd.target; nd.tll = xreg0[0..47]; outport = inport; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=90   , match=(inport == "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch" && ip6.dst == {2013:100:200::1, ff02::1:ff00:1} && nd_ns && nd.target == 2013:100:200::1), action=(nd_na_router { eth.src = xreg0[0..47]; ip6.src = nd.target; nd.tll = xreg0[0..47]; outport = inport; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=90   , match=(inport == "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch" && ip6.dst == {fd99::2, ff02::1:ff00:2} && nd_ns && nd.target == fd99::2), action=(nd_na_router { eth.src = xreg0[0..47]; ip6.src = nd.target; nd.tll = xreg0[0..47]; outport = inport; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=90   , match=(inport == "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch" && ip6.dst == {fe80::858:4dff:fe58:9ef6, ff02::1:ff58:9ef6} && nd_ns && nd.target == fe80::858:4dff:fe58:9ef6), action=(nd_na_router { eth.src = xreg0[0..47]; ip6.src = nd.target; nd.tll = xreg0[0..47]; outport = inport; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=90   , match=(ip6.dst == {2013:100:200::1, fd99::2, fe80::858:4dff:fe58:9ef6} && icmp6.type == 128 && icmp6.code == 0), action=(ip6.dst <-> ip6.src; ip.ttl = 255; icmp6.type = 129; flags.loopback = 1; next; )
        table=3 (lr_in_ip_input     ), priority=90   , match=(ip6.dst == {fc00:f853:ccd:e793::4, fd69::1f, fe80::c21:aaff:fe36:3a38} && icmp6.type == 128 && icmp6.code == 0), action=(ip6.dst <-> ip6.src; ip.ttl = 255; icmp6.type = 129; flags.loopback = 1; next; )
        table=3 (lr_in_ip_input     ), priority=90   , match=(ip6.dst == {fd69::1f, ff02::1:ff00:1f} && nd_ns && nd.target == fd69::1f), action=(nd_na { eth.src = xreg0[0..47]; ip6.src = nd.target; nd.tll = xreg0[0..47]; outport = inport; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=90   , match=(ip6.dst == {fd69::20, ff02::1:ff00:20} && nd_ns && nd.target == fd69::20), action=(nd_na { eth.src = xreg0[0..47]; ip6.src = nd.target; nd.tll = xreg0[0..47]; outport = inport; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=85   , match=(arp || nd), action=(drop;)
        table=3 (lr_in_ip_input     ), priority=84   , match=(nd_rs || nd_ra), action=(next;)
        table=3 (lr_in_ip_input     ), priority=83   , match=(ip6.mcast_rsvd), action=(drop;)
        table=3 (lr_in_ip_input     ), priority=82   , match=(ip4.mcast || ip6.mcast), action=(drop;)
        table=3 (lr_in_ip_input     ), priority=60   , match=(ip6.dst == {2013:100:200::1, fe80::858:4dff:fe58:9ef6}), action=(drop;)
        table=3 (lr_in_ip_input     ), priority=60   , match=(ip6.dst == {fc00:f853:ccd:e793::4, fe80::c21:aaff:fe36:3a38}), action=(drop;) ----> causes the drop
        table=3 (lr_in_ip_input     ), priority=50   , match=(eth.bcast), action=(drop;)
        table=3 (lr_in_ip_input     ), priority=32   , match=(ip.ttl == {0, 1} && !ip.later_frag && (ip4.mcast || ip6.mcast)), action=(drop;)
        table=3 (lr_in_ip_input     ), priority=31   , match=(inport == "rtoe-GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane" && ip6 && ip6.src == fc00:f853:ccd:e793::/64 && ip.ttl == {0, 1} && !ip.later_frag), action=(icmp6 {eth.dst <-> eth.src; ip6.dst = ip6.src; ip6.src = fc00:f853:ccd:e793::4 ; ip.ttl = 254; icmp6.type = 3; /* Time exceeded */ icmp6.code = 0; /* TTL exceeded in transit */ outport = "rtoe-GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane"; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=31   , match=(inport == "rtoe-GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane" && ip6 && ip6.src == fd69::/112 && ip.ttl == {0, 1} && !ip.later_frag), action=(icmp6 {eth.dst <-> eth.src; ip6.dst = ip6.src; ip6.src = fd69::1f ; ip.ttl = 254; icmp6.type = 3; /* Time exceeded */ icmp6.code = 0; /* TTL exceeded in transit */ outport = "rtoe-GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane"; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=31   , match=(inport == "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch" && ip6 && ip6.src == 2013:100:200::/60 && ip.ttl == {0, 1} && !ip.later_frag), action=(icmp6 {eth.dst <-> eth.src; ip6.dst = ip6.src; ip6.src = 2013:100:200::1 ; ip.ttl = 254; icmp6.type = 3; /* Time exceeded */ icmp6.code = 0; /* TTL exceeded in transit */ outport = "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch"; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=31   , match=(inport == "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch" && ip6 && ip6.src == fd99::/64 && ip.ttl == {0, 1} && !ip.later_frag), action=(icmp6 {eth.dst <-> eth.src; ip6.dst = ip6.src; ip6.src = fd99::2 ; ip.ttl = 254; icmp6.type = 3; /* Time exceeded */ icmp6.code = 0; /* TTL exceeded in transit */ outport = "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch"; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=30   , match=(ip.ttl == {0, 1}), action=(drop;)
        table=3 (lr_in_ip_input     ), priority=0    , match=(1), action=(next;)
       

      the priority 60 which matches on node-ip i.e the current nodeIP causes the drop.

      That flow takes precedence over the src-ip route flow I have:

      sh-5.2# ovn-nbctl lr-route-list GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane
      IPv6 Routes
      Route Table <main>:
                     fd69::/112                   fd69::4 dst-ip rtoe-GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane
              2013:100:200::/60           2013:100:200::2 src-ip ---> I except this to be hit.
                           ::/0     fc00:f853:ccd:e793::1 dst-ip rtoe-GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane 

      However let's say I delete that load balancer now,

      sh-5.2# ovn-nbctl lr-lb-del GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane 73e7b673-ce57-43d6-b168-3cdbe56aa7fd
      sh-5.2# ovn-nbctl lr-lb-list GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane
      UUID                                    LB                  PROTO      VIP                              IPs
      87c752bd-16c9-43f3-8745-8cc404faafcf    cluster_udn_bgp.    tcp        [fc00:f853:ccd:e793::4]:32125    [2013:100:200::5]:8080,[2013:100:200::8]:8080,[2013:100:200::a]:8080
                                                                  tcp        [fd00:10:96::8480]:8080          [2013:100:200::5]:8080,[2013:100:200::8]:8080,[2013:100:200::a]:8080
      e08ffcaf-5b4a-4c2b-851f-35f9e91058c5    cluster_udn_bgp.    tcp        [fd00:10:96::7781]:80            [2013:100:200::10]:8080
      sh-5.2# ovn-sbctl lflow-list GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane | grep lr_in_ip_input
        table=3 (lr_in_ip_input     ), priority=150  , match=(inport == "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch" && ip6 && reg9[1] && reg9[0] == 0), action=(icmp6_error {reg9[0] = 1; reg9[1] = 0; eth.dst = 0a:58:4d:58:9e:f6; ip6.dst = ip6.src; ip6.src = 2013:100:200::1; ip.ttl = 255; icmp6.type = 2; /* Packet Too Big. */ icmp6.code = 0; icmp6.frag_mtu = 1400; next(pipeline=ingress, table=0); };)
        table=3 (lr_in_ip_input     ), priority=100  , match=(ip4.src_mcast ||ip4.src == 255.255.255.255 || ip4.src == 127.0.0.0/8 || ip4.dst == 127.0.0.0/8 || ip4.src == 0.0.0.0/8 || ip4.dst == 0.0.0.0/8), action=(drop;)
        table=3 (lr_in_ip_input     ), priority=90   , match=(inport == "rtoe-GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane" && ip6.dst == {fc00:f853:ccd:e793::4, ff02::1:ff00:4} && nd_ns && nd.target == fc00:f853:ccd:e793::4), action=(nd_na_router { eth.src = xreg0[0..47]; ip6.src = nd.target; nd.tll = xreg0[0..47]; outport = inport; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=90   , match=(inport == "rtoe-GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane" && ip6.dst == {fd69::1f, ff02::1:ff00:1f} && nd_ns && nd.target == fd69::1f), action=(nd_na_router { eth.src = xreg0[0..47]; ip6.src = nd.target; nd.tll = xreg0[0..47]; outport = inport; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=90   , match=(inport == "rtoe-GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane" && ip6.dst == {fe80::c21:aaff:fe36:3a38, ff02::1:ff36:3a38} && nd_ns && nd.target == fe80::c21:aaff:fe36:3a38), action=(nd_na_router { eth.src = xreg0[0..47]; ip6.src = nd.target; nd.tll = xreg0[0..47]; outport = inport; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=90   , match=(inport == "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch" && ip6.dst == {2013:100:200::1, ff02::1:ff00:1} && nd_ns && nd.target == 2013:100:200::1), action=(nd_na_router { eth.src = xreg0[0..47]; ip6.src = nd.target; nd.tll = xreg0[0..47]; outport = inport; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=90   , match=(inport == "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch" && ip6.dst == {fd99::2, ff02::1:ff00:2} && nd_ns && nd.target == fd99::2), action=(nd_na_router { eth.src = xreg0[0..47]; ip6.src = nd.target; nd.tll = xreg0[0..47]; outport = inport; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=90   , match=(inport == "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch" && ip6.dst == {fe80::858:4dff:fe58:9ef6, ff02::1:ff58:9ef6} && nd_ns && nd.target == fe80::858:4dff:fe58:9ef6), action=(nd_na_router { eth.src = xreg0[0..47]; ip6.src = nd.target; nd.tll = xreg0[0..47]; outport = inport; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=90   , match=(ip6.dst == {2013:100:200::1, fd99::2, fe80::858:4dff:fe58:9ef6} && icmp6.type == 128 && icmp6.code == 0), action=(ip6.dst <-> ip6.src; ip.ttl = 255; icmp6.type = 129; flags.loopback = 1; next; )
        table=3 (lr_in_ip_input     ), priority=90   , match=(ip6.dst == {fc00:f853:ccd:e793::4, fd69::1f, fe80::c21:aaff:fe36:3a38} && icmp6.type == 128 && icmp6.code == 0), action=(ip6.dst <-> ip6.src; ip.ttl = 255; icmp6.type = 129; flags.loopback = 1; next; )
        table=3 (lr_in_ip_input     ), priority=90   , match=(ip6.dst == {fd69::1f, ff02::1:ff00:1f} && nd_ns && nd.target == fd69::1f), action=(nd_na { eth.src = xreg0[0..47]; ip6.src = nd.target; nd.tll = xreg0[0..47]; outport = inport; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=90   , match=(ip6.dst == {fd69::20, ff02::1:ff00:20} && nd_ns && nd.target == fd69::20), action=(nd_na { eth.src = xreg0[0..47]; ip6.src = nd.target; nd.tll = xreg0[0..47]; outport = inport; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=85   , match=(arp || nd), action=(drop;)
        table=3 (lr_in_ip_input     ), priority=84   , match=(nd_rs || nd_ra), action=(next;)
        table=3 (lr_in_ip_input     ), priority=83   , match=(ip6.mcast_rsvd), action=(drop;)
        table=3 (lr_in_ip_input     ), priority=82   , match=(ip4.mcast || ip6.mcast), action=(drop;)
        table=3 (lr_in_ip_input     ), priority=60   , match=(ip6.dst == {2013:100:200::1, fe80::858:4dff:fe58:9ef6}), action=(drop;)
        table=3 (lr_in_ip_input     ), priority=60   , match=(ip6.dst == {fe80::c21:aaff:fe36:3a38}), action=(drop;)
        table=3 (lr_in_ip_input     ), priority=50   , match=(eth.bcast), action=(drop;)
        table=3 (lr_in_ip_input     ), priority=32   , match=(ip.ttl == {0, 1} && !ip.later_frag && (ip4.mcast || ip6.mcast)), action=(drop;)
        table=3 (lr_in_ip_input     ), priority=31   , match=(inport == "rtoe-GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane" && ip6 && ip6.src == fc00:f853:ccd:e793::/64 && ip.ttl == {0, 1} && !ip.later_frag), action=(icmp6 {eth.dst <-> eth.src; ip6.dst = ip6.src; ip6.src = fc00:f853:ccd:e793::4 ; ip.ttl = 254; icmp6.type = 3; /* Time exceeded */ icmp6.code = 0; /* TTL exceeded in transit */ outport = "rtoe-GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane"; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=31   , match=(inport == "rtoe-GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane" && ip6 && ip6.src == fd69::/112 && ip.ttl == {0, 1} && !ip.later_frag), action=(icmp6 {eth.dst <-> eth.src; ip6.dst = ip6.src; ip6.src = fd69::1f ; ip.ttl = 254; icmp6.type = 3; /* Time exceeded */ icmp6.code = 0; /* TTL exceeded in transit */ outport = "rtoe-GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane"; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=31   , match=(inport == "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch" && ip6 && ip6.src == 2013:100:200::/60 && ip.ttl == {0, 1} && !ip.later_frag), action=(icmp6 {eth.dst <-> eth.src; ip6.dst = ip6.src; ip6.src = 2013:100:200::1 ; ip.ttl = 254; icmp6.type = 3; /* Time exceeded */ icmp6.code = 0; /* TTL exceeded in transit */ outport = "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch"; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=31   , match=(inport == "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch" && ip6 && ip6.src == fd99::/64 && ip.ttl == {0, 1} && !ip.later_frag), action=(icmp6 {eth.dst <-> eth.src; ip6.dst = ip6.src; ip6.src = fd99::2 ; ip.ttl = 254; icmp6.type = 3; /* Time exceeded */ icmp6.code = 0; /* TTL exceeded in transit */ outport = "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch"; flags.loopback = 1; output; };)
        table=3 (lr_in_ip_input     ), priority=30   , match=(ip.ttl == {0, 1}), action=(drop;)
        table=3 (lr_in_ip_input     ), priority=0    , match=(1), action=(next;)

      We can see that flow changes to:

        table=3 (lr_in_ip_input     ), priority=60   , match=(ip6.dst == {fe80::c21:aaff:fe36:3a38}), action=(drop;) 

      excluding the nodeIP and things start to work since it hits my src-ip routes

       Impact Assessment: Describe the severity and impact (e.g., network down,availability of a workaround, etc.).

       

       Software Versions: Specify the exact versions in use (e.g.,openvswitch3.1-3.1.0-147.el8fdp).

       

        Issue Type: Indicate whether this is a new issue or a regression (if a regression, state the last known working version).

       

       Reproducibility: Confirm if the issue can be reproduced consistently. If not, describe how often it occurs.

      I can consistently reproduce it in local gateway mode (not sure if this is also impacting shared gateway..)

       Reproduction Steps: Provide detailed steps or scripts to replicate the issue.

       

       Expected Behavior: Describe what should happen under normal circumstances.

      Given my pod in UDNA is trying to reach nodeport service in UDNB, and given in L2 the router has the nodeIP, I expect the drop to happen consistently but drop happens only if at least 1 etp-local load balancer is present. Why is that?

       Observed Behavior: Explain what actually happens.

       

       Troubleshooting Actions: Outline the steps taken to diagnose or resolve the issue so far.

      Ran OVN-Trace:

      Case w/o ETP=Local loadbalancer:

      sh-5.2# #ovn-trace --ct new 'inport=="bgp.network.isolation.4999.bgp.udn.layer2.network.a_bgp-network-isolation-4999_pod-1-ovn-control-plane-net-bgp-udn-layer2-network-a" && eth.src==0a:58:fe:81:a1:1b && eth.dst==0a:58:4d:58:9e:f6 && ip6.src==2013:100:200::5 && ip6.dst==fc00:f853:ccd:e793::4 && ip.ttl==64 && tcp && tcp.src==80 && tcp.dst==30391'
      sh-5.2# ovn-trace --ct new 'inport=="bgp.network.isolation.4999.bgp.udn.layer2.network.a_bgp-network-isolation-4999_pod-1-ovn-control-plane-net-bgp-udn-layer2-network-a" && eth.src==0a:58:fe:81:a1:1b && eth.dst==0a:58:4d:58:9e:f6 && ip6.src==2013:100:200::5 && ip6.dst==fc00:f853:ccd:e793::4 && ip.ttl==64 && tcp && tcp.src==80 && tcp.dst==30391'
      2025-09-17T19:09:59Z|00001|ovntrace|WARN|reg0[2] == 1 && ip6.dst == ^NODEIP_IPv6_0 && tcp.dst == 32324: parsing expression failed
      2025-09-17T19:09:59Z|00002|ovntrace|WARN|reg0[2] == 1 && ip6.dst == ^NODEIP_IPv6_0 && tcp.dst == 32324: parsing expression failed (Syntax error at end of input expecting constant.)
      2025-09-17T19:09:59Z|00003|ovntrace|WARN|ip && ip6.dst == ^NODEIP_IPv6_0: parsing expression failed
      2025-09-17T19:09:59Z|00004|ovntrace|WARN|ip && ip6.dst == ^NODEIP_IPv6_0: parsing expression failed (Syntax error at end of input expecting constant.)
      2025-09-17T19:09:59Z|00005|ovntrace|WARN|ct.new && ip6.dst == ^NODEIP_IPv6_0 && tcp.dst == 32324: parsing expression failed
      2025-09-17T19:09:59Z|00006|ovntrace|WARN|ct.new && ip6.dst == ^NODEIP_IPv6_0 && tcp.dst == 32324: parsing expression failed (Syntax error at end of input expecting constant.)
      2025-09-17T19:09:59Z|00007|ovntrace|WARN|ct.new && !ct.rel && ip6 && ip6.dst == ^NODEIP_IPv6_0 && tcp && tcp.dst == 32324: parsing expression failed
      2025-09-17T19:09:59Z|00008|ovntrace|WARN|ct.new && !ct.rel && ip6 && ip6.dst == ^NODEIP_IPv6_0 && tcp && tcp.dst == 32324: parsing expression failed (Syntax error at end of input expecting constant.)
      2025-09-17T19:09:59Z|00009|ovntrace|WARN|ip6.dst == ^NODEIP_IPv6_0: parsing expression failed
      2025-09-17T19:09:59Z|00010|ovntrace|WARN|ip6.dst == ^NODEIP_IPv6_0: parsing expression failed (Syntax error at end of input expecting constant.)
      2025-09-17T19:09:59Z|00011|socket_util|ERR|[^NODEIP_IPv6_0]:32324: bad IP address "^NODEIP_IPv6_0"
      2025-09-17T19:09:59Z|00012|socket_util|ERR|[^NODEIP_IPv6_0]:32324: bad IP address "^NODEIP_IPv6_0"
      2025-09-17T19:09:59Z|00013|socket_util|ERR|[^NODEIP_IPv6_0]:32324: bad IP address "^NODEIP_IPv6_0"
      2025-09-17T19:09:59Z|00014|socket_util|ERR|[^NODEIP_IPv6_0]:32324: bad IP address "^NODEIP_IPv6_0"
      # tcp6,reg14=0x6,vlan_tci=0x0000,dl_src=0a:58:fe:81:a1:1b,dl_dst=0a:58:4d:58:9e:f6,ipv6_src=2013:100:200::5,ipv6_dst=fc00:f853:ccd:e793::4,ipv6_label=0x00000,nw_tos=0,nw_ecn=0,nw_ttl=64,nw_frag=no,tp_src=80,tp_dst=30391,tcp_flags=0ingress(dp="cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch", inport="bgp.network.isolation.4999.bgp.udn.layer2.network.a_bgp-network-isolation-4999_pod-1-ovn-control-plane-net-bgp-udn-layer2-network-a")
      ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
       0. ls_in_check_port_sec (northd.c:9399): 1, priority 50, uuid 2ee1845c
          reg0[15] = check_in_port_sec();
          next;
       4. ls_in_pre_acl (northd.c:6054): ip, priority 100, uuid 234c76be
          reg0[0] = 1;
          next;
       5. ls_in_pre_lb (northd.c:6264): ip, priority 100, uuid b4e49257
          reg0[2] = 1;
          next;
       6. ls_in_pre_stateful (northd.c:6294): reg0[2] == 1, priority 110, uuid 845318f5
          ct_lb_mark;ct_lb_mark
      ----------
       7. ls_in_acl_hint (northd.c:6363): ct.new && !ct.est, priority 7, uuid 35c34250
          reg0[7] = 1;
          reg0[9] = 1;
          reg0[1] = 1;
          next;
       8. ls_in_acl_eval (northd.c:7480): ip && !ct.est, priority 1, uuid 65626d7e
          next;
      10. ls_in_acl_action (northd.c:7297): 1, priority 0, uuid f21cae76
          reg8[16] = 0;
          reg8[17] = 0;
          reg8[18] = 0;
          next;
      15. ls_in_pre_hairpin (northd.c:8350): ip && ct.trk, priority 100, uuid 0ac98ddf
          reg0[6] = chk_lb_hairpin();
          reg0[12] = chk_lb_hairpin_reply();
          next;
      20. ls_in_acl_after_lb_action (northd.c:7308): reg8[30..31] == 0, priority 500, uuid 8c35a513
          reg8[30..31] = 1;
          next(18);
      20. ls_in_acl_after_lb_action (northd.c:7308): reg8[30..31] == 1, priority 500, uuid 4392131b
          reg8[30..31] = 2;
          next(18);
      20. ls_in_acl_after_lb_action (northd.c:7297): 1, priority 0, uuid 9ba6f0ed
          reg8[16] = 0;
          reg8[17] = 0;
          reg8[18] = 0;
          reg8[30..31] = 0;
          next;
      21. ls_in_stateful (northd.c:8292): reg0[1] == 1 && reg0[13] == 0, priority 100, uuid 681ec4b7
          ct_commit { ct_mark.blocked = 0; ct_mark.allow_established = reg0[20]; ct_label.acl_id = reg2[16..31]; };
          next;
      28. ls_in_l2_lkup (northd.c:10280): eth.dst == 0a:58:4d:58:9e:f6, priority 50, uuid d7baf580
          outport = "stor-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch";
          output;egress(dp="cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch", inport="bgp.network.isolation.4999.bgp.udn.layer2.network.a_bgp-network-isolation-4999_pod-1-ovn-control-plane-net-bgp-udn-layer2-network-a", outport="stor-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch")
      ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
       2. ls_out_pre_acl (northd.c:5906): ip && outport == "stor-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch", priority 110, uuid cb18c879
          next;
       3. ls_out_pre_lb (northd.c:5906): ip && outport == "stor-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch", priority 110, uuid a8eaf894
          next;
       5. ls_out_acl_hint (northd.c:6363): ct.new && !ct.est, priority 7, uuid 8d9727cf
          reg0[7] = 1;
          reg0[9] = 1;
          reg0[1] = 1;
          next;
       6. ls_out_acl_eval (northd.c:7482): ip && !ct.est, priority 1, uuid 4e0942a7
          next;
       8. ls_out_acl_action (northd.c:7308): reg8[30..31] == 0, priority 500, uuid 79435291
          reg8[30..31] = 1;
          next(6);
       6. ls_out_acl_eval (northd.c:7482): ip && !ct.est, priority 1, uuid 4e0942a7
          next;
       8. ls_out_acl_action (northd.c:7308): reg8[30..31] == 1, priority 500, uuid 4502adff
          reg8[30..31] = 2;
          next(6);
       6. ls_out_acl_eval (northd.c:7482): ip && !ct.est, priority 1, uuid 4e0942a7
          next;
       8. ls_out_acl_action (northd.c:7297): 1, priority 0, uuid 9e8f751f
          reg8[16] = 0;
          reg8[17] = 0;
          reg8[18] = 0;
          reg8[30..31] = 0;
          next;
      10. ls_out_stateful (northd.c:8297): reg0[1] == 1 && reg0[13] == 0, priority 100, uuid b4c82179
          ct_commit { ct_mark.blocked = 0; ct_mark.allow_established = reg0[20]; ct_label.acl_id = reg2[16..31]; };
          next;
      11. ls_out_check_port_sec (northd.c:5866): 1, priority 0, uuid 2a5728a4
          reg0[15] = check_out_port_sec();
          next;
      12. ls_out_apply_port_sec (northd.c:5874): 1, priority 0, uuid fe69c7d9
          output;
          /* output to "stor-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch", type "l3gateway" */ingress(dp="GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane", inport="rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch")
      ---------------------------------------------------------------------------------------------------------------------------------------------
       0. lr_in_admission (northd.c:13328): eth.dst == 0a:58:4d:58:9e:f6 && inport == "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch", priority 50, uuid 3678a7c7
          reg9[1] = check_pkt_larger(1414);
          xreg0[0..47] = 0a:58:4d:58:9e:f6;
          next;
       1. lr_in_lookup_neighbor (northd.c:13518): 1, priority 0, uuid d668155e
          reg9[2] = 1;
          next;
       2. lr_in_learn_neighbor (northd.c:13528): reg9[2] == 1 || reg9[3] == 0, priority 100, uuid 6e49e7f2
          mac_cache_use;
          next;
       7. lr_in_defrag (northd.c:12391): ip && ip6.dst == fc00:f853:ccd:e793::4, priority 100, uuid 2c054c14
          ct_dnat;ct_dnat /* assuming no un-dnat entry, so no change */
      -----------------------------------------------------
      14. lr_in_ip_routing_pre (northd.c:13771): 1, priority 0, uuid 28401318
          reg7 = 0;
          next;
      15. lr_in_ip_routing (northd.c:11822): ip6.dst == fc00:f853:ccd:e793::/64, priority 518, uuid 587d3c35
          ip.ttl--;
          reg8[0..15] = 0;
          xxreg0 = ip6.dst;
          xxreg1 = fc00:f853:ccd:e793::4;
          eth.src = 0e:21:aa:36:3a:38;
          outport = "rtoe-GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane";
          flags.loopback = 1;
          reg9[9] = 0;
          next;
      16. lr_in_ip_routing_ecmp (northd.c:13784): reg8[0..15] == 0, priority 150, uuid 160b6fd7
          next;
      17. lr_in_policy (northd.c:10805): inport == "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch" && ip6.dst == fc00:f853:ccd:e793::4, priority 1004, uuid 76ea2699
          xxreg0 = 2013:100:200::2;
          xxreg1 = 2013:100:200::1;
          eth.src = 0a:58:4d:58:9e:f6;
          outport = "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch";
          flags.loopback = 1;
          reg8[0..15] = 0;
          reg9[9] = 0;
          next;
      18. lr_in_policy_ecmp (northd.c:14164): reg8[0..15] == 0, priority 150, uuid e2b4c6a6
          next;
      21. lr_in_arp_resolve (northd.c:14603): outport == "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch" && xxreg0 == 2013:100:200::2, priority 100, uuid cf473a71
          eth.dst = 0a:58:ca:b5:71:63;
          next;
      22. lr_in_chk_pkt_len (northd.c:13328): outport == "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch", priority 50, uuid cee5a52f
          reg9[1] = check_pkt_larger(1414);
          reg4[0..7] = ct_state_save();
          /* reg4[0..7] = 33; */
          next;
      25. lr_in_network_id (northd.c:15150): outport == "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch" && ip6 && xxreg0 == 2013:100:200::1/60, priority 110, uuid 420ded55
          flags.network_id = 0;
          next;
      26. lr_in_arp_request (northd.c:15077): 1, priority 0, uuid d7182a16
          output;egress(dp="GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane", inport="rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch", outport="rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch")
      -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
       0. lr_out_chk_dnat_local (northd.c:16645): 1, priority 0, uuid 71c8d65a
          reg9[4] = 0;
          next;
       1. lr_out_undnat (northd.c:17149): ip, priority 50, uuid e0d159a8
          flags.loopback = 1;
          ct_dnat;ct_dnat /* assuming no un-dnat entry, so no change */
      -----------------------------------------------------
       2. lr_out_post_undnat (northd.c:17153): ip && ct.new, priority 50, uuid 5bafdd81
          ct_commit;
          next;
       3. lr_out_snat (northd.c:16469): ip && ip6.src == 2013:100:200::/60 && (eth.dst == 0a:58:ca:b5:71:63 && (ip6.dst == $a1091196985512978262 || ip6.dst == $a3613484745323146040)) && (!ct.trk || !ct.rpl), priority 300, uuid 9e0c389b
          ct_snat(fd69::20,32768-60999);ct_snat(ip6.src=fd69::20)
      -------------------------
       6. lr_out_delivery (northd.c:15212): outport == "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch", priority 100, uuid 776a3281
          output;
          /* output to "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch", type "l3gateway" */ingress(dp="cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch", inport="stor-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch")
      ------------------------------------------------------------------------------------------------------------------------------------------
       0. ls_in_check_port_sec (northd.c:5783): inport == "stor-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch", priority 70, uuid d10df57d
          reg0[18] = 1;
          next;
       4. ls_in_pre_acl (northd.c:5903): ip && inport == "stor-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch", priority 110, uuid 4a39d840
          next;
       5. ls_in_pre_lb (northd.c:5903): ip && inport == "stor-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch", priority 110, uuid 646484f8
          next;
       7. ls_in_acl_hint (northd.c:6363): ct.new && !ct.est, priority 7, uuid 35c34250
          reg0[7] = 1;
          reg0[9] = 1;
          reg0[1] = 1;
          next;
       8. ls_in_acl_eval (northd.c:7480): ip && !ct.est, priority 1, uuid 65626d7e
          next;
      10. ls_in_acl_action (northd.c:7297): 1, priority 0, uuid f21cae76
          reg8[16] = 0;
          reg8[17] = 0;
          reg8[18] = 0;
          next;
      15. ls_in_pre_hairpin (northd.c:8350): ip && ct.trk, priority 100, uuid 0ac98ddf
          reg0[6] = chk_lb_hairpin();
          reg0[12] = chk_lb_hairpin_reply();
          next;
      20. ls_in_acl_after_lb_action (northd.c:7308): reg8[30..31] == 0, priority 500, uuid 8c35a513
          reg8[30..31] = 1;
          next(18);
      20. ls_in_acl_after_lb_action (northd.c:7308): reg8[30..31] == 1, priority 500, uuid 4392131b
          reg8[30..31] = 2;
          next(18);
      20. ls_in_acl_after_lb_action (northd.c:7297): 1, priority 0, uuid 9ba6f0ed
          reg8[16] = 0;
          reg8[17] = 0;
          reg8[18] = 0;
          reg8[30..31] = 0;
          next;
      21. ls_in_stateful (northd.c:8292): reg0[1] == 1 && reg0[13] == 0, priority 100, uuid 681ec4b7
          ct_commit { ct_mark.blocked = 0; ct_mark.allow_established = reg0[20]; ct_label.acl_id = reg2[16..31]; };
          next;
      28. ls_in_l2_lkup (northd.c:10292): eth.dst == 0a:58:ca:b5:71:63, priority 50, uuid c51de060
          outport = "k8s-cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane";
          output;egress(dp="cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch", inport="stor-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch", outport="k8s-cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane")
      ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
       2. ls_out_pre_acl (northd.c:6057): ip, priority 100, uuid dffbcfc5
          reg0[0] = 1;
          next;
       3. ls_out_pre_lb (northd.c:6267): ip, priority 100, uuid 369457ce
          reg0[2] = 1;
          next;
       4. ls_out_pre_stateful (northd.c:6298): reg0[2] == 1, priority 110, uuid 609c1575
          ct_lb_mark;ct_lb_mark /* default (use --ct to customize) */
      ------------------------------------------------
       5. ls_out_acl_hint (northd.c:6420): ct.est && ct_mark.blocked == 0, priority 1, uuid 8074407a
          reg0[10] = 1;
          next;
       8. ls_out_acl_action (northd.c:7308): reg8[30..31] == 0, priority 500, uuid 79435291
          reg8[30..31] = 1;
          next(6);
       8. ls_out_acl_action (northd.c:7308): reg8[30..31] == 1, priority 500, uuid 4502adff
          reg8[30..31] = 2;
          next(6);
       8. ls_out_acl_action (northd.c:7297): 1, priority 0, uuid 9e8f751f
          reg8[16] = 0;
          reg8[17] = 0;
          reg8[18] = 0;
          reg8[30..31] = 0;
          next;
      11. ls_out_check_port_sec (northd.c:5866): 1, priority 0, uuid 2a5728a4
          reg0[15] = check_out_port_sec();
          next;
      12. ls_out_apply_port_sec (northd.c:5874): 1, priority 0, uuid fe69c7d9
          output;
          /* output to "k8s-cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane", type "" */ 

      Case with the ETP=local load-balancer:

      sh-5.2# ovn-trace --ct new 'inport=="bgp.network.isolation.7215.bgp.udn.layer2.network.a_bgp-network-isolation-7215_pod-1-ovn-control-plane-net-bgp-udn-layer2-network-a" && eth.src==0a:58:c6:5c:16:86 && eth.dst==0a:58:4d:58:9e:f6 && ip6.src==2013:100:200::4 && ip6.dst==fc00:f853:ccd:e793::4 && ip.ttl==64 && tcp && tcp.src==80 && tcp.dst==30821'
      2025-09-17T11:58:12Z|00001|ovntrace|WARN|ip && ip6.dst == ^NODEIP_IPv6_0: parsing expression failed
      2025-09-17T11:58:12Z|00002|ovntrace|WARN|ip && ip6.dst == ^NODEIP_IPv6_0: parsing expression failed (Syntax error at end of input expecting constant.)
      2025-09-17T11:58:12Z|00003|ovntrace|WARN|ip6.dst == ^NODEIP_IPv6_0: parsing expression failed
      2025-09-17T11:58:12Z|00004|ovntrace|WARN|ip6.dst == ^NODEIP_IPv6_0: parsing expression failed (Syntax error at end of input expecting constant.)
      2025-09-17T11:58:12Z|00005|ovntrace|WARN|reg0[2] == 1 && ip6.dst == ^NODEIP_IPv6_0 && tcp.dst == 31843: parsing expression failed
      2025-09-17T11:58:12Z|00006|ovntrace|WARN|reg0[2] == 1 && ip6.dst == ^NODEIP_IPv6_0 && tcp.dst == 31843: parsing expression failed (Syntax error at end of input expecting constant.)
      2025-09-17T11:58:12Z|00007|ovntrace|WARN|ct.new && !ct.rel && ip6 && ip6.dst == ^NODEIP_IPv6_0 && tcp && tcp.dst == 31843: parsing expression failed
      2025-09-17T11:58:12Z|00008|ovntrace|WARN|ct.new && !ct.rel && ip6 && ip6.dst == ^NODEIP_IPv6_0 && tcp && tcp.dst == 31843: parsing expression failed (Syntax error at end of input expecting constant.)
      2025-09-17T11:58:12Z|00009|ovntrace|WARN|ct.new && ip6.dst == ^NODEIP_IPv6_0 && tcp.dst == 31843: parsing expression failed
      2025-09-17T11:58:12Z|00010|ovntrace|WARN|ct.new && ip6.dst == ^NODEIP_IPv6_0 && tcp.dst == 31843: parsing expression failed (Syntax error at end of input expecting constant.)
      2025-09-17T11:58:12Z|00011|socket_util|ERR|[^NODEIP_IPv6_0]:31843: bad IP address "^NODEIP_IPv6_0"
      2025-09-17T11:58:12Z|00012|socket_util|ERR|[^NODEIP_IPv6_0]:31843: bad IP address "^NODEIP_IPv6_0"
      # tcp6,reg14=0x5,vlan_tci=0x0000,dl_src=0a:58:c6:5c:16:86,dl_dst=0a:58:4d:58:9e:f6,ipv6_src=2013:100:200::4,ipv6_dst=fc00:f853:ccd:e793::4,ipv6_label=0x00000,nw_tos=0,nw_ecn=0,nw_ttl=64,nw_frag=no,tp_src=80,tp_dst=30821,tcp_flags=0ingress(dp="cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch", inport="bgp.network.isolation.7215.bgp.udn.layer2.network.a_bgp-network-isolation-7215_pod-1-ovn-control-plane-net-bgp-udn-layer2-network-a")
      ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
       0. ls_in_check_port_sec (northd.c:9399): 1, priority 50, uuid f4b9a220
          reg0[15] = check_in_port_sec();
          next;
       4. ls_in_pre_acl (northd.c:6054): ip, priority 100, uuid 0b6fe346
          reg0[0] = 1;
          next;
       5. ls_in_pre_lb (northd.c:6264): ip, priority 100, uuid 854aaf3c
          reg0[2] = 1;
          next;
       6. ls_in_pre_stateful (northd.c:6294): reg0[2] == 1, priority 110, uuid 89b4ce9d
          ct_lb_mark;ct_lb_mark
      ----------
       7. ls_in_acl_hint (northd.c:6363): ct.new && !ct.est, priority 7, uuid 4067e8f1
          reg0[7] = 1;
          reg0[9] = 1;
          reg0[1] = 1;
          next;
       8. ls_in_acl_eval (northd.c:7480): ip && !ct.est, priority 1, uuid c8b632c8
          next;
      10. ls_in_acl_action (northd.c:7297): 1, priority 0, uuid 75d17823
          reg8[16] = 0;
          reg8[17] = 0;
          reg8[18] = 0;
          next;
      15. ls_in_pre_hairpin (northd.c:8350): ip && ct.trk, priority 100, uuid 1b016a13
          reg0[6] = chk_lb_hairpin();
          reg0[12] = chk_lb_hairpin_reply();
          next;
      20. ls_in_acl_after_lb_action (northd.c:7308): reg8[30..31] == 0, priority 500, uuid 2b2a691f
          reg8[30..31] = 1;
          next(18);
      20. ls_in_acl_after_lb_action (northd.c:7308): reg8[30..31] == 1, priority 500, uuid 1630bf67
          reg8[30..31] = 2;
          next(18);
      20. ls_in_acl_after_lb_action (northd.c:7297): 1, priority 0, uuid 4dd0c2ef
          reg8[16] = 0;
          reg8[17] = 0;
          reg8[18] = 0;
          reg8[30..31] = 0;
          next;
      21. ls_in_stateful (northd.c:8292): reg0[1] == 1 && reg0[13] == 0, priority 100, uuid 7776c12d
          ct_commit { ct_mark.blocked = 0; ct_mark.allow_established = reg0[20]; ct_label.acl_id = reg2[16..31]; };
          next;
      28. ls_in_l2_lkup (northd.c:10280): eth.dst == 0a:58:4d:58:9e:f6, priority 50, uuid c172735a
          outport = "stor-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch";
          output;egress(dp="cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch", inport="bgp.network.isolation.7215.bgp.udn.layer2.network.a_bgp-network-isolation-7215_pod-1-ovn-control-plane-net-bgp-udn-layer2-network-a", outport="stor-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch")
      ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
       2. ls_out_pre_acl (northd.c:5906): ip && outport == "stor-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch", priority 110, uuid e60f824e
          next;
       3. ls_out_pre_lb (northd.c:5906): ip && outport == "stor-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch", priority 110, uuid 179c54e0
          next;
       5. ls_out_acl_hint (northd.c:6363): ct.new && !ct.est, priority 7, uuid f75d8185
          reg0[7] = 1;
          reg0[9] = 1;
          reg0[1] = 1;
          next;
       6. ls_out_acl_eval (northd.c:7482): ip && !ct.est, priority 1, uuid 67348541
          next;
       8. ls_out_acl_action (northd.c:7308): reg8[30..31] == 0, priority 500, uuid 24f700b7
          reg8[30..31] = 1;
          next(6);
       6. ls_out_acl_eval (northd.c:7482): ip && !ct.est, priority 1, uuid 67348541
          next;
       8. ls_out_acl_action (northd.c:7308): reg8[30..31] == 1, priority 500, uuid bebc3d79
          reg8[30..31] = 2;
          next(6);
       6. ls_out_acl_eval (northd.c:7482): ip && !ct.est, priority 1, uuid 67348541
          next;
       8. ls_out_acl_action (northd.c:7297): 1, priority 0, uuid e4d2d88e
          reg8[16] = 0;
          reg8[17] = 0;
          reg8[18] = 0;
          reg8[30..31] = 0;
          next;
      10. ls_out_stateful (northd.c:8297): reg0[1] == 1 && reg0[13] == 0, priority 100, uuid db01876a
          ct_commit { ct_mark.blocked = 0; ct_mark.allow_established = reg0[20]; ct_label.acl_id = reg2[16..31]; };
          next;
      11. ls_out_check_port_sec (northd.c:5866): 1, priority 0, uuid 7fb6366a
          reg0[15] = check_out_port_sec();
          next;
      12. ls_out_apply_port_sec (northd.c:5874): 1, priority 0, uuid 0da06904
          output;
          /* output to "stor-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch", type "l3gateway" */ingress(dp="GR_cluster_udn_bgp.udn.layer2.network.a_ovn-control-plane", inport="rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch")
      ---------------------------------------------------------------------------------------------------------------------------------------------
       0. lr_in_admission (northd.c:13328): eth.dst == 0a:58:4d:58:9e:f6 && inport == "rtos-cluster_udn_bgp.udn.layer2.network.a_ovn_layer2_switch", priority 50, uuid c246c1eb
          reg9[1] = check_pkt_larger(1414);
          xreg0[0..47] = 0a:58:4d:58:9e:f6;
          next;
       1. lr_in_lookup_neighbor (northd.c:13518): 1, priority 0, uuid 718b66c7
          reg9[2] = 1;
          next;
       2. lr_in_learn_neighbor (northd.c:13528): reg9[2] == 1 || reg9[3] == 0, priority 100, uuid 4fd22121
          mac_cache_use;
          next;
       3. lr_in_ip_input (northd.c:12951): ip6.dst == {fc00:f853:ccd:e793::4, fe80::a8c1:d5ff:fe70:6990}, priority 60, uuid f499390e
          drop;
       

       Logs: If you collected logs please provide them (e.g. sos report, /var/log/openvswitch/* , testpmd console)

        1. ovnnb_db.db
          1.99 MB
          Surya Seetharaman
        2. ovn-control-plane-conf.db
          3.20 MB
          Surya Seetharaman
        3. ovnsb_db.db
          8.70 MB
          Surya Seetharaman
        4. without-etp-local-and-with-etp-cluster-ovn-control-plane-conf.db
          128 kB
          Zhanqi Zhao
        5. without-etp-local-and-with-etp-cluster-ovnnb_db.db
          409 kB
          Zhanqi Zhao
        6. without-etp-local-and-with-etp-cluster-ovnsb_db.db
          1.71 MB
          Zhanqi Zhao

              ovnteam@redhat.com OVN Team
              sseethar Surya Seetharaman
              Jianlin Shi Jianlin Shi
              Votes:
              0 Vote for this issue
              Watchers:
              3 Start watching this issue

                Created:
                Updated: