Gateway_less_Fwd: Ping to AAP is not working when IP Fabric is configured as provider network

Bug #1711499 reported by Chandra Sekhar Reddy Mallam
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Juniper Openstack
Status tracked in Trunk
Trunk
Fix Committed
High
Hari Prasad Killi

Bug Description

Ping to AAP is not working when IP Fabric is configured as provider network

Create a VN (say left_vn: 10.10.10.0/24)and configure provider network as IP Fabric network
Launch 3 VMs across compute nodes in left_vn
Now, configure AAP (say 10.10.10.100/32) on 2 VMIs with active-active mode
Try pinging AAP from 3rd VM and ping fails. Ping to AAP is going through overlay instead of underlay

Build Info
----------
root@nodek11:~# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.5 LTS
Release: 14.04
Codename: trusty
root@nodek11:~#

Mitaka 4.1.0.0-23

Topology
--------
+---------------+ +----------------+
| | | |
| | | |
| nodei15 | | nodek11 |
| (controller)| | (compute) |
| +---+ +------+ |
+---------------+ | | +----------------+
                    | +
                  IP+Fabric Network
                      + +
+---------------+ | | +----------------+
| | | | | |
| +-----+ +-----+ |
| nodec23 | | nodeb3 |
| (compute) | | (compute) |
| | | |
+---------------+ +----------------+

Please see the log below:

root@nodek11:~# vif --list
Vrouter Interface Table

Flags: P=Policy, X=Cross Connect, S=Service Chain, Mr=Receive Mirror
       Mt=Transmit Mirror, Tc=Transmit Checksum Offload, L3=Layer 3, L2=Layer 2
       D=DHCP, Vp=Vhost Physical, Pr=Promiscuous, Vnt=Native Vlan Tagged
       Mnp=No MAC Proxy, Dpdk=DPDK PMD Interface, Rfl=Receive Filtering Offload, Mon=Interface is Monitored
       Uuf=Unknown Unicast Flood, Vof=VLAN insert/strip offload, Df=Drop New Flows, L=MAC Learning Enabled
       Proxy=MAC Requests Proxied Always, Er=Etree Root

vif0/0 OS: em1 (Speed 1000, Duplex 1)
            Type:Physical HWaddr:0c:c4:7a:32:0a:88 IPaddr:0.0.0.0
            Vrf:0 Flags:L3L2VpEr QOS:-1 Ref:6
            RX packets:10853 bytes:1240662 errors:0
            TX packets:2577 bytes:2065891 errors:0
            Drops:14

vif0/1 OS: vhost0
            Type:Host HWaddr:0c:c4:7a:32:0a:88 IPaddr:10.204.216.231
            Vrf:0 Flags:PL3DEr QOS:-1 Ref:7
            RX packets:2554 bytes:2063813 errors:0
            TX packets:11022 bytes:1247680 errors:0
            Drops:1

vif0/2 OS: pkt0
            Type:Agent HWaddr:00:00:5e:00:01:00 IPaddr:0.0.0.0
            Vrf:65535 Flags:L3Er QOS:-1 Ref:3
            RX packets:567 bytes:64562 errors:0
            TX packets:7466 bytes:787521 errors:0
            Drops:0

vif0/3 OS: tap0346accc-11
            Type:Virtual HWaddr:00:00:5e:00:01:00 IPaddr:10.10.10.3
            Vrf:65535 Flags:L3L2DProxyEr QOS:-1 Ref:1
            RX packets:0 bytes:0 errors:0
            TX packets:0 bytes:0 errors:0
            Drops:0

vif0/4 OS: tapb0cdc481-1a
            Type:Virtual HWaddr:00:00:5e:00:01:00 IPaddr:10.10.10.4
            Vrf:0 Flags:PL3L2DProxyEr QOS:-1 Ref:5
            RX packets:607 bytes:54100 errors:0
            TX packets:393 bytes:33418 errors:0
            Drops:226

vif0/4350 OS: pkt3
            Type:Stats HWaddr:00:00:00:00:00:00 IPaddr:0.0.0.0
            Vrf:65535 Flags:L3L2 QOS:0 Ref:1
            RX packets:0 bytes:0 errors:0
            TX packets:0 bytes:0 errors:0
            Drops:0

vif0/4351 OS: pkt1
            Type:Stats HWaddr:00:00:00:00:00:00 IPaddr:0.0.0.0
            Vrf:65535 Flags:L3L2 QOS:0 Ref:1
            RX packets:0 bytes:0 errors:0
            TX packets:0 bytes:0 errors:0
            Drops:0

