Uploaded image for project: 'OpenShift Bugs'
  1. OpenShift Bugs
  2. OCPBUGS-56161

[BGP] UDN pod cannot be accessed from external router after advertised on LGW mode

XMLWordPrintable

    • Quality / Stability / Reliability
    • False
    • Hide

      None

      Show
      None
    • None
    • Critical
    • No
    • None
    • None
    • Rejected
    • None
    • None
    • None
    • None
    • None
    • None
    • None
    • None

      Description of problem:

      on LGW mode, UDN pod cannot be accessed from external router after advertised

       

      [root@openshift-qe-045 ~]# podman exec frr ping -c1 30.100.4.5
      PING 30.100.4.5 (30.100.4.5): 56 data bytes--- 30.100.4.5 ping statistics ---
      1 packets transmitted, 0 packets received, 100% packet loss
      
      
      
      ##### from tcpdump show the 192.168.111.3 ip mac is "52:54:00:fd:61:52" which is the bridge of corebm, not the external router mac address. 
      
      sh-5.1# tcpdump -i br-ex -ne icmp
      dropped privs to tcpdump
      tcpdump: verbose output suppressed, use -v[v]... for full protocol decode
      listening on br-ex, link-type EN10MB (Ethernet), snapshot length 262144 bytes
      08:09:17.591395 d2:1f:35:c9:01:b4 > 00:b3:36:70:22:be, ethertype IPv4 (0x0800), length 98: 192.168.111.3 > 30.100.4.5: ICMP echo request, id 278, seq 0, length 64
      08:09:17.592095 00:b3:36:70:22:be > 52:54:00:fd:61:52, ethertype IPv4 (0x0800), length 98: 30.100.4.5 > 192.168.111.3: ICMP echo reply, id 278, seq 0, length 64  
      
      
      [root@openshift-qe-045 ~]# ip a s corebm
      1813: corebm: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
          link/ether 52:54:00:fd:61:52 brd ff:ff:ff:ff:ff:ff
          inet 192.168.111.1/24 brd 192.168.111.255 scope global corebm
             valid_lft forever preferred_lft forever
      
      [root@openshift-qe-045 ~]# podman exec frr ip a
      1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
          link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
          inet 127.0.0.1/8 scope host lo
             valid_lft forever preferred_lft forever
          inet6 ::1/128 scope host 
             valid_lft forever preferred_lft forever
      2: eth0@if1233: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
          link/ether 4a:64:64:47:b2:be brd ff:ff:ff:ff:ff:ff link-netnsid 0
          inet 172.20.0.2/16 brd 172.20.255.255 scope global eth0
             valid_lft forever preferred_lft forever
          inet6 2001:db8:2::2/64 scope global 
             valid_lft forever preferred_lft forever
          inet6 fe80::4864:64ff:fe47:b2be/64 scope link 
             valid_lft forever preferred_lft forever
      3: eth1@if1846: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
          link/ether d2:1f:35:c9:01:b4 brd ff:ff:ff:ff:ff:ff link-netnsid 0
          inet 192.168.111.3/24 scope global eth1
             valid_lft forever preferred_lft forever
          inet6 fd2e:6f44:5dd8:c956::3/64 scope global 
             valid_lft forever preferred_lft forever
          inet6 fe80::d01f:35ff:fec9:1b4/64 scope link 
             valid_lft forever preferred_lft forever

       

       

       FYI, this works well for default network pod

      [root@openshift-qe-045 ~]# podman exec frr ping -c1 10.129.3.2
      PING 10.129.3.2 (10.129.3.2): 56 data bytes
      64 bytes from 10.129.3.2: seq=0 ttl=62 time=1.540 ms--- 10.129.3.2 ping statistics ---
      1 packets transmitted, 1 packets received, 0% packet loss
      round-trip min/avg/max = 1.540/1.540/1.540 ms
      
      ########and 192.168.111.3 mac address is correct with `d2:1f:35:c9:01:b4`
      
      08:16:41.476661 d2:1f:35:c9:01:b4 > 00:b3:36:70:22:be, ethertype IPv4 (0x0800), length 98: 192.168.111.3 > 10.129.3.2: ICMP echo request, id 280, seq 0, length 64
      08:16:41.477650 00:b3:36:70:22:be > d2:1f:35:c9:01:b4, ethertype IPv4 (0x0800), length 98: 10.129.3.2 > 192.168.111.3: ICMP echo reply, id 280, seq 0, length 64
       

       

       

      Version-Release number of selected component (if applicable):

      How reproducible:

      Steps to Reproduce:

      1.

      2.

      3.

      Actual results:

      Expected results:

      Additional info:

      Please fill in the following template while reporting a bug and provide as much relevant information as possible. Doing so will give us the best chance to find a prompt resolution.

      Affected Platforms:

      Is it an

      1. internal CI failure
      2. customer issue / SD
      3. internal RedHat testing failure

      If it is an internal RedHat testing failure:

      • Please share a kubeconfig or creds to a live cluster for the assignee to debug/troubleshoot along with reproducer steps (specially if it's a telco use case like ICNI, secondary bridges or BM+kubevirt).

      If it is a CI failure:

      • Did it happen in different CI lanes? If so please provide links to multiple failures with the same error instance
      • Did it happen in both sdn and ovn jobs? If so please provide links to multiple failures with the same error instance
      • Did it happen in other platforms (e.g. aws, azure, gcp, baremetal etc) ? If so please provide links to multiple failures with the same error instance
      • When did the failure start happening? Please provide the UTC timestamp of the networking outage window from a sample failure run
      • If it's a connectivity issue,
      • What is the srcNode, srcIP and srcNamespace and srcPodName?
      • What is the dstNode, dstIP and dstNamespace and dstPodName?
      • What is the traffic path? (examples: pod2pod? pod2external?, pod2svc? pod2Node? etc)

      If it is a customer / SD issue:

      • Provide enough information in the bug description that Engineering doesn’t need to read the entire case history.
      • Don’t presume that Engineering has access to Salesforce.
      • Do presume that Engineering will access attachments through supportshell.
      • Describe what each relevant attachment is intended to demonstrate (failed pods, log errors, OVS issues, etc).
      • Referring to the attached must-gather, sosreport or other attachment, please provide the following details:
        • If the issue is in a customer namespace then provide a namespace inspect.
        • If it is a connectivity issue:
          • What is the srcNode, srcNamespace, srcPodName and srcPodIP?
          • What is the dstNode, dstNamespace, dstPodName and dstPodIP?
          • What is the traffic path? (examples: pod2pod? pod2external?, pod2svc? pod2Node? etc)
          • Please provide the UTC timestamp networking outage window from must-gather
          • Please provide tcpdump pcaps taken during the outage filtered based on the above provided src/dst IPs
        • If it is not a connectivity issue:
          • Describe the steps taken so far to analyze the logs from networking components (cluster-network-operator, OVNK, SDN, openvswitch, ovs-configure etc) and the actual component where the issue was seen based on the attached must-gather. Please attach snippets of relevant logs around the window when problem has happened if any.
      • When showing the results from commands, include the entire command in the output.  
      • For OCPBUGS in which the issue has been identified, label with “sbr-triaged”
      • For OCPBUGS in which the issue has not been identified and needs Engineering help for root cause, label with “sbr-untriaged”
      • Do not set the priority, that is owned by Engineering and will be set when the bug is evaluated
      • Note: bugs that do not meet these minimum standards will be closed with label “SDN-Jira-template”
      • For guidance on using this template please see
        OCPBUGS Template Training for Networking  components

              sdn-team-bot sdn-team bot
              zzhao1@redhat.com Zhanqi Zhao
              None
              None
              Zhanqi Zhao Zhanqi Zhao
              None
              Votes:
              0 Vote for this issue
              Watchers:
              6 Start watching this issue

                Created:
                Updated:
                Resolved: