Hi Omer,

Your config looks OK. I would start debugging with a packet trace.

/neale


De : <vpp-dev@lists.fd.io> au nom de Omer Majeed <omer.majeed...@gmail.com>
Date : lundi 7 janvier 2019 à 20:47
À : "vpp-dev@lists.fd.io" <vpp-dev@lists.fd.io>
Objet : [vpp-dev] :: GRE tunnel dropping MPLS packets

Hi,

I'm running VPP on Centos 7 machine (say machine A), and running an application 
on other centos 7 machine (say machine B).
I've made a GRE tunnel between those 2 machines.

vpp# show gre tunnel
[0] instance 0 src 192.168.17.10 dst 192.168.17.6 fib-idx 0 sw-if-idx 8 payload 
L3

Made that gre0 interface mpls enabled.
I added outgoing mpls routes in VPP for IPs on machine B

vpp# show ip fib table 2
192.168.100.4/32<http://192.168.100.4/32>
  unicast-ip4-chain
  [@0]: dpo-load-balance: [proto:ip4 index:47 buckets:1 uRPF:49 to:[0:0]]
    [0] [@10]: mpls-label[2]:[25:64:0:eos]
        [@1]: mpls via 0.0.0.0 gre0: mtu:9000 
4500000000000000fe2f196ec0a8110ac0a8110600008847
          stacked-on:
            [@3]: ipv4 via 192.168.17.6 loop9000: mtu:9000 
ac1f6b20498fdead000000280800
192.168.100.5/32<http://192.168.100.5/32>
  unicast-ip4-chain
  [@0]: dpo-load-balance: [proto:ip4 index:46 buckets:1 uRPF:47 to:[0:0]]
    [0] [@10]: mpls-label[0]:[30:64:0:eos]
        [@1]: mpls via 0.0.0.0 gre0: mtu:9000 
4500000000000000fe2f196ec0a8110ac0a8110600008847
          stacked-on:
            [@3]: ipv4 via 192.168.17.6 loop9000: mtu:9000 
ac1f6b20498fdead000000280800

For reverse traffic I've added MPLS routes given below

vpp# show mpls fib table 0
18:eos/21 fib:0 index:29 locks:2
  src:API refs:1 entry-flags:uRPF-exempt, src-flags:added,contributing,active,
    path-list:[35] locks:20 flags:shared, uPRF-list:31 len:0 itfs:[]
      path:[35] pl-index:35 ip4 weight=1 pref=0 deag:  oper-flags:resolved,
        [@0]: dst-address,unicast lookup in ipv4-VRF:2

 forwarding:   mpls-eos-chain
  [@0]: dpo-load-balance: [proto:mpls index:32 buckets:1 uRPF:32 to:[0:0]]
    [0] [@6]: mpls-disposition:[0]:[ip4, pipe]
        [@7]: dst-address,unicast lookup in ipv4-VRF:2
19:eos/21 fib:0 index:38 locks:2
  src:API refs:1 entry-flags:uRPF-exempt, src-flags:added,contributing,active,
    path-list:[35] locks:20 flags:shared, uPRF-list:31 len:0 itfs:[]
      path:[35] pl-index:35 ip4 weight=1 pref=0 deag:  oper-flags:resolved,
        [@0]: dst-address,unicast lookup in ipv4-VRF:2

 forwarding:   mpls-eos-chain
  [@0]: dpo-load-balance: [proto:mpls index:41 buckets:1 uRPF:41 to:[0:0]]
    [0] [@6]: mpls-disposition:[9]:[ip4, pipe]
        [@7]: dst-address,unicast lookup in ipv4-VRF:2

When I try to ping from machine B to an IP in machine B (VPP VRF 2) through 
that GRE tunnel, I receive packets but GRE tunnel drops the packets.
vpp# show int gre0
        Name               Idx       State          Counter          Count
gre0                              8         up       rx packets                
66
                                                         rx bytes               
   6996
                                                         drops                  
      66
                                                         (nil)                  
         66

Is there anything else that needs to be done to get MPLS over GRE working?
Any suggestions on how to debug the issue?

Thanks a lot.
Best Regards,
Omer
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.

View/Reply Online (#11864): https://lists.fd.io/g/vpp-dev/message/11864
Mute This Topic: https://lists.fd.io/mt/28966281/21656
Group Owner: vpp-dev+ow...@lists.fd.io
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to