From a6110b6ea5a066b64005347850f61df9a2000fe9 Mon Sep 17 00:00:00 2001 From: Matus Fabian Date: Wed, 13 Jun 2018 05:39:07 -0700 Subject: NAT44: endpoint dependent mode (VPP-1273) To enable NAT plugin endpoint dependent mode add following to statrup config: nat { endpoint-dependent } Enable endpoint dependent filtering and mapping for all sessions. Move some existing functionality such as service load balancing, twice nat, out2in-only static mappings and unknown protocol dynamic translations, which use endpoint dependent lookup hash tables before. Basically split to vanilla NAT44 and extra features NAT44. Change-Id: I3925eb5ddcc8f1ec4cf6af4e2a618a7ec7aa9735 Signed-off-by: Matus Fabian --- src/scripts/vnet/nat44_lb | 48 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 src/scripts/vnet/nat44_lb (limited to 'src/scripts/vnet/nat44_lb') diff --git a/src/scripts/vnet/nat44_lb b/src/scripts/vnet/nat44_lb new file mode 100644 index 00000000000..f66c13ce99f --- /dev/null +++ b/src/scripts/vnet/nat44_lb @@ -0,0 +1,48 @@ +create packet-generator interface pg0 +create packet-generator interface pg1 + +packet-generator new { + name f1 + limit 1000000 + node ip4-input + size 64-64 + no-recycle + worker 0 + interface pg1 + data { + UDP: 172.16.1.11 -> 172.16.1.3 + UDP: 3001 -> 3000 + length 128 checksum 0 incrementing 1 + } +} + + +packet-generator new { + name f2 + limit 1000000 + node ip4-input + size 64-64 + no-recycle + worker 1 + interface pg1 + data { + UDP: 172.16.1.10 -> 172.16.1.3 + UDP: 3001 -> 3000 + length 128 checksum 0 incrementing 1 + } +} + +nat44 add address 172.16.1.3 +nat44 add load-balancing static mapping protocol udp external 172.16.1.3:3000 local 10.0.0.10:30000 probability 25 local 10.0.0.11:30000 probability 25 local 10.0.0.12:30000 probability 25 local 10.0.0.13:30000 probability 25 +set int ip address pg0 10.0.0.1/24 +set int ip address pg1 172.16.1.1/24 +set int state pg0 up +set int state pg1 up +set ip arp static pg0 10.0.0.10 abcd.abcd.abcd +set ip arp static pg0 10.0.0.11 abcd.abcd.abce +set ip arp static pg0 10.0.0.12 abce.abcd.abcd +set ip arp static pg0 10.0.0.13 abce.abcd.abce +set ip arp static pg1 172.16.1.10 cdef.abcd.abcd +set ip arp static pg1 172.16.1.11 cdef.abcd.abce +set int nat44 in pg0 out pg1 +trace add pg-input 10 -- cgit 1.2.3-korg