I want to use the vpp as the data forwarding center through vxlan tunnel, and
the server-PC VPP running on can be SSH-login at remote PC.
PC2 <-> PC1 disconnected after add NAT (tapSSH - TenGigabitEthernet8/0/0).
My current main doubts is that how can I limit the NAT44 only work at SSH(port
22 tcp)?
The topology is show below:
################cmd config like:#######################
BASE:
set int state TenGigabitEthernet8/0/0 up
set int ip addr TenGigabitEthernet8/0/0 172.16.4.2/24
create bridge-domain 9999 learn 1 forward 1 uu-flood 1 flood 1 arp-term 1
loopback create
set int l2 bridge loop0 9999 bvi
set int ip address loop0 192.168.120.1/24
set int state loop0 up
tap connect tapSSH address 192.168.120.2/24
set int l2 bridge tapcli-0 9999
set int state tapcli-0 up
create vxlan tunnel src 172.16.4.2 dst 172.16.4.177 vni 100
set interface l2 bridge vxlan_tunnel0 9999
create vxlan tunnel src 172.16.4.2 dst 172.16.4.188 vni 100
set interface l2 bridge vxlan_tunnel1 9999
#NAT
nat44 add interface address TenGigabitEthernet8/0/0
set interface nat44 in loop0 out TenGigabitEthernet8/0/0
nat44 add static mapping local 192.168.120.2 22 external
TenGigabitEthernet8/0/0 22 tcp
#################and trace is show below#######################
BASE:
00:24:38:826034: dpdk-input
TenGigabitEthernet8/0/0 rx queue 0
buffer 0x18d92: current data 14, length 134, free-list 0, clone-count 0,
totlen-nifb 0, trace 0x2
ext-hdr-valid
l4-cksum-computed l4-cksum-correct l2-hdr-offset 0
l3-hdr-offset 14
PKT MBUF: port 1, nb_segs 1, pkt_len 148
buf_len 2176, data_len 148, ol_flags 0x180, data_off 128, phys_addr
0x6de36500
packet_type 0x211 l2_len 0 l3_len 0 outer_l2_len 0 outer_l3_len 0
Packet Offload Flags
PKT_RX_IP_CKSUM_GOOD (0x0080) IP cksum of RX pkt. is valid
PKT_RX_L4_CKSUM_GOOD (0x0100) L4 cksum of RX pkt. is valid
Packet Types
RTE_PTYPE_L2_ETHER (0x0001) Ethernet packet
RTE_PTYPE_L3_IPV4 (0x0010) IPv4 packet without extension headers
RTE_PTYPE_L4_UDP (0x0200) UDP packet
IP4: 00:25:7c:30:05:ec -> 00:a0:c9:00:00:02
UDP: 172.16.4.177 -> 172.16.4.2
tos 0x00, ttl 64, length 134, checksum 0x12ba
fragment id 0x06da
UDP: 4789 -> 4789
length 114, checksum 0x0000
00:24:38:826037: ip4-input-no-checksum
UDP: 172.16.4.177 -> 172.16.4.2
tos 0x00, ttl 64, length 134, checksum 0x12ba
fragment id 0x06da
UDP: 4789 -> 4789
length 114, checksum 0x0000
00:24:38:826040: ip4-lookup
fib 0 dpo-idx 7 flow hash: 0x00000000
UDP: 172.16.4.177 -> 172.16.4.2
tos 0x00, ttl 64, length 134, checksum 0x12ba
fragment id 0x06da
UDP: 4789 -> 4789
length 114, checksum 0x0000
00:24:38:826041: ip4-local
UDP: 172.16.4.177 -> 172.16.4.2
tos 0x00, ttl 64, length 134, checksum 0x12ba
fragment id 0x06da
UDP: 4789 -> 4789
length 114, checksum 0x0000
00:24:38:826042: ip4-udp-lookup
UDP: src-port 4789 dst-port 4789
00:24:38:826043: vxlan4-input
VXLAN decap from vxlan_tunnel0 vni 100 next 1 error 0
00:24:38:826051: l2-input
l2-input: sw_if_index 5 dst 00:25:7c:30:05:ef src 00:25:7c:30:05:eb
00:24:38:826053: l2-learn
l2-learn: sw_if_index 5 dst 00:25:7c:30:05:ef src 00:25:7c:30:05:eb bd_index 1
00:24:38:826057: l2-fwd
l2-fwd: sw_if_index 5 dst 00:25:7c:30:05:ef src 00:25:7c:30:05:eb bd_index 1
00:24:38:826058: l2-output
l2-output: sw_if_index 6 dst 00:25:7c:30:05:ef src 00:25:7c:30:05:eb data 08
00 45 00 00 54 ac 4b 40 00 40 01
00:24:38:826058: vxlan4-encap
VXLAN encap to vxlan_tunnel1 vni 100
00:24:38:826060: ip4-load-balance
fib 6 dpo-idx 20 flow hash: 0x00010001
UDP: 172.16.4.2 -> 172.16.4.188
tos 0x00, ttl 254, length 134, checksum 0x5b88
fragment id 0x0000
UDP: 4789 -> 4789
length 114, checksum 0x0000
00:24:38:826061: ip4-rewrite
tx_sw_if_index 2 dpo-idx 5 : ipv4 via 172.16.4.188 TenGigabitEthernet8/0/0:
mtu:1500 00257c3005f000a0c90000020800 flow hash: 0x00010001
00000000: 00257c3005f000a0c900000208004500008600000000fd115c88ac100402ac10
00000020: 04bc12b512b500720000080000000000640000257c3005ef00257c30
00:24:38:826062: TenGigabitEthernet8/0/0-output
TenGigabitEthernet8/0/0
IP4: 00:a0:c9:00:00:02 -> 00:25:7c:30:05:f0
UDP: 172.16.4.2 -> 172.16.4.188
tos 0x00, ttl 253, length 134, checksum 0x5c88
fragment id 0x0000
UDP: 4789 -> 4789
length 114, checksum 0x0000
00:24:38:826063: TenGigabitEthernet8/0/0-tx
TenGigabitEthernet8/0/0 tx queue 2
buffer 0x18d92: current data 0, length 148, free-list 0, clone-count 0,
totlen-nifb 0, trace 0x2
ext-hdr-valid
l4-cksum-computed l4-cksum-correct l2-hdr-offset 0
l3-hdr-offset 14
PKT MBUF: port 1, nb_segs 1, pkt_len 148
buf_len 2176, data_len 148, ol_flags 0x180, data_off 128, phys_addr
0x6de36500
packet_type 0x211 l2_len 0 l3_len 0 outer_l2_len 0 outer_l3_len 0
Packet Offload Flags
PKT_RX_IP_CKSUM_GOOD (0x0080) IP cksum of RX pkt. is valid
PKT_RX_L4_CKSUM_GOOD (0x0100) L4 cksum of RX pkt. is valid
Packet Types
RTE_PTYPE_L2_ETHER (0x0001) Ethernet packet
RTE_PTYPE_L3_IPV4 (0x0010) IPv4 packet without extension headers
RTE_PTYPE_L4_UDP (0x0200) UDP packet
IP4: 00:a0:c9:00:00:02 -> 00:25:7c:30:05:f0
UDP: 172.16.4.2 -> 172.16.4.188
tos 0x00, ttl 253, length 134, checksum 0x5c88
fragment id 0x0000
UDP: 4789 -> 4789
length 114, checksum 0x0000
BASE ADD NAT44:
00:28:19:652316: dpdk-input
TenGigabitEthernet8/0/0 rx queue 0
buffer 0x10669: current data 14, length 134, free-list 0, clone-count 0,
totlen-nifb 0, trace 0x2
ext-hdr-valid
l4-cksum-computed l4-cksum-correct l2-hdr-offset 0
l3-hdr-offset 14
PKT MBUF: port 1, nb_segs 1, pkt_len 148
buf_len 2176, data_len 148, ol_flags 0x180, data_off 128, phys_addr
0x6e019ac0
packet_type 0x211 l2_len 0 l3_len 0 outer_l2_len 0 outer_l3_len 0
Packet Offload Flags
PKT_RX_IP_CKSUM_GOOD (0x0080) IP cksum of RX pkt. is valid
PKT_RX_L4_CKSUM_GOOD (0x0100) L4 cksum of RX pkt. is valid
Packet Types
RTE_PTYPE_L2_ETHER (0x0001) Ethernet packet
RTE_PTYPE_L3_IPV4 (0x0010) IPv4 packet without extension headers
RTE_PTYPE_L4_UDP (0x0200) UDP packet
IP4: 00:25:7c:30:05:ec -> 00:a0:c9:00:00:02
UDP: 172.16.4.177 -> 172.16.4.2
tos 0x00, ttl 64, length 134, checksum 0xaa25
fragment id 0x6f6e
UDP: 4789 -> 4789
length 114, checksum 0x0000
00:28:19:652318: ip4-input-no-checksum
UDP: 172.16.4.177 -> 172.16.4.2
tos 0x00, ttl 64, length 134, checksum 0xaa25
fragment id 0x6f6e
UDP: 4789 -> 4789
length 114, checksum 0x0000
00:28:19:652320: nat44-out2in-worker-handoff
NAT44_OUT2IN_WORKER_HANDOFF: next worker 1
[email protected]
From: Dave Barach (dbarach)
Date: 2018-10-30 20:19
To: [email protected]; vpp-dev
Subject: RE: RE: [vpp-dev] NAT44 && vxlan tunnel conflict
Please send the exact config you used, and the relevant packet tracer output.
From: [email protected] <[email protected]>
Sent: Tuesday, October 30, 2018 1:13 AM
To: Dave Barach (dbarach) <[email protected]>; vpp-dev <[email protected]>
Subject: Re: RE: [vpp-dev] NAT44 && vxlan tunnel conflict
The attempt failed! Adding static mapping to bvi or tap-in-OS both does not
work.
Is there any cmd that can remove the NAT logic of udp-4789 from NAT44?
Help
please!
[email protected]
From: Dave Barach (dbarach)
Date: 2018-10-29 22:25
To: [email protected]; [email protected]
Subject: RE: [vpp-dev] NAT44 && vxlan tunnel conflict
The NAT plugin is tossing vxlan out-to-in packets. You’ll get different results
if you add a static mapping for (UDP, 4789) packets – maybe not the desired
result, but at least a different result...
D.
From: [email protected] <[email protected]> On Behalf Of
[email protected]
Sent: Monday, October 29, 2018 4:13 AM
To: vpp-dev <[email protected]>
Subject: [vpp-dev] NAT44 && vxlan tunnel conflict
Hi all,
I want to login PC1 through SSH2 where vpp is running, and the VPP is used
as the VXLAN translate center(only 1 ip).
However, I found some error!
Data from vxlan tunnel 1 were dropped, which should be decaped at one
vxlan-tunnel-1 and transmited out from vxlan-tunnel-2.
How can I achieve my goal?
Help please!
#####REMARK######
SSH: 172.16.4.3 ----(SSH2)---- 172.16.4.2 ----(NAT44)--- 192.168.120.2
VXLAN: 172.16.4.177 ----(vxlan)---- 172.16.4.2 ---- (NAT44) --
drop
( desired: vxlan-decap -> br -> vxlan-encap ->
TenGigabitEthernet6/0/0-tx )
trace:
00:31:35:400543: dpdk-input
TenGigabitEthernet6/0/0 rx queue 0
buffer 0x12c31: current data 14, length 164, free-list 0, clone-count 0,
totlen-nifb 0, trace 0x0
ext-hdr-valid
l4-cksum-computed l4-cksum-correct l2-hdr-offset 0
l3-hdr-offset 14
PKT MBUF: port 0, nb_segs 1, pkt_len 178
buf_len 2176, data_len 178, ol_flags 0x180, data_off 128, phys_addr
0x708b0cc0
packet_type 0x211 l2_len 0 l3_len 0 outer_l2_len 0 outer_l3_len 0
Packet Offload Flags
PKT_RX_IP_CKSUM_GOOD (0x0080) IP cksum of RX pkt. is valid
PKT_RX_L4_CKSUM_GOOD (0x0100) L4 cksum of RX pkt. is valid
Packet Types
RTE_PTYPE_L2_ETHER (0x0001) Ethernet packet
RTE_PTYPE_L3_IPV4 (0x0010) IPv4 packet without extension headers
RTE_PTYPE_L4_UDP (0x0200) UDP packet
IP4: 00:25:7c:30:05:ec -> 00:a0:c9:00:00:00
UDP: 172.16.4.177 -> 172.16.4.2
tos 0x00, ttl 64, length 164, checksum 0x4902
fragment id 0x1743, flags DONT_FRAGMENT
UDP: 4789 -> 4789
length 144, checksum 0x5ceb
00:31:35:400565: ip4-input-no-checksum
UDP: 172.16.4.177 -> 172.16.4.2
tos 0x00, ttl 64, length 164, checksum 0x4902
fragment id 0x1743, flags DONT_FRAGMENT
UDP: 4789 -> 4789
length 144, checksum 0x5ceb
00:31:35:400581: nat44-out2in
NAT44_OUT2IN: sw_if_index 1, next index 0, session index -1
00:31:35:400596: error-drop
nat44-out2in: No translation
****configure cmd line*************
set int state TenGigabitEthernet6/0/0 up
set int ip addr TenGigabitEthernet6/0/0 172.16.4.2/24
create bridge-domain 9999 learn 1 forward 1 uu-flood 1 flood 1 arp-term 1
loopback create
set int l2 bridge loop0 9999 bvi
set int ip address loop0 192.168.120.1/24
set int state loop0 up
tap connect tapOS address 192.168.120.2/24
set int l2 bridge tapcli-0 9999
set int state tapcli-0 up
create vxlan tunnel src 172.16.4.2 dst 172.16.4.177 vni 100
set interface l2 bridge vxlan_tunnel0 9999
create vxlan tunnel src 172.16.4.2 dst 172.16.4.188 vni 100
set interface l2 bridge vxlan_tunnel0 9999
nat44 add interface address TenGigabitEthernet6/0/0
set interface nat44 in loop0 out TenGigabitEthernet6/0/0
nat44 add static mapping local 192.168.120.2 22 external
TenGigabitEthernet6/0/0 22 tcp
[email protected]
-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#11044): https://lists.fd.io/g/vpp-dev/message/11044
Mute This Topic: https://lists.fd.io/mt/27779539/21656
Group Owner: [email protected]
Unsubscribe: https://lists.fd.io/g/vpp-dev/unsub [[email protected]]
-=-=-=-=-=-=-=-=-=-=-=-