Pim,
Thanks for the reply. I pulled in  
https://gerrit.fd.io/r/c/vpp/+/31122<https://urldefense.com/v3/__https://gerrit.fd.io/r/c/vpp/*/31122__;Kw!!ACWV5N9M2RV99hQ!cyVTSFNEzYVndco9Q2FNzR7L7kG9EPVImqdNMLQQTqKLS5A1eTzckOmvFR_ajOu2_A$>.
 Set the default netns in startup.conf. Now it works. tap3 doesn't have the IP 
address in Linux.

vpp# show int addr
host-vpp-veth (up):
  L3 192.168.3.3/31
ipip0 (up):
  unnumbered, use tn-eth0
  L3 192.168.1.6/24
ipip1 (up):
  unnumbered, use tn-eth1
  L3 192.168.10.6/24
local0 (dn):
tap3 (up):
tn-eth0 (up):
  L3 192.168.1.6/24
tn-eth1 (up):
  L3 192.168.10.6/24
tn-eth2 (up):
  L3 192.168.100.5/24


Wei
________________________________
From: vpp-dev@lists.fd.io <vpp-dev@lists.fd.io> on behalf of Pim van Pelt 
<p...@ipng.nl>
Sent: Thursday, February 24, 2022 5:17 AM
To: Wei Huang <wei.hu.hu...@oracle.com>
Cc: vpp-dev@lists.fd.io <vpp-dev@lists.fd.io>
Subject: [External] : Re: [vpp-dev] linux-cp created tap interface send out 
packets issue

Wei,

I think Linux CP starts a netlink listener in what is configured as the default 
netns (in your case, <unset> implies this is the default namespace). This means 
any 'ip' command you issue from Linux side won't be seen by VPP. A few comments:

- You are running 21.06 which is not complete. Please build from HEAD or use 
the 22.02 release that was published this week.
- We merged a more (but not yet fully) complete Linux CP in 
https://gerrit.fd.io/r/c/vpp/+/31122<https://urldefense.com/v3/__https://gerrit.fd.io/r/c/vpp/*/31122__;Kw!!ACWV5N9M2RV99hQ!cyVTSFNEzYVndco9Q2FNzR7L7kG9EPVImqdNMLQQTqKLS5A1eTzckOmvFR_ajOu2_A$>
 for 22.02 release
- The current implementation can only service linux interfaces in one (1) 
network namespace
- I recommend you actually do set the default namespace /before/ creating your 
first LIP; either in startup.conf under linux-cp { default netns inline_mgt_net 
}; or on the CLI with lcp default netns inline_mgmt_net.

Can you share as well 'show int addr' to see if the IP address you set on the 
Linux side, made its way into the VPP dataplane ?

groet,
Pim

On Thu, Feb 24, 2022 at 2:49 AM Wei Huang 
<wei.hu.hu...@oracle.com<mailto:wei.hu.hu...@oracle.com>> wrote:
I am using VPP v21.06. Enabled linux-cp plugin. Created lcp as follows:

vppctl lcp create tn-eth2 host-if vpp2 netns inline_mgt_net

vppctl ip mroute add 
224.0.0.0/24<https://urldefense.com/v3/__http://224.0.0.0/24__;!!ACWV5N9M2RV99hQ!cyVTSFNEzYVndco9Q2FNzR7L7kG9EPVImqdNMLQQTqKLS5A1eTzckOmvFR9cOFbXAw$>
 via local Forward

vppctl ip mroute add 
224.0.0.0/24<https://urldefense.com/v3/__http://224.0.0.0/24__;!!ACWV5N9M2RV99hQ!cyVTSFNEzYVndco9Q2FNzR7L7kG9EPVImqdNMLQQTqKLS5A1eTzckOmvFR9cOFbXAw$>
 via tn-eth2 Accept

Then bring up vpp2 in Linux:

ip netns exec inline_mgt_net ip addr add 
192.168.100.5/24<https://urldefense.com/v3/__http://192.168.100.5/24__;!!ACWV5N9M2RV99hQ!cyVTSFNEzYVndco9Q2FNzR7L7kG9EPVImqdNMLQQTqKLS5A1eTzckOmvFR89NbEMfw$>
 dev vpp2

ip netns exec inline_mgt_net ip link set dev vpp2 up

