Bug 2129283
| Summary: | the first ping from pod to external would fail | ||
|---|---|---|---|
| Product: | Red Hat Enterprise Linux Fast Datapath | Reporter: | Jianlin Shi <jishi> |
| Component: | ovn22.06 | Assignee: | xsimonar |
| Status: | CLOSED ERRATA | QA Contact: | Jianlin Shi <jishi> |
| Severity: | medium | Docs Contact: | |
| Priority: | medium | ||
| Version: | FDP 21.I | CC: | ctrautma, jiji, mmichels, xsimonar |
| Target Milestone: | --- | ||
| Target Release: | --- | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
| Whiteboard: | |||
| Fixed In Version: | ovn22.06-22.06.0-100.el8fdp | Doc Type: | If docs needed, set a value |
| Doc Text: | Story Points: | --- | |
| Clone Of: | Environment: | ||
| Last Closed: | 2023-03-16 10:15:06 UTC | Type: | Bug |
| Regression: | --- | Mount Type: | --- |
| Documentation: | --- | CRM: | |
| Verified Versions: | Category: | --- | |
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | |
| Cloudforms Team: | --- | Target Upstream Version: | |
| Embargoed: | |||
Patch posted upstream: http://patchwork.ozlabs.org/project/ovn/patch/20221214181920.401427-1-xsimonar@redhat.com/ ovn22.12 fast-datapath-rhel-8 clone created at https://bugzilla.redhat.com/show_bug.cgi?id=2161846 ovn22.12 fast-datapath-rhel-9 clone created at https://bugzilla.redhat.com/show_bug.cgi?id=2161847 ovn22.09 fast-datapath-rhel-8 clone created at https://bugzilla.redhat.com/show_bug.cgi?id=2161848 ovn22.09 fast-datapath-rhel-9 clone created at https://bugzilla.redhat.com/show_bug.cgi?id=2161849 ovn22.06 fast-datapath-rhel-9 clone created at https://bugzilla.redhat.com/show_bug.cgi?id=2161850 ovn22.03 fast-datapath-rhel-8 clone created at https://bugzilla.redhat.com/show_bug.cgi?id=2161851 ovn22.03 fast-datapath-rhel-9 clone created at https://bugzilla.redhat.com/show_bug.cgi?id=2161852 ovn-2021 fast-datapath-rhel-8 clone created at https://bugzilla.redhat.com/show_bug.cgi?id=2161853 ovn-2021 fast-datapath-rhel-9 clone created at https://bugzilla.redhat.com/show_bug.cgi?id=2161854 Verified on ovn22.06-22.06.0-115.el8: [root@wsfd-advnetlab16 bz2129283]# ip netns exec hv1p1 ping 10.89.189.1 -c 1 -w 2 -W2 PING 10.89.189.1 (10.89.189.1) 56(84) bytes of data. 64 bytes from 10.89.189.1: icmp_seq=1 ttl=62 time=9.11 ms --- 10.89.189.1 ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 9.108/9.108/9.108/0.000 ms <=== the first ping passed [root@wsfd-advnetlab16 bz2129283]# rpm -qa | grep -E "openvswitch2.17|ovn22.06" python3-openvswitch2.17-2.17.0-60.el8fdp.x86_64 ovn22.06-host-22.06.0-115.el8fdp.x86_64 openvswitch2.17-2.17.0-60.el8fdp.x86_64 ovn22.06-22.06.0-115.el8fdp.x86_64 ovn22.06-central-22.06.0-115.el8fdp.x86_64 Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (ovn22.06 bug fix and enhancement update), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHBA-2023:1290 |
Description of problem: the first ping from pod to external would fail Version-Release number of selected component (if applicable): ovn22.06-22.06.0-57.el9 How reproducible: Always Steps to Reproduce: 1. setup ovn on server nic_test=ens1f0 systemctl start openvswitch ovs-vsctl --if-exists del-br br-ex ovs-vsctl add-br br-ex ovs-vsctl set open . external_ids:ovn-bridge-mappings=provider:br-ex ip link set br-ex up ip addr flush dev $nic_test ovs-vsctl add-port br-ex $nic_test ip link set $nic_test up systemctl restart openvswitch ip add add 20.0.189.25/24 dev br-ex ip link set br-ex up systemctl start ovn-northd ovn-nbctl set-connection ptcp:6641 ovn-sbctl set-connection ptcp:6642 ovs-vsctl set open . external_ids:system-id=hv1 external_ids:ovn-remote=tcp:20.0.189.25:6642 external_ids:ovn-encap-type=geneve external_ids:ovn-encap-ip=20.0.189.25 systemctl restart ovn-controller 2. setup ovn on client nic_test=ens1f0 systemctl start openvswitch ovs-vsctl --if-exists del-br br-ex ovs-vsctl add-br br-ex ovs-vsctl set open . external_ids:ovn-bridge-mappings=provider:br-ex ip link set br-ex up ip addr flush dev $nic_test ovs-vsctl add-port br-ex $nic_test ip link set $nic_test up systemctl restart openvswitch ip add add 20.0.189.26/24 dev br-ex ip link set br-ex up ovs-vsctl set open . external_ids:system-id=hv0 external_ids:ovn-remote=tcp:20.0.189.25:6642 external_ids:ovn-encap-type=geneve external_ids:ovn-encap-ip=20.0.189.26 systemctl restart ovn-controller 3. configure ovn and start netns on server mac_prefix=0a:0a:b6:fc: ip_subnet=189 hv0_host_mac="00:00:00:00:00:10" hv0_host_ip4="10.244.1.10" hv0_host_ip6="fd00:10:244:1::10" hv0p1_mac="00:00:00:00:00:11" hv0p1_ip4="10.244.1.11" hv0p1_ip6="fd00:10:244:1::11" hv0p2_mac="00:00:00:00:00:12" hv0p2_ip4="10.244.1.12" hv0p2_ip6="fd00:10:244:1::12" hv1_host_mac="00:00:00:00:01:10" hv1_host_ip4="10.244.2.10" hv1_host_ip6="fd00:10:244:2::10" hv1p1_mac="00:00:00:00:01:11" hv1p1_ip4="10.244.2.11" hv1p1_ip6="fd00:10:244:2::11" hv1p2_mac="00:00:00:00:01:12" hv1p2_ip4="10.244.2.12" hv1p2_ip6="fd00:10:244:2::12" hv0tor_mac="00:00:00:0f:00:01" hv0tor_ip4="10.244.1.1" hv0tor_ip6="fd00:10:244:1::1" hv1tor_mac="00:00:00:0f:01:01" hv1tor_ip4="10.244.2.1" hv1tor_ip6="fd00:10:244:2::1" cluster_router_toj_mac="00:00:00:0f:02:01" cluster_router_toj_ip4="100.64.0.1" cluster_router_toj_ip6="fd98::1" gr_hv0_toj_mac="00:00:00:0f:02:02" gr_hv0_toj_ip4="100.64.0.2" gr_hv0_toj_ip6="fd98::2" gr_hv0_toex_mac="${mac_prefix}03:11" gr_hv0_toex_ip4="10.89.$ip_subnet.11" gr_hv0_toex_ip6="fc00:$ip_subnet::11" gr_hv1_toj_mac="00:00:00:0f:02:03" gr_hv1_toj_ip4="100.64.0.3" gr_hv1_toj_ip6="fd98::3" gr_hv1_toex_mac="${mac_prefix}03:12" gr_hv1_toex_ip4="10.89.$ip_subnet.12" gr_hv1_toex_ip6="fc00:$ip_subnet::12" ext1_mac="${mac_prefix}03:01" ext1_ip4="10.89.$ip_subnet.1" ext1_ip6="fc00:$ip_subnet::1" ext2_mac="${mac_prefix}03:02" ext2_ip4="10.89.$ip_subnet.2" ext2_ip6="fc00:$ip_subnet::2" client1=wsfd-advnetlab19.anl.lab.eng.bos.redhat.com hv1_system_id=$(ovn-sbctl find chassis hostname=$(hostname) | awk '/^name/{print $3}' | sed 's/"//g') hv0_system_id=$(ovn-sbctl find chassis hostname=$client1 | awk '/^name/{print $3}' | sed 's/"//g') ovn-nbctl ls-add ls-hv0 \ -- lsp-add ls-hv0 hv0-host \ -- lsp-set-addresses hv0-host "$hv0_host_mac $hv0_host_ip4 $hv0_host_ip6" \ -- lsp-set-port-security hv0-host "$hv0_host_mac $hv0_host_ip4 $hv0_host_ip6" \ -- lsp-add ls-hv0 hv0p1 \ -- lsp-set-addresses hv0p1 "$hv0p1_mac $hv0p1_ip4 $hv0p1_ip6" \ -- lsp-set-port-security hv0p1 "$hv0p1_mac $hv0p1_ip4 $hv0p1_ip6" \ -- lsp-add ls-hv0 hv0p2 \ -- lsp-set-addresses hv0p2 "$hv0p2_mac $hv0p2_ip4 $hv0p2_ip6" \ -- lsp-set-port-security hv0p2 "$hv0p2_mac $hv0p2_ip4 $hv0p2_ip6" \ -- lsp-add ls-hv0 hv0tor \ -- lsp-set-type hv0tor router \ -- lsp-set-options hv0tor router-port=rtohv0 \ -- lsp-set-addresses hv0tor router ovn-nbctl ls-add ls-hv1 \ -- lsp-add ls-hv1 hv1-host \ -- lsp-set-addresses hv1-host "$hv1_host_mac $hv1_host_ip4 $hv1_host_ip6" \ -- lsp-set-port-security hv1-host "$hv1_host_mac $hv1_host_ip4 $hv1_host_ip6" \ -- lsp-add ls-hv1 hv1p1 \ -- lsp-set-addresses hv1p1 "$hv1p1_mac $hv1p1_ip4 $hv1p1_ip6" \ -- lsp-set-port-security hv1p1 "$hv1p1_mac $hv1p1_ip4 $hv1p1_ip6" \ -- lsp-add ls-hv1 hv1p2 \ -- lsp-set-addresses hv1p2 "$hv1p2_mac $hv1p2_ip4 $hv1p2_ip6" \ -- lsp-set-port-security hv1p2 "$hv1p2_mac $hv1p2_ip4 $hv1p2_ip6" \ -- lsp-add ls-hv1 hv1tor \ -- lsp-set-type hv1tor router \ -- lsp-set-options hv1tor router-port=rtohv1 \ -- lsp-set-addresses hv1tor router ovn-nbctl lr-add ovn_cluster_router \ -- lrp-add ovn_cluster_router rtohv0 $hv0tor_mac $hv0tor_ip4/24 $hv0tor_ip6/64 \ -- lrp-add ovn_cluster_router rtohv1 $hv1tor_mac $hv1tor_ip4/24 $hv1tor_ip6/64 \ -- lrp-add ovn_cluster_router cluster_router_toj $cluster_router_toj_mac $cluster_router_toj_ip4/16 $cluster_router_toj_ip6/64 \ -- lrp-set-gateway-chassis rtohv0 $hv0_system_id 10 \ -- lrp-set-gateway-chassis rtohv1 $hv1_system_id 10 \ -- --policy=src-ip lr-route-add ovn_cluster_router 10.244.1.0/24 $gr_hv0_toj_ip4 \ -- --policy=src-ip lr-route-add ovn_cluster_router fd00:10:244:1::/64 $gr_hv0_toj_ip6 \ -- --policy=src-ip lr-route-add ovn_cluster_router 10.244.2.0/24 $gr_hv1_toj_ip4 \ -- --policy=src-ip lr-route-add ovn_cluster_router fd00:10:244:2::/64 $gr_hv1_toj_ip6 ovn-nbctl ls-add join \ -- lsp-add join jto_cluster_router \ -- lsp-set-type jto_cluster_router router \ -- lsp-set-options jto_cluster_router router-port=cluster_router_toj \ -- lsp-set-addresses jto_cluster_router router \ -- lsp-add join jto_gr_hv0 \ -- lsp-set-type jto_gr_hv0 router \ -- lsp-set-options jto_gr_hv0 router-port=gr_hv0_toj \ -- lsp-set-addresses jto_gr_hv0 router \ -- lsp-add join jto_gr_hv1 \ -- lsp-set-type jto_gr_hv1 router \ -- lsp-set-options jto_gr_hv1 router-port=gr_hv1_toj \ -- lsp-set-addresses jto_gr_hv1 router ovn-nbctl lr-add GR-hv0 \ -- lrp-add GR-hv0 gr_hv0_toj $gr_hv0_toj_mac $gr_hv0_toj_ip4/16 $gr_hv0_toj_ip6/64 \ -- lrp-add GR-hv0 gr_hv0_toex $gr_hv0_toex_mac $gr_hv0_toex_ip4/24 $gr_hv0_toex_ip6/64 \ -- set logical_router GR-hv0 options:chassis=$hv0_system_id \ -- lr-route-add GR-hv0 10.244.0.0/16 $cluster_router_toj_ip4 \ -- lr-route-add GR-hv0 fd00:10:244::/48 $cluster_router_toj_ip6 \ -- lr-nat-add GR-hv0 snat $gr_hv0_toex_ip4 10.244.0.0/16 \ -- lr-nat-add GR-hv0 snat $gr_hv0_toex_ip6 fd00:10:244::/48 ovn-nbctl lr-add GR-hv1 \ -- lrp-add GR-hv1 gr_hv1_toj $gr_hv1_toj_mac $gr_hv1_toj_ip4/16 $gr_hv1_toj_ip6/64 \ -- lrp-add GR-hv1 gr_hv1_toex $gr_hv1_toex_mac $gr_hv1_toex_ip4/24 $gr_hv1_toex_ip6/64 \ -- set logical_router GR-hv1 options:chassis=$hv1_system_id \ -- lr-route-add GR-hv1 10.244.0.0/16 $cluster_router_toj_ip4 \ -- lr-route-add GR-hv1 fd00:10:244::/48 $cluster_router_toj_ip6 \ -- lr-nat-add GR-hv1 snat $gr_hv1_toex_ip4 10.244.0.0/16 \ -- lr-nat-add GR-hv1 snat $gr_hv1_toex_ip6 fd00:10:244::/48 ovn-nbctl ls-add ext-hv0 \ -- lsp-add ext-hv0 exto_gr_hv0 \ -- lsp-set-type exto_gr_hv0 router \ -- lsp-set-options exto_gr_hv0 router-port=gr_hv0_toex \ -- lsp-set-addresses exto_gr_hv0 router \ -- lsp-add ext-hv0 hv0_ln \ -- lsp-set-type hv0_ln localnet \ -- lsp-set-options hv0_ln network_name=provider \ -- lsp-set-addresses hv0_ln unknown ovn-nbctl ls-add ext-hv1 \ -- lsp-add ext-hv1 exto_gr_hv1 \ -- lsp-set-type exto_gr_hv1 router \ -- lsp-set-options exto_gr_hv1 router-port=gr_hv1_toex \ -- lsp-set-addresses exto_gr_hv1 router \ -- lsp-add ext-hv1 hv1_ln \ -- lsp-set-type hv1_ln localnet \ -- lsp-set-options hv1_ln network_name=provider \ -- lsp-set-addresses hv1_ln unknown ovn-nbctl set logical_router GR-hv0 options:lb_force_snat_ip=router_ip \ -- set logical_router GR-hv0 options:snat-ct-zone=0 \ -- set logical_router GR-hv0 options:dynamic_neigh_routers=true \ -- set logical_router GR-hv1 options:lb_force_snat_ip=router_ip \ -- set logical_router GR-hv1 options:snat-ct-zone=0 \ -- set logical_router GR-hv1 options:dynamic_neigh_routers=true # create_netns $netns_name # create a netns with specified name, then set lo up create_netns() { [ -z "$1" ] && { echo "$0 ns_name, no name is specified"; return 1; } local ns_name=$1 ip netns del $ns_name ip netns add $ns_name ip netns exec $ns_name ip link set lo up return 0 } # netns_attach_if $ns_name $if_name $mac $ip4 $ip6 $ip4_route $ip6_route # attach specified if into specified netns, and set specified address for the if(mac, ip, etc.) netns_attach_if() { [ $# -lt 2 ] && { echo "usage:$0 ns_name if_name [mac] [ip4] [ip6] [ip4_route] [ip6_route]"; return 1; } local ns_name=$1 local if_name=$2 ip netns exec $ns_name ip link show &> /dev/null || { echo "$ns_name doesn't exist"; return 2; } ip link set $if_name netns $ns_name || { echo "fail to attach"; return 3; } [ -n "$3" ] && ip netns exec $ns_name ip link set $if_name address $3 [ -n "$4" ] && ip netns exec $ns_name ip addr add $4 dev $if_name [ -n "$5" ] && ip netns exec $ns_name ip addr add $5 dev $if_name ip netns exec $ns_name ip link set $if_name up [ -n "$6" ] && ip netns exec $ns_name ip route add default via $6 [ -n "$7" ] && ip netns exec $ns_name ip -6 route add default via $7 return 0 } # hv1-host ovs-vsctl add-port br-int hv1_host -- set interface hv1_host type=internal external_ids:iface-id=hv1-host ip link set hv1_host address $hv1_host_mac ip link set hv1_host up ip addr add $hv1_host_ip4/24 dev hv1_host ip addr add $hv1_host_ip6/64 dev hv1_host ip route add 10.244.0.0/16 via $hv1tor_ip4 dev hv1_host ip -6 route add fd00:10:244::/48 via $hv1tor_ip6 dev hv1_host ncat -k -l 58111 & # hv1p1 ovs-vsctl add-port br-int hv1p1 -- set interface hv1p1 type=internal external_ids:iface-id=hv1p1 create_netns hv1p1 netns_attach_if hv1p1 hv1p1 $hv1p1_mac $hv1p1_ip4/24 $hv1p1_ip6/64 $hv1tor_ip4 $hv1tor_ip6 ip netns exec hv1p1 ncat -k -l 58111 & # hv1p2 ovs-vsctl add-port br-int hv1p2 -- set interface hv1p2 type=internal external_ids:iface-id=hv1p2 create_netns hv1p2 netns_attach_if hv1p2 hv1p2 $hv1p2_mac $hv1p2_ip4/24 $hv1p2_ip6/64 $hv1tor_ip4 $hv1tor_ip6 ip netns exec hv1p2 ncat -k -l 58111 & # ext1 ovs-vsctl add-port br-ex ext1 -- set interface ext1 type=internal create_netns ext1 netns_attach_if ext1 ext1 $ext1_mac $ext1_ip4/24 $ext1_ip6/64 ip netns exec ext1 sysctl -w net.ipv4.conf.all.rp_filter=0 ip netns exec ext1 sysctl -w net.ipv4.conf.all.forwarding=1 ip netns exec ext1 sysctl -w net.ipv6.conf.all.forwarding=1 ip netns exec ext1 ncat -k -l 58111 & 4. create netns on client mac_prefix=0a:0a:b6:fc: ip_subnet=189 hv0_host_mac="00:00:00:00:00:10" hv0_host_ip4="10.244.1.10" hv0_host_ip6="fd00:10:244:1::10" hv0p1_mac="00:00:00:00:00:11" hv0p1_ip4="10.244.1.11" hv0p1_ip6="fd00:10:244:1::11" hv0p2_mac="00:00:00:00:00:12" hv0p2_ip4="10.244.1.12" hv0p2_ip6="fd00:10:244:1::12" hv1_host_mac="00:00:00:00:01:10" hv1_host_ip4="10.244.2.10" hv1_host_ip6="fd00:10:244:2::10" hv1p1_mac="00:00:00:00:01:11" hv1p1_ip4="10.244.2.11" hv1p1_ip6="fd00:10:244:2::11" hv1p2_mac="00:00:00:00:01:12" hv1p2_ip4="10.244.2.12" hv1p2_ip6="fd00:10:244:2::12" hv0tor_mac="00:00:00:0f:00:01" hv0tor_ip4="10.244.1.1" hv0tor_ip6="fd00:10:244:1::1" hv1tor_mac="00:00:00:0f:01:01" hv1tor_ip4="10.244.2.1" hv1tor_ip6="fd00:10:244:2::1" cluster_router_toj_mac="00:00:00:0f:02:01" cluster_router_toj_ip4="100.64.0.1" cluster_router_toj_ip6="fd98::1" gr_hv0_toj_mac="00:00:00:0f:02:02" gr_hv0_toj_ip4="100.64.0.2" gr_hv0_toj_ip6="fd98::2" gr_hv0_toex_mac="${mac_prefix}03:11" gr_hv0_toex_ip4="10.89.$ip_subnet.11" gr_hv0_toex_ip6="fc00:$ip_subnet::11" gr_hv1_toj_mac="00:00:00:0f:02:03" gr_hv1_toj_ip4="100.64.0.3" gr_hv1_toj_ip6="fd98::3" gr_hv1_toex_mac="${mac_prefix}03:12" gr_hv1_toex_ip4="10.89.$ip_subnet.12" gr_hv1_toex_ip6="fc00:$ip_subnet::12" ext1_mac="${mac_prefix}03:01" ext1_ip4="10.89.$ip_subnet.1" ext1_ip6="fc00:$ip_subnet::1" ext2_mac="${mac_prefix}03:02" ext2_ip4="10.89.$ip_subnet.2" ext2_ip6="fc00:$ip_subnet::2" # create_netns $netns_name # create a netns with specified name, then set lo up create_netns() { [ -z "$1" ] && { echo "$0 ns_name, no name is specified"; return 1; } local ns_name=$1 ip netns del $ns_name ip netns add $ns_name ip netns exec $ns_name ip link set lo up return 0 } # netns_attach_if $ns_name $if_name $mac $ip4 $ip6 $ip4_route $ip6_route # attach specified if into specified netns, and set specified address for the if(mac, ip, etc.) netns_attach_if() { [ $# -lt 2 ] && { echo "usage:$0 ns_name if_name [mac] [ip4] [ip6] [ip4_route] [ip6_route]"; return 1; } local ns_name=$1 local if_name=$2 ip netns exec $ns_name ip link show &> /dev/null || { echo "$ns_name doesn't exist"; return 2; } ip link set $if_name netns $ns_name || { echo "fail to attach"; return 3; } [ -n "$3" ] && ip netns exec $ns_name ip link set $if_name address $3 [ -n "$4" ] && ip netns exec $ns_name ip addr add $4 dev $if_name [ -n "$5" ] && ip netns exec $ns_name ip addr add $5 dev $if_name ip netns exec $ns_name ip link set $if_name up [ -n "$6" ] && ip netns exec $ns_name ip route add default via $6 [ -n "$7" ] && ip netns exec $ns_name ip -6 route add default via $7 return 0 } # hv0-host ovs-vsctl add-port br-int hv0_host -- set interface hv0_host type=internal external_ids:iface-id=hv0-host ip link set hv0_host address $hv0_host_mac ip link set hv0_host up ip addr add $hv0_host_ip4/24 dev hv0_host ip addr add $hv0_host_ip6/24 dev hv0_host ip route add 10.244.0.0/16 via $hv0tor_ip4 dev hv0_host ip -6 route add fd00:10:244::/48 via $hv0tor_ip6 dev hv0_host ncat -k -l 58111 & # hv0p1 ovs-vsctl add-port br-int hv0p1 -- set interface hv0p1 type=internal external_ids:iface-id=hv0p1 create_netns hv0p1 netns_attach_if hv0p1 hv0p1 $hv0p1_mac $hv0p1_ip4/24 $hv0p1_ip6/64 $hv0tor_ip4 $hv0tor_ip6 ip netns exec hv0p1 ncat -k -l 58111 & # hv0p2 ovs-vsctl add-port br-int hv0p2 -- set interface hv0p2 type=internal external_ids:iface-id=hv0p2 create_netns hv0p2 netns_attach_if hv0p2 hv0p2 $hv0p2_mac $hv0p2_ip4/24 $hv0p2_ip6/64 $hv0tor_ip4 $hv0tor_ip6 ip netns exec hv0p2 ncat -k -l 58111 & # ext2 ovs-vsctl add-port br-ex ext2 -- set interface ext2 type=internal create_netns ext2 netns_attach_if ext2 ext2 $ext2_mac $ext2_ip4/24 $ext2_ip6/64 ip netns exec ext2 sysctl -w net.ipv4.conf.all.rp_filter=0 ip netns exec ext2 sysctl -w net.ipv4.conf.all.forwarding=1 ip netns exec ext2 sysctl -w net.ipv6.conf.all.forwarding=1 ip netns exec ext2 ncat -k -l 58111 & 5. run ip netns exec hv1p1 ping 10.89.189.1 -c 1 -w 2 -W2 Actual results: + ip netns exec hv1p1 ping 10.89.189.1 -c 1 PING 10.89.189.1 (10.89.189.1) 56(84) bytes of data. --- 10.89.189.1 ping statistics --- 1 packets transmitted, 0 received, 100% packet loss, time 0ms [root@wsfd-advnetlab18 ~]# ip netns exec hv1p1 tcpdump -i hv1p1 -nnle -v 03:58:55.107752 00:00:00:00:01:11 > 00:00:00:0f:01:01, ethertype IPv4 (0x0800), length 98: (tos 0x0, ttl 64, id 24844, offset 0, flags [DF], proto ICMP (1), length 84) 10.244.2.11 > 10.89.189.1: ICMP echo request, id 33700, seq 1, length 64 <=== echo reply is not received by hv1p1 [root@wsfd-advnetlab18 ~]# ip netns exec ext1 tcpdump -i ext1 -nnle -v 03:58:55.111467 0a:0a:b6:fc:03:12 > 0a:0a:b6:fc:03:01, ethertype IPv4 (0x0800), length 98: (tos 0x0, ttl 62, id 24844, offset 0, flags [DF], proto ICMP (1), length 84) 10.89.189.12 > 10.89.189.1: ICMP echo request, id 33700, seq 1, length 64 03:58:55.111522 0a:0a:b6:fc:03:01 > 0a:0a:b6:fc:03:12, ethertype IPv4 (0x0800), length 98: (tos 0x0, ttl 64, id 22727, offset 0, flags [none], proto ICMP (1), length 84) 10.89.189.1 > 10.89.189.12: ICMP echo reply, id 33700, seq 1, length 64 <=== echo reply is sent from ext1 Expected results: pass Additional info: [root@wsfd-advnetlab18 bz2109768]# rpm -qa | grep -E "openvswitch2.17|ovn22.06" openvswitch2.17-2.17.0-43.el9fdp.x86_64 python3-openvswitch2.17-2.17.0-43.el9fdp.x86_64 ovn22.06-22.06.0-57.el9fdp.x86_64 ovn22.06-central-22.06.0-57.el9fdp.x86_64 ovn22.06-host-22.06.0-57.el9fdp.x86_64 the second ping would pass: [root@wsfd-advnetlab18 bz2109768]# bash -x test.sh + ip netns exec hv1p1 ping 10.89.189.1 -c 1 PING 10.89.189.1 (10.89.189.1) 56(84) bytes of data. --- 10.89.189.1 ping statistics --- 1 packets transmitted, 0 received, 100% packet loss, time 0ms [root@wsfd-advnetlab18 bz2109768]# bash -x test.sh + ip netns exec hv1p1 ping 10.89.189.1 -c 1 PING 10.89.189.1 (10.89.189.1) 56(84) bytes of data. 64 bytes from 10.89.189.1: icmp_seq=1 ttl=62 time=2.60 ms --- 10.89.189.1 ping statistics --- 1 packets transmitted, 1 received, 0% packet loss, time 0ms rtt min/avg/max/mdev = 2.600/2.600/2.600/0.000 ms the issue also exist on old version ovn22.06-22.06.0-27, but there is err log on ovn22.06-22.06.0-27 as shown in bz2109768. and on ovn22.06-22.06.0-57, the err log disappeared. the ping still fail.