root@nodek11:~# rt --dump 2 | grep 10.10.10.100 <=== Left VN
10.10.10.100/32 32 LF 23 17 -
root@nodek11:~# nh --get 17
Id:17 Type:Tunnel Fmly: AF_INET Rid:0 Ref_cnt:8 Vrf:0
              Flags:Valid, MPLSoUDP, Etree Root,
              Oif:0 Len:14 Data:00 25 90 93 d2 44 0c c4 7a 32 0a 88 08 00
              Sip:10.204.216.231 Dip:10.204.216.34

root@nodek11:~# flow --match 10.10.10.100
Flow table(size 80609280, entries 629760)

Entries: Created 20 Added 20 Deleted 12 Changed 15 Processed 20 Used Overflow entries 0
(Created Flows/CPU: 2 0 0 0 0 1 1 0 0 1 0 0 0 0 1 1 2 4 0 1 2 2 2 0 0 0 0 0 0 0 0 0)(oflows 0)

Action:F=Forward, D=Drop N=NAT(S=SNAT, D=DNAT, Ps=SPAT, Pd=DPAT, L=Link Local Port)
 Other:K(nh)=Key_Nexthop, S(nh)=RPF_Nexthop
 Flags:E=Evicted, Ec=Evict Candidate, N=New Flow, M=Modified Dm=Delete Marked
TCP(r=reverse):S=SYN, F=FIN, R=RST, C=HalfClose, E=Established, D=Dead

Listing flows matching ([10.10.10.100]:*)

    Index Source:Port/Destination:Port Proto(V)
-----------------------------------------------------------------------------------
   315424<=>426048 10.10.10.100:14429 1 (2->2) <==============
                         10.10.10.4:0
(Gen: 1, K(nh):20, Action:F, Flags:, QOS:-1, S(nh):17, Stats:8/672, SPort 55278,
 TTL 0, Sinfo 0.0.0.0)

   426048<=>315424 10.10.10.4:14429 1 (0->2) <===============
                         10.10.10.100:0
(Gen: 1, K(nh):20, Action:F, Flags:, QOS:-1, S(nh):20, Stats:9/882, SPort 53148,
 TTL 0, Sinfo 4.0.0.0)

root@nodek11:~# flow --match 10.10.10.100
Flow table(size 80609280, entries 629760)

Entries: Created 20 Added 20 Deleted 12 Changed 15 Processed 20 Used Overflow entries 0
(Created Flows/CPU: 2 0 0 0 0 1 1 0 0 1 0 0 0 0 1 1 2 4 0 1 2 2 2 0 0 0 0 0 0 0 0 0)(oflows 0)

Action:F=Forward, D=Drop N=NAT(S=SNAT, D=DNAT, Ps=SPAT, Pd=DPAT, L=Link Local Port)
 Other:K(nh)=Key_Nexthop, S(nh)=RPF_Nexthop
 Flags:E=Evicted, Ec=Evict Candidate, N=New Flow, M=Modified Dm=Delete Marked
TCP(r=reverse):S=SYN, F=FIN, R=RST, C=HalfClose, E=Established, D=Dead

Listing flows matching ([10.10.10.100]:*)

    Index Source:Port/Destination:Port Proto(V)
-----------------------------------------------------------------------------------
   315424<=>426048 10.10.10.100:14429 1 (2->2)
                         10.10.10.4:0
(Gen: 1, K(nh):20, Action:F, Flags:, QOS:-1, S(nh):17, Stats:10/840,
 SPort 55278, TTL 0, Sinfo 0.0.0.0)

   426048<=>315424 10.10.10.4:14429 1 (0->2)
                         10.10.10.100:0
(Gen: 1, K(nh):20, Action:F, Flags:, QOS:-1, S(nh):20, Stats:10/980,
 SPort 53148, TTL 0, Sinfo 4.0.0.0)

root@nodek11:~# rt --dump 0 | grep 10.10.10.100
10.10.10.100/32 32 PT - 24 0:25:90:93:d2:44(142252)
root@nodek11:~# nh --get 24
Id:24 Type:Encap Fmly: AF_INET Rid:0 Ref_cnt:4 Vrf:0
              Flags:Valid, Etree Root,
              EncapFmly:0806 Oif:0 Len:14
              Encap Data: 00 25 90 93 d2 44 0c c4 7a 32 0a 88 08 00

root@nodek11:~#