When I ping from my host (192.168.100.20) to 192.168.100.5 via tn-eth2, I can 
see packets get sent out via tap3, but using tshark in Linux trying to see 
packets on vpp2, I don't see any packets received on vpp2. ifconfig also show 
vpp2 has no Rx packets:

bash-4.2# ip netns exec inline_mgt_net ifconfig
lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 57333  bytes 3304558 (3.1 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 57333  bytes 3304558 (3.1 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0


vpp2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 2004
        inet 192.168.100.5  netmask 255.255.255.0  broadcast 0.0.0.0
        inet6 fe80::f816:3fff:fe3a:2883  prefixlen 64  scopeid 0x20<link>
        ether fa:16:3f:3a:28:83  txqueuelen 1000  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 1  overruns 0  frame 0
        TX packets 842  bytes 65492 (63.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Packet trace in VPP:
Packet 1

02:16:23:738692: dpdk-input
  tn-eth2 rx queue 0
  buffer 0x9a8d7: current data 0, length 98, buffer-pool 0, ref-count 1, 
totlen-nifb 0, trace handle 0x0
                  ext-hdr-valid
                  l4-cksum-computed l4-cksum-correct
  PKT MBUF: port 2, nb_segs 1, pkt_len 98
    buf_len 2176, data_len 98, ol_flags 0x0, data_off 128, phys_addr 0xaaaa3640
    packet_type 0x0 l2_len 0 l3_len 0 outer_l2_len 0 outer_l3_len 0
    rss 0x0 fdir.hi 0x0 fdir.lo 0x0
  IP4: fa:16:3f:53:ad:d6 -> fa:16:3f:3a:28:83
  ICMP: 192.168.100.20 -> 192.168.100.5
    tos 0x00, ttl 64, length 84, checksum 0xf6a3 dscp CS0 ecn NON_ECN
    fragment id 0xfa9a, flags DONT_FRAGMENT
  ICMP echo_request checksum 0x9a6a id 15858
02:16:23:738719: ethernet-input
  frame: flags 0x1, hw-if-index 3, sw-if-index 3
  IP4: fa:16:3f:53:ad:d6 -> fa:16:3f:3a:28:83
02:16:23:738730: ip4-input
  ICMP: 192.168.100.20 -> 192.168.100.5
    tos 0x00, ttl 64, length 84, checksum 0xf6a3 dscp CS0 ecn NON_ECN
    fragment id 0xfa9a, flags DONT_FRAGMENT
  ICMP echo_request checksum 0x9a6a id 15858
02:16:23:738737: ip4-lookup
  fib 0 dpo-idx 10 flow hash: 0x00000000
  ICMP: 192.168.100.20 -> 192.168.100.5
    tos 0x00, ttl 64, length 84, checksum 0xf6a3 dscp CS0 ecn NON_ECN
    fragment id 0xfa9a, flags DONT_FRAGMENT
  ICMP echo_request checksum 0x9a6a id 15858
02:16:23:738742: ip4-local
    ICMP: 192.168.100.20 -> 192.168.100.5
      tos 0x00, ttl 64, length 84, checksum 0xf6a3 dscp CS0 ecn NON_ECN
      fragment id 0xfa9a, flags DONT_FRAGMENT
    ICMP echo_request checksum 0x9a6a id 15858
02:16:23:738745: ip4-icmp-input
  ICMP: 192.168.100.20 -> 192.168.100.5
    tos 0x00, ttl 64, length 84, checksum 0xf6a3 dscp CS0 ecn NON_ECN
    fragment id 0xfa9a, flags DONT_FRAGMENT
  ICMP echo_request checksum 0x9a6a id 15858
02:16:23:738746: ip4-punt
    ICMP: 192.168.100.20 -> 192.168.100.5
      tos 0x00, ttl 64, length 84, checksum 0xf6a3 dscp CS0 ecn NON_ECN
      fragment id 0xfa9a, flags DONT_FRAGMENT
    ICMP echo_request checksum 0x9a6a id 15858
02:16:23:738749: ip4-punt-redirect
  via redirect:0
02:16:23:738751: ip4-dvr-dpo
     sw_if_index:7
02:16:23:738753: ip4-dvr-reinject
     sw_if_index:7
02:16:23:738754: tap3-output
  tap3 qos_class: 0 qos_type : 0
  IP4: fa:16:3f:53:ad:d6 -> fa:16:3f:3a:28:83
  ICMP: 192.168.100.20 -> 192.168.100.5
    tos 0x00, ttl 64, length 84, checksum 0xf6a3 dscp CS0 ecn NON_ECN
    fragment id 0xfa9a, flags DONT_FRAGMENT
  ICMP echo_request checksum 0x9a6a id 15858


vpp# show lcp
lcp default netns '<unset>'
itf-pair: [0] tn-eth2 tap3 vpp2 11 type tap netns inline_mgt_net
vpp# show int
              Name               Idx    State  MTU (L3/IP4/IP6/MPLS)     
Counter          Count
host-vpp-veth                     4      up          9000/0/0/0     rx packets  
                 318
                                                                    rx bytes    
               20450
                                                                    tx packets  
                 410
                                                                    tx bytes    
               26380
                                                                    drops       
                   3
                                                                    ip4         
                 181
                                                                    ip6         
                   2
ipip0                             5      up          9000/0/0/0     rx packets  
                 274
                                                                    rx bytes    
               26832
                                                                    ip4         
                 274
ipip1                             6      up          9000/0/0/0     tx packets  
                 180
                                                                    tx bytes    
               22244
local0                            0     down          0/0/0/0
tap3                              7      up          9000/0/0/0     rx packets  
                 832
                                                                    rx bytes    
               64712
                                                                    tx packets  
                7954
                                                                    tx bytes    
              766484
                                                                    drops       
                7704
                                                                    ip4         
                 815
                                                                    ip6         
                  17
tn-eth0                           1      up          9000/0/0/0     rx packets  
                1033
                                                                    rx bytes    
              113410
                                                                    tx packets  
                 748
                                                                    tx bytes    
               75784
                                                                    drops       
                 275
                                                                    ip4         
                 829
                                                                    ip6         
                   2
tn-eth1                           2      up          9000/0/0/0     rx packets  
                 733
                                                                    rx bytes    
               75370
                                                                    tx packets  
                 910
                                                                    tx bytes    
               99792
                                                                    drops       
                 274
                                                                    ip4         
                 547
                                                                    ip6         
                   2
tn-eth2                           3      up          9000/0/0/0     rx packets  
                8183
                                                                    rx bytes    
              776322
                                                                    tx packets  
                1048
                                                                    tx bytes    
               73712
                                                                    drops       
                   7
                                                                    ip4         
                7957
                                                                    ip6         
                   4
vpp# show error
   Count                  Node                              Reason              
 Severity
      1094             ikev2-ip4                          processed             
   info
         2             ikev2-ip4                    ike_sa_init_retransmit      
   info
       542             ikev2-ip4                          keepalive             
   info
         4             ikev2-ip4                          rekey_req             
   info
         4             ikev2-ip4                         init_sa_req            
   info
         2             ikev2-ip4                         ike_auth_req           
   info
        11             dpdk-input                          no error             
   error
       741             arp-reply                       ARP replies sent         
   error
       542           ip4-udp-lookup                        No error             
   error
       274          esp4-decrypt-tun                  ESP pkts received         
   error
       180          esp4-encrypt-tun                  ESP pkts received         
   error
       274          ipsec4-tun-input                good packets received       
   error
         7          ipsec4-tun-input                  no matching tunnel        
   error
       181             ip4-inacl                       input ACL misses         
   error
         1             ip4-input                      valid ip4 packets         
   error
         3             ip4-input                  Multicast RPF check failed    
   error
         6             ip4-local             ip4 spoofed local-address packet 
dr   error
         2           ethernet-input                        no error             
   error
         7           punt-dispatch                     No registrations         
   error
      7702              tap3-tx                        no free tx slots         
   error

I don't know if the tap3-tx error "no free tx slots" is the reason why vpp2 not 
receiving any packets. If it is the cause, how can I fix it?
Thanks for your attention.

Wei





--
Pim van Pelt <p...@ipng.nl<mailto:p...@ipng.nl>>
PBVP1-RIPE - 
http://www.ipng.nl/<https://urldefense.com/v3/__http://www.ipng.nl/__;!!ACWV5N9M2RV99hQ!cyVTSFNEzYVndco9Q2FNzR7L7kG9EPVImqdNMLQQTqKLS5A1eTzckOmvFR_K2BIClw$>
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#20909): https://lists.fd.io/g/vpp-dev/message/20909
Mute This Topic: https://lists.fd.io/mt/89372815/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