root@nodek11:~# tcpdump -n -i em1 host 10.204.216.231 -vvv -xxx
tcpdump: WARNING: em1: no IPv4 address assigned
tcpdump: listening on em1, link-type EN10MB (Ethernet), capture size 65535 bytes
...
09:35:17.084467 IP (tos 0x0, ttl 64, id 0, offset 0, flags [none], proto UDP (17), length 116) <==== Ping from VM to AAP using overlay
    10.204.216.231.53148 > 10.204.216.34.6635: [no cksum] UDP, length 88
0x0000: 0025 9093 d244 0cc4 7a32 0a88 0800 4500
0x0010: 0074 0000 0000 4011 b3d7 0acc d8e7 0acc
0x0020: d822 cf9c 19eb 0060 0000 0001 713f 4500
0x0030: 0054 0000 4000 3f01 132e 0a0a 0a04 0a0a
0x0040: 0a64 0800 6b22 385d 002a 7e67 9659 0000
0x0050: 0000 7fc2 0100 0000 0000 1011 1213 1415
0x0060: 1617 1819 1a1b 1c1d 1e1f 2021 2223 2425
0x0070: 2627 2829 2a2b 2c2d 2e2f 3031 3233 3435
0x0080: 3637
^C
6 packets captured
27 packets received by filter
0 packets dropped by kernel
root@nodek11:~# tcpdump -n -i em1 host 10.10.10.4 -vvv -xxx
tcpdump: WARNING: em1: no IPv4 address assigned
tcpdump: listening on em1, link-type EN10MB (Ethernet), capture size 65535 bytes
09:35:25.148522 IP (tos 0x0, ttl 63, id 41940, offset 0, flags [none], proto ICMP (1), length 84) <=== Ping from AAP is using underlay
    10.10.10.100 > 10.10.10.4: ICMP echo reply, id 14429, seq 50, length 64
0x0000: 0cc4 7a32 0a88 0025 9093 d244 0800 4500
0x0010: 0054 a3d4 0000 3f01 af59 0a0a 0a64 0a0a
0x0020: 0a04 0000 8020 385d 0032 8667 9659 0000
0x0030: 0000 69bc 0200 0000 0000 1011 1213 1415
0x0040: 1617 1819 1a1b 1c1d 1e1f 2021 2223 2425
0x0050: 2627 2829 2a2b 2c2d 2e2f 3031 3233 3435
0x0060: 3637
09:35:26.156650 IP (tos 0x0, ttl 63, id 41941, offset 0, flags [none], proto ICMP (1), length 84)
    10.10.10.100 > 10.10.10.4: ICMP echo reply, id 14429, seq 51, length 64
0x0000: 0cc4 7a32 0a88 0025 9093 d244 0800 4500
0x0010: 0054 a3d5 0000 3f01 af58 0a0a 0a64 0a0a
0x0020: 0a04 0000 4400 385d 0033 8767 9659 0000
0x0030: 0000 a4db 0200 0000 0000 1011 1213 1415
0x0040: 1617 1819 1a1b 1c1d 1e1f 2021 2223 2425
0x0050: 2627 2829 2a2b 2c2d 2e2f 3031 3233 3435
0x0060: 3637
^C
2 packets captured
4 packets received by filter
0 packets dropped by kernel
root@nodek11:~#

Tags: vrouter
summary: - IP_fabric_FWD: Ping to AAP is not working when IP Fabric is configured
- as provider network
+ Gateway_less_Fwd: Ping to AAP is not working when IP Fabric is
+ configured as provider network
Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : [Review update] master

Review in progress for https://review.opencontrail.org/34870
Submitter: Hari Prasad Killi (<email address hidden>)

Revision history for this message
OpenContrail Admin (ci-admin-f) wrote : A change has been merged

Reviewed: https://review.opencontrail.org/34870
Committed: http://github.com/Juniper/contrail-controller/commit/4abd1ff567e169d8943f2eb642dd7d1f60efa620
Submitter: Zuul (<email address hidden>)
Branch: master

commit 4abd1ff567e169d8943f2eb642dd7d1f60efa620
Author: Hari Prasad Killi <email address hidden>
Date: Thu Aug 24 11:22:26 2017 +0530

Propagate the native encapsulation to ecmp path

While adding ecmp path, tunnel bitmap was resetting native encapsulation type.
Update to retain this.

Change-Id: I0d4bd61189d89541acf0055c8a4e8c16fbcde15a
closes-bug: #1711499

Nischal Sheth (nsheth)
information type: Proprietary → Public
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.