FD.io VPP  v21.06-3-gbb25fbf28
Vector Packet Processing
nat44_ed.api
Go to the documentation of this file.
1 /*
2  * Copyright (c) 2020 Cisco and/or its affiliates.
3  * Licensed under the Apache License, Version 2.0 (the "License");
4  * you may not use this file except in compliance with the License.
5  * You may obtain a copy of the License at:
6  *
7  * http://www.apache.org/licenses/LICENSE-2.0
8  *
9  * Unless required by applicable law or agreed to in writing, software
10  * distributed under the License is distributed on an "AS IS" BASIS,
11  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12  * See the License for the specific language governing permissions and
13  * limitations under the License.
14  */
15 
16 option version = "5.3.0";
17 import "vnet/ip/ip_types.api";
18 import "vnet/interface_types.api";
19 import "plugins/nat/lib/nat_types.api";
20 
21 /**
22  * @file nat44.api
23  * @brief VPP control-plane API messages.
24  *
25  * This file defines VPP control-plane API messages which are generally
26  * called through a shared memory interface.
27  */
28 
30 {
36 };
37 
38 /** \brief Enable/disable NAT44 plugin
39  @param client_index - opaque cookie to identify the sender
40  @param context - sender context, to match reply w/ request
41  @param inside_vrf - inside vrf id
42  @param outside_vrf - outside vrf id
43  @param users - maximum number of users per thread
44  (NAT44_IS_ENDPOINT_INDEPENDENT)
45  @param user_memory - overwrite hash allocation parameter
46  (NAT44_IS_ENDPOINT_INDEPENDENT)
47  @param sessions - maximum number of sessions per thread
48  @param session_memory - overwrite hash allocation parameter
49  @param user_sessions - maximum number of sessions per user
50  (NAT44_IS_ENDPOINT_INDEPENDENT)
51  @param enable - true if enable, false if disable
52  @param flags - flag NAT44_IS_ENDPOINT_INDEPENDENT,
53  NAT44_IS_ENDPOINT_DEPENDENT,
54  NAT44_IS_STATIC_MAPPING_ONLY,
55  NAT44_IS_CONNECTION_TRACKING,
56  NAT44_IS_OUT2IN_DPO
57 */
58 autoreply define nat44_plugin_enable_disable {
59  option deprecated;
69  bool enable;
70  vl_api_nat44_config_flags_t flags;
71 };
72 
73 /** \brief Enable/disable NAT44ED plugin
74  @param client_index - opaque cookie to identify the sender
75  @param context - sender context, to match reply w/ request
76  @param inside_vrf - inside vrf id
77  @param outside_vrf - outside vrf id
78  @param sessions - maximum number of sessions per thread
79  @param session_memory - overwrite hash allocation parameter
80  @param enable - true if enable, false if disable
81  @param flags - flag NAT44_IS_STATIC_MAPPING_ONLY,
82  NAT44_IS_CONNECTION_TRACKING
83 */
84 autoreply define nat44_ed_plugin_enable_disable {
85  option in_progress;
92  bool enable;
93  vl_api_nat44_config_flags_t flags;
94 };
95 
96 /** \brief Control ping from client to api server request
97  @param client_index - opaque cookie to identify the sender
98  @param context - sender context, to match reply w/ request
99 */
100 define nat_control_ping
101 {
102  option deprecated;
105 };
106 
107 /** \brief Control ping from the client to the server response
108  @param client_index - opaque cookie to identify the sender
109  @param context - sender context, to match reply w/ request
110  @param retval - return code for the request
111  @param vpe_pid - the pid of the vpe, returned by the server
112 */
113 define nat_control_ping_reply
114 {
115  option deprecated;
120 };
121 
122 /** \brief Show NAT plugin startup config
123  @param client_index - opaque cookie to identify the sender
124  @param context - sender context, to match reply w/ request
125 */
126 define nat_show_config
127 {
128  option deprecated;
131 };
132 
133 /** \brief DEPRECATED: Show NAT plugin startup config reply
134  @param context - sender context, to match reply w/ request
135  @param retval - return code for the request
136  @param static_mapping_only - if true dynamic translations disabled
137  @param static_mapping_connection_tracking - if true create session data
138  @param deterministic - if true deterministic mapping
139  @param endpoint_dependent - if true endpoint-dependent mode
140  @param out2in_dpo - if true out2in dpo mode
141  @param dslite_ce - if true DS-Lite is CE/B4 element, if false AFTR elemet
142  @param translation_buckets - number of translation hash buckets
143  @param translation_memory_size - translation hash memory size
144  @param user_buckets - number of user hash buckets
145  @param user_memory_size - user hash memory size
146  @param max_translations_per_user - maximum number of translations per user
147  @param outside_vrf_id - outside VRF id
148  @param inside_vrf_id - default inside VRF id
149  @param nat64_bib_buckets - number of NAT64 BIB hash buckets
150  @param nat64_bib_memory_size - memory size of NAT64 BIB hash
151  @param nat64_st_buckets - number of NAT64 session table hash buckets
152  @param nat64_st_memory_size - memory size of NAT64 session table hash
153 */
154 define nat_show_config_reply
155 {
156  option deprecated;
164  bool dslite_ce;
176 };
177 
178 /** \brief Show NAT plugin startup config
179  @param client_index - opaque cookie to identify the sender
180  @param context - sender context, to match reply w/ request
181 */
182 define nat_show_config_2
183 {
184  option deprecated;
187 };
188 
189 /** \brief Show NAT plugin startup config reply
190  @param context - sender context, to match reply w/ request
191  @param retval - return code for the request
192  @param static_mapping_only - if true dynamic translations disabled
193  @param static_mapping_connection_tracking - if true create session data
194  @param deterministic - if true deterministic mapping
195  @param endpoint_dependent - if true endpoint-dependent mode
196  @param out2in_dpo - if true out2in dpo mode
197  @param dslite_ce - if true DS-Lite is CE/B4 element, if false AFTR elemet
198  @param translation_buckets - number of translation hash buckets
199  @param translation_memory_size - translation hash memory size
200  @param user_buckets - number of user hash buckets
201  @param user_memory_size - user hash memory size
202  @param max_translations_per_user - maximum number of translations per user
203  @param outside_vrf_id - outside VRF id
204  @param inside_vrf_id - default inside VRF id
205  @param nat64_bib_buckets - number of NAT64 BIB hash buckets
206  @param nat64_bib_memory_size - memory size of NAT64 BIB hash
207  @param nat64_st_buckets - number of NAT64 session table hash buckets
208  @param nat64_st_memory_size - memory size of NAT64 session table hash
209  @param max_translations_per_thread - max translations per worker thread
210  @param max_users_per_thread - max users per worker thread
211 */
212 define nat_show_config_2_reply
213 {
214  option deprecated;
222  bool dslite_ce;
236 };
237 
238 /** \brief Show NAT44 plugin running config
239  @param client_index - opaque cookie to identify the sender
240  @param context - sender context, to match reply w/ request
241 */
242 define nat44_show_running_config
243 {
244  option in_progress;
247 };
248 
249 /** \brief Show NAT44 plugin running config reply
250  @param context - sender context, to match reply w/ request
251  @param retval - return code for the request
252  @param inside_vrf - default inside VRF id
253  @param outside_vrf - outside VRF id
254  @param users - maximum number of users per worker thread
255  (NAT44_IS_ENDPOINT_INDEPENDENT)
256  @param sessions - maximum number of sessions per worker thread
257  @param user_sessions - maximum number of sessions per user
258  (NAT44_IS_ENDPOINT_INDEPENDENT)
259  @param user_buckets - number of user hash buckets
260  (NAT44_IS_ENDPOINT_INDEPENDENT)
261  @param translation_buckets - number of translation hash buckets
262  @param flags - flag NAT44_IS_ENDPOINT_INDEPENDENT,
263  NAT44_IS_ENDPOINT_DEPENDENT,
264  NAT44_IS_STATIC_MAPPING_ONLY,
265  NAT44_IS_CONNECTION_TRACKING,
266  NAT44_IS_OUT2IN_DPO
267 */
268 define nat44_show_running_config_reply
269 {
270  option in_progress;
282  vl_api_nat_timeouts_t timeouts;
283  vl_api_nat_log_level_t log_level;
284  vl_api_nat44_config_flags_t flags;
285 };
286 
287 /** \brief Run nat44 garbage collection
288  @param client_index - opaque cookie to identify the sender
289  @param context - sender context, to match reply w/ request
290 */
291 autoreply define nat44_session_cleanup {
292  option deprecated;
295 };
296 
297 /** \brief NAT44 set session limit
298  @param client_index - opaque cookie to identify the sender
299  @param context - sender context, to match reply w/ request
300  @param session_limit - session limit
301  @param vrf_id - vrf id
302 */
303 autoreply define nat44_set_session_limit {
308 };
309 
310 /** \brief Set NAT logging level
311  @param client_index - opaque cookie to identify the sender
312  @param context - sender context, to match reply w/ request
313  @param log_level - logging level
314 */
315 autoreply define nat_set_log_level {
316  option deprecated;
319  vl_api_nat_log_level_t log_level;
320 };
321 
322 /** \brief Set NAT workers
323  @param client_index - opaque cookie to identify the sender
324  @param context - sender context, to match reply w/ request
325  @param worker_mask - NAT workers mask
326 */
327 autoreply define nat_set_workers {
331 };
332 
333 /** \brief Dump NAT workers
334  @param client_index - opaque cookie to identify the sender
335  @param context - sender context, to match reply w/ request
336 */
337 define nat_worker_dump {
340 };
341 
342 /** \brief NAT workers details response
343  @param context - sender context, to match reply w/ request
344  @param worker_index - worker index
345  @param lcore_id - lcore ID
346  @param name - worker name
347 */
348 define nat_worker_details {
352  string name[64];
353 };
354 
355 /** \brief Enable/disable NAT IPFIX logging
356  @param client_index - opaque cookie to identify the sender
357  @param context - sender context, to match reply w/ request
358  @param domain_id - observation domain ID
359  @param src_port - source port number
360  @param enable - true if enable, false if disable
361 */
362 autoreply define nat_ipfix_enable_disable {
363  option deprecated;
368  bool enable;
369 };
370 
371 /** \brief Set values of timeouts for NAT sessions (seconds)
372  @param client_index - opaque cookie to identify the sender
373  @param context - sender context, to match reply w/ request
374  @param udp - UDP timeout (default 300sec)
375  @param tcp_established - TCP established timeout (default 7440sec)
376  @param tcp_transitory - TCP transitory timeout (default 240sec)
377  @param icmp - ICMP timeout (default 60sec)
378 */
379 autoreply define nat_set_timeouts {
380  option deprecated;
387 };
388 
389 /** \brief Get values of timeouts for NAT sessions (seconds)
390  @param client_index - opaque cookie to identify the sender
391  @param context - sender context, to match reply w/ request
392 */
393 define nat_get_timeouts {
394  option deprecated;
397 };
398 
399 /** \brief Get values of timeouts for NAT sessions reply
400  @param context - sender context, to match reply w/ request
401  @param retval - return code
402  @param udp - UDP timeout
403  @param tcp_established - TCP established timeout
404  @param tcp_transitory - TCP transitory timeout
405  @param icmp - ICMP timeout
406 */
407 define nat_get_timeouts_reply {
408  option deprecated;
415 };
416 
417 /** \brief Set address and port assignment algorithm
418  @param client_index - opaque cookie to identify the sender
419  @param context - sender context, to match reply w/ request
420  @param alg - address and port assignment algorithm:
421  0 - default, 1 - MAP-E, 2 - port range
422  (see nat_addr_and_port_alloc_alg_t in nat.h)
423  @param psid_offset - number of offset bits (valid only for MAP-E alg)
424  @param psid_length - length of PSID (valid only for MAP-E alg)
425  @param psid - Port Set Identifier (PSID) value (valid only for MAP-E alg)
426  @param start_port - beginning of the port range
427  @param end_port - end of the port range
428 */
429 autoreply define nat_set_addr_and_port_alloc_alg {
438 };
439 
440 /** \brief Get address and port assignment algorithm
441  @param client_index - opaque cookie to identify the sender
442  @param context - sender context, to match reply w/ request
443 */
444 define nat_get_addr_and_port_alloc_alg {
447 };
448 
449 /** \brief Get address and port assignment algorithm reply
450  @param context - sender context, to match reply w/ request
451  @param retval - return code
452  @param alg - address and port assignment algorithm:
453  0 - default, 1 - MAP-E, 2 - port range
454  (see nat_addr_and_port_alloc_alg_t in nat.h)
455  @param psid_offset - number of offset bits (valid only for MAP-E alg)
456  @param psid_length - length of PSID (valid only for MAP-E alg)
457  @param psid - Port Set Identifier (PSID) value (valid only for MAP-E alg)
458  @param start_port - beginning of the port range
459  @param end_port - end of the port range
460 */
461 define nat_get_addr_and_port_alloc_alg_reply {
470 };
471 
472 /** \brief Set TCP MSS rewriting configuration
473  @param client_index - opaque cookie to identify the sender
474  @param context - sender context, to match reply w/ request
475  @param mss_value - MSS value to be used for MSS rewriting
476  @param enable - if true enable MSS rewriting feature else disable
477 */
478 autoreply define nat_set_mss_clamping {
482  bool enable;
483 };
484 
485 /** \brief Get TCP MSS rewriting configuration
486  @param client_index - opaque cookie to identify the sender
487  @param context - sender context, to match reply w/ request
488 */
489 define nat_get_mss_clamping {
492 };
493 
494 /** \brief Get TCP MSS rewriting configuration reply
495  @param context - sender context, to match reply w/ request
496  @param retval - return code
497  @param mss_value - MSS value to be used for MSS rewriting
498  @param enable - if true enable MSS rewriting feature else disable
499 */
500 define nat_get_mss_clamping_reply {
504  bool enable;
505 };
506 
507 /** \brief Set HA listener (local settings)
508  @param client_index - opaque cookie to identify the sender
509  @param context - sender context, to match reply w/ request
510  @param ip_address - local IP4 address
511  @param port - local UDP port number
512  @param path_mtu - path MTU between local and failover
513 */
514 autoreply define nat_ha_set_listener {
517  vl_api_ip4_address_t ip_address;
520 };
521 
522 /** \brief Set HA failover (remote settings)
523  @param client_index - opaque cookie to identify the sender
524  @param context - sender context, to match reply w/ request
525  @param ip_address - failover IP4 address
526  @param port - failvoer UDP port number
527  @param session_refresh_interval - number of seconds after which to send
528  session counters refresh
529 */
530 autoreply define nat_ha_set_failover {
533  vl_api_ip4_address_t ip_address;
536 };
537 
538 /** \brief Get HA listener/local configuration
539  @param client_index - opaque cookie to identify the sender
540  @param context - sender context, to match reply w/ request
541 */
545 };
546 
547 /** \brief Get HA listener/local configuration reply
548  @param context - sender context, to match reply w/ request
549  @param retval - return code
550  @param ip_address - local IP4 address
551  @param port - local UDP port number
552  @param path_mtu - Path MTU between local and failover
553 */
554 define nat_ha_get_listener_reply {
557  vl_api_ip4_address_t ip_address;
560 };
561 
562 /** \brief Get HA failover/remote settings
563  @param client_index - opaque cookie to identify the sender
564  @param context - sender context, to match reply w/ request
565 */
569 };
570 
571 /** \brief Get HA failover/remote settings reply
572  @param context - sender context, to match reply w/ request
573  @param retval - return code
574  @param ip_address - failover IP4 address
575  @param port - failvoer UDP port number
576  @param session_refresh_interval - number of seconds after which to send
577  session counters refresh
578 */
579 define nat_ha_get_failover_reply {
582  vl_api_ip4_address_t ip_address;
585 };
586 
587 /** \brief Flush the current HA data (for testing)
588  @param client_index - opaque cookie to identify the sender
589  @param context - sender context, to match reply w/ request
590 */
591 autoreply define nat_ha_flush {
594 };
595 
596 /** \brief Resync HA (resend existing sessions to new failover)
597  @param client_index - opaque cookie to identify the sender
598  @param context - sender context, to match reply w/ request
599  @param want_resync_event - resync completed event sent to the sender via
600  nat_ha_resync_completed_event API message if
601  non-zero
602  @param pid - sender's pid
603 */
604 autoreply define nat_ha_resync
605 {
610 };
611 
612 /** \brief Tell client about a HA resync completion event
613  @param client_index - opaque cookie to identify the sender
614  @param pid - client pid registered to receive notification
615  @param missed_count - number of missed (not ACKed) messages
616 */
617 define nat_ha_resync_completed_event
618 {
622 };
623 
625  rpc nat_ha_resync returns nat_ha_resync_reply events nat_ha_resync_completed_event;
626 };
627 
628 /** \brief Del NAT44 user
629  @param client_index - opaque cookie to identify the sender
630  @param context - sender context, to match reply w/ request
631  @param ip_address - IPv4 address
632  @param fib_index - FIB index
633 */
634 autoreply define nat44_del_user {
637  vl_api_ip4_address_t ip_address;
639 };
640 
641 /** \brief Add/del NAT44 address range
642  @param client_index - opaque cookie to identify the sender
643  @param context - sender context, to match reply w/ request
644  @param first_ip_address - first IPv4 address
645  @param last_ip_address - last IPv4 address
646  @param vrf_id - VRF id of tenant, ~0 means independent of VRF
647  @param is_add - true if add, false if delete
648  @param flags - flag NAT_IS_TWICE_NAT if NAT address range for external hosts
649 
650 */
651 autoreply define nat44_add_del_address_range {
654  vl_api_ip4_address_t first_ip_address;
655  vl_api_ip4_address_t last_ip_address;
657  bool is_add;
658  vl_api_nat_config_flags_t flags;
659 };
660 
661 /** \brief Dump NAT44 addresses
662  @param client_index - opaque cookie to identify the sender
663  @param context - sender context, to match reply w/ request
664 */
665 define nat44_address_dump {
668 };
669 
670 /** \brief NAT44 address details response
671  @param context - sender context, to match reply w/ request
672  @param ip_address - IPv4 address
673  @param flags - flag NAT_IS_TWICE_NAT if NAT address range for external hosts
674  @param vrf_id - VRF id of tenant, ~0 means independent of VRF
675 */
676 define nat44_address_details {
678  vl_api_ip4_address_t ip_address;
679  vl_api_nat_config_flags_t flags;
681 };
682 
683 /** \brief Enable/disable NAT44 feature on the interface
684  @param client_index - opaque cookie to identify the sender
685  @param context - sender context, to match reply w/ request
686  @param is_add - true if add, false if delete
687  @param flags - flag NAT_IS_INSIDE if interface is inside else
688  interface is outside
689  @param sw_if_index - software index of the interface
690 */
691 autoreply define nat44_interface_add_del_feature {
694  bool is_add;
695  vl_api_nat_config_flags_t flags;
696  vl_api_interface_index_t sw_if_index;
697 };
698 
699 /** \brief Dump interfaces with NAT44 feature
700  @param client_index - opaque cookie to identify the sender
701  @param context - sender context, to match reply w/ request
702 */
703 define nat44_interface_dump {
706 };
707 
708 /** \brief NAT44 interface details response
709  @param context - sender context, to match reply w/ request
710  @param sw_if_index - software index of the interface
711  @param flags - flag NAT_IS_INSIDE if interface is inside,
712  flag NAT_IS_OUTSIDE if interface is outside
713  and if both flags are set the interface is
714  both inside and outside
715 */
716 define nat44_interface_details {
718  vl_api_nat_config_flags_t flags;
719  vl_api_interface_index_t sw_if_index;
720 };
721 
722 /** \brief Enable/disbale NAT44 as an interface output feature (postrouting
723  in2out translation)
724  @param client_index - opaque cookie to identify the sender
725  @param context - sender context, to match reply w/ request
726  @param is_add - true if add, false if delete
727  @param flags - flag NAT_IS_INSIDE if interface is inside else
728  interface is outside
729  @param sw_if_index - software index of the interface
730 */
731 autoreply define nat44_interface_add_del_output_feature {
734  bool is_add;
735  vl_api_nat_config_flags_t flags;
736  vl_api_interface_index_t sw_if_index;
737 };
738 
739 /** \brief Dump interfaces with NAT44 output feature
740  @param client_index - opaque cookie to identify the sender
741  @param context - sender context, to match reply w/ request
742 */
743 define nat44_interface_output_feature_dump {
746 };
747 
748 /** \brief NAT44 interface with output feature details response
749  @param context - sender context, to match reply w/ request
750  @param flags - flag NAT_IS_INSIDE if interface is inside else
751  interface is outside
752  @param sw_if_index - software index of the interface
753 */
754 define nat44_interface_output_feature_details {
756  vl_api_nat_config_flags_t flags;
757  vl_api_interface_index_t sw_if_index;
758 };
759 
760 /** \brief Add/delete NAT44 static mapping
761  @param client_index - opaque cookie to identify the sender
762  @param context - sender context, to match reply w/ request
763  @param is_add - true if add, false if delete
764  @param flags - flag NAT_IS_ADDR_ONLY if address only mapping,
765  flag nat_is_twice_nat if nat address range for external hosts,
766  flag NAT_IS_SELF_TWICE_NAT if translate external host address
767  and port whenever external host address equals local
768  address of internal host,
769  flag NAT_IS_OUT2IN_ONLY if rule match only out2in direction
770  @param local_ip_address - local IPv4 address
771  @param external_ip_address - external IPv4 address
772  @param protocol - IP protocol, used only if addr_only=0
773  @param local_port - local port number, used only if addr_only=0
774  @param external_port - external port number, used only if addr_only=0
775  @param external_sw_if_index - external interface (if set
776  external_ip_address is ignored, ~0 means not
777  used)
778  @param vfr_id - VRF ID
779  @param tag - opaque string tag
780 */
781 autoreply define nat44_add_del_static_mapping {
784  bool is_add;
785  vl_api_nat_config_flags_t flags;
786  vl_api_ip4_address_t local_ip_address;
787  vl_api_ip4_address_t external_ip_address;
791  vl_api_interface_index_t external_sw_if_index;
793  string tag[64];
794 };
795 
796 /** \brief Add/delete NAT44 static mapping
797  @param client_index - opaque cookie to identify the sender
798  @param context - sender context, to match reply w/ request
799  @param is_add - true if add, false if delete
800  @param match_pool - true if use specific pool_ip_address
801  @param flags - flag NAT_IS_ADDR_ONLY if address only mapping,
802  flag nat_is_twice_nat if nat address range for external hosts,
803  flag NAT_IS_SELF_TWICE_NAT if translate external host address
804  and port whenever external host address equals local
805  address of internal host,
806  flag NAT_IS_OUT2IN_ONLY if rule match only out2in direction
807  @param pool_ip_address - pool IPv4 address to match with pool
808  @param local_ip_address - local IPv4 address
809  @param external_ip_address - external IPv4 address
810  @param protocol - IP protocol, used only if addr_only=0
811  @param local_port - local port number, used only if addr_only=0
812  @param external_port - external port number, used only if addr_only=0
813  @param external_sw_if_index - external interface (if set
814  external_ip_address is ignored, ~0 means not
815  used)
816  @param vfr_id - VRF ID
817  @param tag - opaque string tag
818 */
819 autoreply define nat44_add_del_static_mapping_v2 {
820  option in_progress;
823  bool is_add;
825  vl_api_nat_config_flags_t flags;
826  vl_api_ip4_address_t pool_ip_address;
827  vl_api_ip4_address_t local_ip_address;
828  vl_api_ip4_address_t external_ip_address;
832  vl_api_interface_index_t external_sw_if_index;
834  string tag[64];
835 };
836 
837 /** \brief Dump NAT44 static mappings
838  @param client_index - opaque cookie to identify the sender
839  @param context - sender context, to match reply w/ request
840 */
841 define nat44_static_mapping_dump {
844 };
845 
846 /** \brief NAT44 static mapping details response
847  @param context - sender context, to match reply w/ request
848  @param flags - flag NAT_ADDR_ONLY if address only mapping,
849  flag NAT_TWICE_NAT if NAT address range for external hosts,
850  flag NAT_SELF_TWICE_NAT if translate external host address
851  and port whenever external host address equals local
852  address of internal host,
853  flag NAT_OUT2IN_ONLY if rule match only out2in direction
854  @param local_ip_address - local IPv4 address
855  @param external_ip_address - external IPv4 address
856  @param protocol - IP protocol, valid only if no NAT_ADDR_ONLY flag
857  @param local_port - local port number, valid only if no NAT_ADDR_ONLY flag
858  @param external_port - external port number, valid only if no NAT_ADDR_ONLY flag
859  @param external_sw_if_index - external interface
860  @param vfr_id - VRF ID
861  @param tag - opaque string tag
862 */
863 define nat44_static_mapping_details {
865  vl_api_nat_config_flags_t flags;
866  vl_api_ip4_address_t local_ip_address;
867  vl_api_ip4_address_t external_ip_address;
871  vl_api_interface_index_t external_sw_if_index;
873  string tag[64];
874 };
875 
876 /** \brief Add/delete NAT44 identity mapping
877  @param client_index - opaque cookie to identify the sender
878  @param context - sender context, to match reply w/ request
879  @param is_add - true if add, false if delete
880  @param flags - flag NAT_ADDR_ONLY if address only mapping
881  @param ip_address - IPv4 address
882  @param protocol - IP protocol
883  @param port - port number
884  @param sw_if_index - interface (if set ip_address is ignored, ~0 means not
885  used)
886  @param vfr_id - VRF ID (if ~0 use default VRF)
887  @param tag - opaque string tag
888 */
889 autoreply define nat44_add_del_identity_mapping {
892  bool is_add;
893  vl_api_nat_config_flags_t flags;
894  vl_api_ip4_address_t ip_address;
897  vl_api_interface_index_t sw_if_index;
899  string tag[64];
900 };
901 
902 /** \brief Dump NAT44 identity mappings
903  @param client_index - opaque cookie to identify the sender
904  @param context - sender context, to match reply w/ request
905 */
906 define nat44_identity_mapping_dump {
909 };
910 
911 /** \brief NAT44 identity mapping details response
912  @param context - sender context, to match reply w/ request
913  @param flags - flag NAT_ADDR_ONLY if address only mapping
914  @param ip_address - IPv4 address
915  @param protocol - IP protocol
916  @param port - port number
917  @param sw_if_index - interface
918  @param vfr_id - VRF ID
919  @param tag - opaque string tag
920 */
921 define nat44_identity_mapping_details {
923  vl_api_nat_config_flags_t flags;
924  vl_api_ip4_address_t ip_address;
927  vl_api_interface_index_t sw_if_index;
929  string tag[64];
930 };
931 
932 /** \brief Add/delete NAT44 pool address from specific interfce
933  @param client_index - opaque cookie to identify the sender
934  @param context - sender context, to match reply w/ request
935  @param is_add - true if add, false if delete
936  @param sw_if_index - software index of the interface
937  @param flags - flag NAT_TWICE_NAT if NAT address range for external hosts
938 */
939 autoreply define nat44_add_del_interface_addr {
942  bool is_add;
943  vl_api_interface_index_t sw_if_index;
944  vl_api_nat_config_flags_t flags;
945 };
946 
947 /** \brief Dump NAT44 pool addresses interfaces
948  @param client_index - opaque cookie to identify the sender
949  @param context - sender context, to match reply w/ request
950 */
951 define nat44_interface_addr_dump {
954 };
955 
956 /** \brief NAT44 pool addresses interfaces details response
957  @param context - sender context, to match reply w/ request
958  @param sw_if_index - software index of the interface
959  @param flags - flag NAT_TWICE_NAT if NAT address range for external hosts
960 
961 */
962 define nat44_interface_addr_details {
964  vl_api_interface_index_t sw_if_index;
965  vl_api_nat_config_flags_t flags;
966 };
967 
968 /** \brief Dump NAT44 users
969  @param client_index - opaque cookie to identify the sender
970  @param context - sender context, to match reply w/ request
971 */
972 define nat44_user_dump {
975 };
976 
977 /** \brief NAT44 users response
978  @param context - sender context, to match reply w/ request
979  @vrf_id - VRF ID
980  @param ip_address - IPv4 address
981  @param nsessions - number of dynamic sessions
982  @param nstaticsessions - number of static sessions
983 */
984 define nat44_user_details {
987  vl_api_ip4_address_t ip_address;
990 };
991 
992 /** \brief NAT44 user's sessions
993  @param client_index - opaque cookie to identify the sender
994  @param context - sender context, to match reply w/ request
995  @param ip_address - IPv4 address of the user to dump
996  @param vrf_id - VRF_ID
997 */
998 define nat44_user_session_dump {
1001  vl_api_ip4_address_t ip_address;
1003 };
1004 
1005 /** \brief NAT44 user's sessions response
1006  @param context - sender context, to match reply w/ request
1007  @param outside_ip_address - outside IPv4 address
1008  @param outside_port - outside port
1009  @param inside_ip_address - inside IPv4 address
1010  @param inside_port - inside port
1011  @param protocol - protocol
1012  @param flags - flag NAT_IS_STATIC if session is static,
1013  flag NAT_IS_TWICE_NAT if session is twice-nat,
1014  flag NAT_IS_EXT_HOST_VALID if external host address
1015  and port are valid
1016  @param last_heard - last heard timer
1017  @param total_bytes - count of bytes sent through session
1018  @param total_pkts - count of pakets sent through session
1019  @param ext_host_address - external host IPv4 address
1020  @param ext_host_port - external host port
1021  @param ext_host_nat_address - post-NAT external host IPv4 address (valid
1022  only if twice-nat session)
1023  @param ext_host_nat_port - post-NAT external host port (valid only if
1024  twice-nat session)
1025 */
1026 define nat44_user_session_details {
1028  vl_api_ip4_address_t outside_ip_address;
1030  vl_api_ip4_address_t inside_ip_address;
1033  vl_api_nat_config_flags_t flags;
1037  vl_api_ip4_address_t ext_host_address;
1039  vl_api_ip4_address_t ext_host_nat_address;
1041 };
1042 
1043 /** \brief NAT44 load-balancing address and port pair
1044  @param addr - IPv4 address of the internal node
1045  @param port - L4 port number of the internal node
1046  @param probability - probability of the internal node to be randomly matched
1047  @param vrf_id - VRF id
1048 */
1050  vl_api_ip4_address_t addr;
1054 };
1055 
1056 /** \brief Add/delete NAT44 load-balancing static mapping rule
1057  @param client_index - opaque cookie to identify the sender
1058  @param context - sender context, to match reply w/ request
1059  @param is_add - true if add, false if delete
1060  @param flags - flag NAT_TWICE_NAT if NAT address range for external hosts,
1061  flag NAT_SELF_TWICE_NAT if translate external host address
1062  and port whenever external host address equals local
1063  address of internal host,
1064  flag NAT_OUT2IN_ONLY if rule match only out2in direction
1065  @param external_addr - external IPv4 address of the service
1066  @param external_port - external L4 port number of the service
1067  @param protocol - IP protocol number of the service
1068  @param affinity - if 0 disabled, otherwise client IP affinity sticky time
1069  in seconds
1070  @param local_num - number of local network nodes
1071  @param locals - local network nodes
1072  @param tag - opaque string tag
1073 */
1077  bool is_add;
1078  vl_api_nat_config_flags_t flags;
1079  vl_api_ip4_address_t external_addr;
1083  string tag[64];
1085  vl_api_nat44_lb_addr_port_t locals[local_num];
1086 };
1087 
1088 /** \brief Add/delete NAT44 load-balancing static mapping rule backend
1089  @param client_index - opaque cookie to identify the sender
1090  @param context - sender context, to match reply w/ request
1091  @param is_add - true if add, false if delete
1092  @param external_addr - external IPv4 address of the service
1093  @param external_port - external L4 port number of the service
1094  @param protocol - IP protocol number of the service
1095  @param local - local network node
1096 */
1100  bool is_add;
1101  vl_api_ip4_address_t external_addr;
1104  vl_api_nat44_lb_addr_port_t local;
1105 };
1106 
1107 /** \brief Dump NAT44 load-balancing static mapping rules
1108  @param client_index - opaque cookie to identify the sender
1109  @param context - sender context, to match reply w/ request
1110 */
1111 define nat44_lb_static_mapping_dump {
1114 };
1115 
1116 /** \brief NAT44 load-balancing static mapping rule details response
1117  @param context - sender context, to match reply w/ request
1118  @param external_addr - external IPv4 address of the service
1119  @param external_port - external L4 port number of the service
1120  @param protocol - IP protocol number of the service
1121  @param flags - flag NAT_TWICE_NAT if NAT address range for external hosts,
1122  flag NAT_SELF_TWICE_NAT if translate external host address
1123  and port whenever external host address equals local
1124  address of internal host,
1125  flag NAT_OUT2IN_ONLY if rule match only out2in direction
1126  @param affinity - if 0 disabled, otherwise client IP affinity sticky time
1127  in seconds
1128  @param local_num - number of local network nodes
1129  @param locals - local network nodes
1130  @param tag - opaque string tag
1131 */
1132 define nat44_lb_static_mapping_details {
1134  vl_api_ip4_address_t external_addr;
1137  vl_api_nat_config_flags_t flags;
1139  string tag[64];
1141  vl_api_nat44_lb_addr_port_t locals[local_num];
1142 };
1143 
1144 /** \brief Delete NAT44 session
1145  @param client_index - opaque cookie to identify the sender
1146  @param context - sender context, to match reply w/ request
1147  @param ip_address - IPv4 address
1148  @param protocol - IP protocol
1149  @param port - port number
1150  @param vfr_id - VRF ID
1151  @param flags - flag NAT_IS_INSIDE if interface is inside or
1152  interface is outside,
1153  flag NAT_IS_EXT_HOST_VALID if external host address and
1154  port are valid
1155  @param ext_host_address - external host IPv4 address
1156  @param ext_host_port - external host port
1157 */
1158 autoreply define nat44_del_session {
1161  vl_api_ip4_address_t address;
1165  vl_api_nat_config_flags_t flags;
1166  vl_api_ip4_address_t ext_host_address;
1168 };
1169 
1170 /** \brief Enable/disable forwarding for NAT44
1171  Forward packets which don't match existing translation
1172  or static mapping instead of dropping them.
1173  @param client_index - opaque cookie to identify the sender
1174  @param context - sender context, to match reply w/ request
1175  @param enable - true for enable, false for disable
1176 */
1177 autoreply define nat44_forwarding_enable_disable {
1178  option deprecated;
1181  bool enable;
1182 };
1183 
1184 /** \brief Check if forwarding is enabled or disabled
1185  @param client_index - opaque cookie to identify the sender
1186  @param context - sender context, to match reply w/ request
1187 */
1188 define nat44_forwarding_is_enabled {
1189  option deprecated;
1192 };
1193 
1194 /** \brief Response to check if forwarding is enabled or disabled
1195  @param context - sender context, to match reply w/ request
1196  @param enabled - true if enabled, false if disabled
1197 */
1198 define nat44_forwarding_is_enabled_reply {
1199  option deprecated;
1201  bool enabled;
1202 };
1203 
1204 /** \brief Set NAT handoff frame queue options
1205  @param client_index - opaque cookie to identify the sender
1206  @param context - sender context, to match reply w/ request
1207  @param frame_queue_nelts - number of worker handoff frame queue elements
1208 */
1209 autoreply define nat44_ed_set_fq_options {
1210  option in_progress;
1214 };
1215 
1216 /** \brief Show NAT handoff frame queue options
1217  @param client_index - opaque cookie to identify the sender
1218  @param context - sender context, to match reply w/ request
1219 */
1220 define nat44_ed_show_fq_options
1221 {
1222  option in_progress;
1225 };
1226 
1227 /** \brief Show NAT handoff frame queue options reply
1228  @param context - sender context, to match reply w/ request
1229  @param retval - return code for the request
1230  @param frame_queue_nelts - number of worker handoff frame queue elements
1231 */
1232 define nat44_ed_show_fq_options_reply
1233 {
1234  option in_progress;
1238 };
vl_api_nat_show_config_reply_t::nat64_bib_memory_size
u64 nat64_bib_memory_size
Definition: nat44_ed.api:173
vl_api_nat_ha_get_listener_reply_t::retval
i32 retval
Definition: nat44_ed.api:556
vl_api_nat_show_config_2_reply_t::dslite_ce
bool dslite_ce
Definition: nat44_ed.api:222
vl_api_nat_ha_set_listener_t::path_mtu
u32 path_mtu
Definition: nat44_ed.api:519
vl_api_nat44_ed_plugin_enable_disable_t::in_progress
option in_progress
Definition: nat44_ed.api:85
vl_api_nat44_forwarding_is_enabled_t::deprecated
option deprecated
Definition: nat44_ed.api:1189
vl_api_nat44_add_del_interface_addr_t::flags
vl_api_nat_config_flags_t flags
Definition: nat44_ed.api:944
vl_api_nat_get_addr_and_port_alloc_alg_reply_t::start_port
u16 start_port
Definition: nat44_ed.api:468
vl_api_nat44_show_running_config_reply_t::timeouts
vl_api_nat_timeouts_t timeouts
Definition: nat44_ed.api:282
vl_api_nat44_interface_add_del_output_feature_t::client_index
u32 client_index
Definition: nat44_ed.api:732
vl_api_nat44_user_session_dump_t::context
u32 context
Definition: nat44_ed.api:1000
vl_api_nat44_interface_add_del_output_feature_t::flags
vl_api_nat_config_flags_t flags
Definition: nat44_ed.api:735
vl_api_nat_get_addr_and_port_alloc_alg_reply_t::retval
i32 retval
Definition: nat44_ed.api:463
vl_api_nat44_show_running_config_reply_t::retval
i32 retval
Definition: nat44_ed.api:272
vl_api_nat44_interface_output_feature_dump_t::client_index
u32 client_index
Definition: nat44_ed.api:744
nat44_config_flags
nat44_config_flags
Definition: nat44_ed.api:29
vl_api_nat_show_config_reply_t::retval
i32 retval
Definition: nat44_ed.api:158
vl_api_nat44_ed_plugin_enable_disable_t::client_index
u32 client_index
Definition: nat44_ed.api:86
vl_api_nat44_lb_static_mapping_details_t::local_num
u32 local_num
Definition: nat44_ed.api:1140
vl_api_nat44_user_session_dump_t::client_index
u32 client_index
Definition: nat44_ed.api:999
vl_api_nat44_del_session_t::context
u32 context
Definition: nat44_ed.api:1160
vl_api_nat44_add_del_identity_mapping_t::protocol
u8 protocol
Definition: nat44_ed.api:895
vl_api_nat44_forwarding_enable_disable_t::client_index
u32 client_index
Definition: nat44_ed.api:1179
vl_api_nat44_session_cleanup_t::client_index
u32 client_index
Definition: nat44_ed.api:293
vl_api_nat_set_addr_and_port_alloc_alg_t::alg
u8 alg
Definition: nat44_ed.api:432
vl_api_nat_show_config_reply_t::inside_vrf_id
u32 inside_vrf_id
Definition: nat44_ed.api:171
vl_api_nat44_ed_plugin_enable_disable_t::sessions
u32 sessions
Definition: nat44_ed.api:90
vl_api_nat_control_ping_reply_t::vpe_pid
u32 vpe_pid
Definition: nat44_ed.api:119
vl_api_nat_ha_get_listener_reply_t::port
u16 port
Definition: nat44_ed.api:558
vl_api_nat44_user_details_t::context
u32 context
Definition: nat44_ed.api:985
vl_api_nat_get_addr_and_port_alloc_alg_reply_t::psid_offset
u8 psid_offset
Definition: nat44_ed.api:465
vl_api_nat44_interface_details_t::context
u32 context
Definition: nat44_ed.api:717
vl_api_nat44_lb_static_mapping_details_t::protocol
u8 protocol
Definition: nat44_ed.api:1136
vl_api_nat44_set_session_limit_t::vrf_id
u32 vrf_id
Definition: nat44_ed.api:307
vl_api_nat44_identity_mapping_details_t::vrf_id
u32 vrf_id
Definition: nat44_ed.api:928
vl_api_nat_ha_get_failover_t::client_index
u32 client_index
Definition: nat44_ed.api:567
vl_api_nat_show_config_2_reply_t::context
u32 context
Definition: nat44_ed.api:215
vl_api_nat44_add_del_address_range_t::client_index
u32 client_index
Definition: nat44_ed.api:652
vl_api_nat_ha_resync_completed_event_t::missed_count
u32 missed_count
Definition: nat44_ed.api:621
vl_api_nat44_ed_show_fq_options_reply_t
Show NAT handoff frame queue options reply.
Definition: nat44_ed.api:1232
vl_api_nat_set_mss_clamping_t::client_index
u32 client_index
Definition: nat44_ed.api:479
vl_api_nat44_interface_details_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: nat44_ed.api:719
vl_api_nat44_del_user_t::context
u32 context
Definition: nat44_ed.api:636
vl_api_nat_worker_details_t::worker_index
u32 worker_index
Definition: nat44_ed.api:350
vl_api_nat_set_timeouts_t::udp
u32 udp
Definition: nat44_ed.api:383
vl_api_nat_control_ping_reply_t::deprecated
option deprecated
Definition: nat44_ed.api:115
vl_api_nat_show_config_2_reply_t::retval
i32 retval
Definition: nat44_ed.api:216
vl_api_nat44_add_del_static_mapping_t::context
u32 context
Definition: nat44_ed.api:783
vl_api_nat44_session_cleanup_t
Run nat44 garbage collection.
Definition: nat44_ed.api:291
vl_api_nat_control_ping_t::deprecated
option deprecated
Definition: nat44_ed.api:102
vl_api_nat44_show_running_config_reply_t
Show NAT44 plugin running config reply.
Definition: nat44_ed.api:268
vl_api_nat44_add_del_static_mapping_v2_t::tag
string tag[64]
Definition: nat44_ed.api:834
vl_api_nat_show_config_2_reply_t::nat64_bib_buckets
u32 nat64_bib_buckets
Definition: nat44_ed.api:230
vl_api_nat44_lb_static_mapping_add_del_local_t::external_addr
vl_api_ip4_address_t external_addr
Definition: nat44_ed.api:1101
vl_api_nat_show_config_2_reply_t::nat64_st_buckets
u32 nat64_st_buckets
Definition: nat44_ed.api:232
vl_api_nat44_add_del_static_mapping_v2_t::context
u32 context
Definition: nat44_ed.api:822
vl_api_nat_ha_get_failover_reply_t::context
u32 context
Definition: nat44_ed.api:580
vl_api_nat44_ed_plugin_enable_disable_t::inside_vrf
u32 inside_vrf
Definition: nat44_ed.api:88
vl_api_nat44_show_running_config_reply_t::flags
vl_api_nat44_config_flags_t flags
Definition: nat44_ed.api:284
vl_api_nat44_interface_output_feature_details_t::context
u32 context
Definition: nat44_ed.api:755
vl_api_nat44_forwarding_enable_disable_t::context
u32 context
Definition: nat44_ed.api:1180
nat_ha_get_listener
void nat_ha_get_listener(ip4_address_t *addr, u16 *port, u32 *path_mtu)
Get HA listener/local configuration.
Definition: nat44_ei_ha.c:530
NAT44_IS_OUT2IN_DPO
@ NAT44_IS_OUT2IN_DPO
Definition: nat44_ed.api:35
nat_ha_flush
void nat_ha_flush(u8 is_resync)
Flush the current HA data (for testing)
Definition: nat44_ei_ha.c:827
vl_api_nat_get_timeouts_t
Get values of timeouts for NAT sessions (seconds)
Definition: nat44_ed.api:393
vl_api_nat44_show_running_config_reply_t::ipfix_logging_enabled
bool ipfix_logging_enabled
Definition: nat44_ed.api:281
name
string name[64]
Definition: fib.api:25
vl_api_nat_ha_set_failover_t::session_refresh_interval
u32 session_refresh_interval
Definition: nat44_ed.api:535
vl_api_nat_get_timeouts_reply_t::icmp
u32 icmp
Definition: nat44_ed.api:414
vl_api_nat44_interface_addr_details_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: nat44_ed.api:964
vl_api_nat44_static_mapping_details_t::protocol
u8 protocol
Definition: nat44_ed.api:868
vl_api_nat_set_mss_clamping_t::context
u32 context
Definition: nat44_ed.api:480
vl_api_nat44_lb_static_mapping_add_del_local_t
Add/delete NAT44 load-balancing static mapping rule backend.
Definition: nat44_ed.api:1097
vl_api_nat44_identity_mapping_details_t::flags
vl_api_nat_config_flags_t flags
Definition: nat44_ed.api:923
vl_api_nat44_forwarding_enable_disable_t::enable
bool enable
Definition: nat44_ed.api:1181
vl_api_nat44_add_del_static_mapping_v2_t::protocol
u8 protocol
Definition: nat44_ed.api:829
service
service
Definition: nat44_ed.api:624
vl_api_nat44_address_dump_t::context
u32 context
Definition: nat44_ed.api:667
vl_api_nat_show_config_reply_t::max_translations_per_user
u32 max_translations_per_user
Definition: nat44_ed.api:169
vl_api_nat44_interface_add_del_output_feature_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: nat44_ed.api:736
vl_api_nat44_add_del_static_mapping_t::external_ip_address
vl_api_ip4_address_t external_ip_address
Definition: nat44_ed.api:787
vl_api_nat44_identity_mapping_dump_t::context
u32 context
Definition: nat44_ed.api:908
vl_api_nat44_interface_details_t
NAT44 interface details response.
Definition: nat44_ed.api:716
vl_api_nat44_identity_mapping_details_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: nat44_ed.api:927
vl_api_nat_ha_get_failover_t
Get HA failover/remote settings.
Definition: nat44_ed.api:566
vl_api_nat44_add_del_static_mapping_v2_t::external_port
u16 external_port
Definition: nat44_ed.api:831
vl_api_nat_set_workers_t::client_index
u32 client_index
Definition: nat44_ed.api:328
vl_api_nat_show_config_2_t
Show NAT plugin startup config.
Definition: nat44_ed.api:182
vl_api_nat44_add_del_static_mapping_v2_t::external_ip_address
vl_api_ip4_address_t external_ip_address
Definition: nat44_ed.api:828
vl_api_nat44_interface_output_feature_details_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: nat44_ed.api:757
vl_api_nat44_interface_add_del_feature_t::client_index
u32 client_index
Definition: nat44_ed.api:692
vl_api_nat44_set_session_limit_t::session_limit
u32 session_limit
Definition: nat44_ed.api:306
vl_api_nat44_add_del_static_mapping_t::external_port
u16 external_port
Definition: nat44_ed.api:790
vl_api_nat_ha_get_failover_reply_t::session_refresh_interval
u32 session_refresh_interval
Definition: nat44_ed.api:584
vl_api_nat44_plugin_enable_disable_t::deprecated
option deprecated
Definition: nat44_ed.api:59
vl_api_nat44_interface_add_del_feature_t::context
u32 context
Definition: nat44_ed.api:693
vl_api_nat44_lb_static_mapping_add_del_local_t::external_port
u16 external_port
Definition: nat44_ed.api:1102
vl_api_nat44_show_running_config_reply_t::context
u32 context
Definition: nat44_ed.api:271
vl_api_nat44_static_mapping_details_t::external_port
u16 external_port
Definition: nat44_ed.api:870
vl_api_nat44_add_del_address_range_t::is_add
bool is_add
Definition: nat44_ed.api:657
probability
u8 probability
Definition: nat44_ed.api:1052
vl_api_nat44_ed_set_fq_options_t::in_progress
option in_progress
Definition: nat44_ed.api:1210
vl_api_nat_control_ping_t::context
u32 context
Definition: nat44_ed.api:104
vl_api_nat44_ed_plugin_enable_disable_t::enable
bool enable
Definition: nat44_ed.api:92
vl_api_nat44_address_details_t::context
u32 context
Definition: nat44_ed.api:677
vl_api_nat_get_mss_clamping_t::client_index
u32 client_index
Definition: nat44_ed.api:490
vl_api_nat44_user_session_details_t::protocol
u16 protocol
Definition: nat44_ed.api:1032
vl_api_nat44_interface_output_feature_details_t::flags
vl_api_nat_config_flags_t flags
Definition: nat44_ed.api:756
vl_api_nat_ha_get_listener_reply_t
Get HA listener/local configuration reply.
Definition: nat44_ed.api:554
vl_api_nat_set_timeouts_t
Set values of timeouts for NAT sessions (seconds)
Definition: nat44_ed.api:379
vl_api_nat44_add_del_address_range_t::flags
vl_api_nat_config_flags_t flags
Definition: nat44_ed.api:658
u16
unsigned short u16
Definition: types.h:57
vl_api_nat44_user_session_details_t::ext_host_nat_port
u16 ext_host_nat_port
Definition: nat44_ed.api:1040
vl_api_nat_show_config_t::client_index
u32 client_index
Definition: nat44_ed.api:129
vl_api_nat44_show_running_config_reply_t::outside_vrf
u32 outside_vrf
Definition: nat44_ed.api:274
vl_api_nat44_static_mapping_dump_t
Dump NAT44 static mappings.
Definition: nat44_ed.api:841
vl_api_nat44_user_session_dump_t::ip_address
vl_api_ip4_address_t ip_address
Definition: nat44_ed.api:1001
vl_api_nat44_interface_add_del_feature_t::is_add
bool is_add
Definition: nat44_ed.api:694
vl_api_nat_set_addr_and_port_alloc_alg_t::psid
u16 psid
Definition: nat44_ed.api:435
vl_api_nat44_ed_show_fq_options_reply_t::in_progress
option in_progress
Definition: nat44_ed.api:1234
vl_api_nat_ha_get_listener_t::client_index
u32 client_index
Definition: nat44_ed.api:543
vl_api_nat_set_workers_t
Set NAT workers.
Definition: nat44_ed.api:327
vl_api_nat_get_addr_and_port_alloc_alg_reply_t::psid_length
u8 psid_length
Definition: nat44_ed.api:466
nat44_lb_addr_port
typedef nat44_lb_addr_port
NAT44 load-balancing address and port pair.
Definition: nat44_ed.api:1049
vl_api_nat44_add_del_interface_addr_t::is_add
bool is_add
Definition: nat44_ed.api:942
vl_api_nat_get_mss_clamping_t::context
u32 context
Definition: nat44_ed.api:491
vl_api_nat_set_timeouts_t::context
u32 context
Definition: nat44_ed.api:382
vl_api_nat_control_ping_reply_t::client_index
u32 client_index
Definition: nat44_ed.api:118
vl_api_nat_show_config_2_reply_t::max_users_per_thread
u32 max_users_per_thread
Definition: nat44_ed.api:235
vl_api_nat_ha_resync_t
Resync HA (resend existing sessions to new failover)
Definition: nat44_ed.api:604
vl_api_nat44_ed_plugin_enable_disable_t
Enable/disable NAT44ED plugin.
Definition: nat44_ed.api:84
vl_api_nat44_lb_static_mapping_details_t::flags
vl_api_nat_config_flags_t flags
Definition: nat44_ed.api:1137
vl_api_nat44_del_session_t
Delete NAT44 session.
Definition: nat44_ed.api:1158
vl_api_nat44_static_mapping_details_t::tag
string tag[64]
Definition: nat44_ed.api:873
vl_api_nat44_add_del_static_mapping_t::is_add
bool is_add
Definition: nat44_ed.api:784
vl_api_nat44_add_del_static_mapping_v2_t::in_progress
option in_progress
Definition: nat44_ed.api:820
vl_api_nat44_user_session_details_t::ext_host_nat_address
vl_api_ip4_address_t ext_host_nat_address
Definition: nat44_ed.api:1039
vl_api_nat_set_mss_clamping_t
Set TCP MSS rewriting configuration.
Definition: nat44_ed.api:478
vl_api_nat44_user_session_details_t::outside_ip_address
vl_api_ip4_address_t outside_ip_address
Definition: nat44_ed.api:1028
vl_api_nat44_del_session_t::ext_host_port
u16 ext_host_port
Definition: nat44_ed.api:1167
vl_api_nat_control_ping_reply_t
Control ping from the client to the server response.
Definition: nat44_ed.api:113
vl_api_nat_show_config_reply_t::endpoint_dependent
bool endpoint_dependent
Definition: nat44_ed.api:162
vl_api_nat44_add_del_address_range_t::context
u32 context
Definition: nat44_ed.api:653
vl_api_nat_ha_resync_t::context
u32 context
Definition: nat44_ed.api:607
NAT44_IS_STATIC_MAPPING_ONLY
@ NAT44_IS_STATIC_MAPPING_ONLY
Definition: nat44_ed.api:33
addr
vhost_vring_addr_t addr
Definition: vhost_user.h:130
vl_api_nat44_static_mapping_details_t::local_ip_address
vl_api_ip4_address_t local_ip_address
Definition: nat44_ed.api:866
vl_api_nat44_ed_plugin_enable_disable_t::outside_vrf
u32 outside_vrf
Definition: nat44_ed.api:89
vl_api_nat_get_addr_and_port_alloc_alg_reply_t::context
u32 context
Definition: nat44_ed.api:462
vl_api_nat44_add_del_static_mapping_t::vrf_id
u32 vrf_id
Definition: nat44_ed.api:792
vl_api_nat44_add_del_identity_mapping_t::tag
string tag[64]
Definition: nat44_ed.api:899
vl_api_nat44_forwarding_is_enabled_reply_t
Response to check if forwarding is enabled or disabled.
Definition: nat44_ed.api:1198
vl_api_nat44_show_running_config_reply_t::users
u32 users
Definition: nat44_ed.api:275
vl_api_nat44_add_del_lb_static_mapping_t::tag
string tag[64]
Definition: nat44_ed.api:1083
vl_api_nat44_add_del_static_mapping_v2_t::is_add
bool is_add
Definition: nat44_ed.api:823
vl_api_nat44_del_session_t::port
u16 port
Definition: nat44_ed.api:1163
vl_api_nat44_user_details_t::vrf_id
u32 vrf_id
Definition: nat44_ed.api:986
vl_api_nat_ha_set_failover_t
Set HA failover (remote settings)
Definition: nat44_ed.api:530
vl_api_nat44_static_mapping_details_t::vrf_id
u32 vrf_id
Definition: nat44_ed.api:872
vl_api_nat44_ed_set_fq_options_t::frame_queue_nelts
u32 frame_queue_nelts
Definition: nat44_ed.api:1213
vl_api_nat44_add_del_identity_mapping_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: nat44_ed.api:897
vl_api_nat_set_timeouts_t::icmp
u32 icmp
Definition: nat44_ed.api:386
vl_api_nat44_del_user_t::fib_index
u32 fib_index
Definition: nat44_ed.api:638
vl_api_nat_ha_set_failover_t::client_index
u32 client_index
Definition: nat44_ed.api:531
vl_api_nat44_add_del_lb_static_mapping_t::external_addr
vl_api_ip4_address_t external_addr
Definition: nat44_ed.api:1079
vl_api_nat44_interface_add_del_feature_t::flags
vl_api_nat_config_flags_t flags
Definition: nat44_ed.api:695
vl_api_nat44_lb_static_mapping_details_t
NAT44 load-balancing static mapping rule details response.
Definition: nat44_ed.api:1132
vl_api_nat44_plugin_enable_disable_t::context
u32 context
Definition: nat44_ed.api:61
vl_api_nat44_plugin_enable_disable_t::flags
vl_api_nat44_config_flags_t flags
Definition: nat44_ed.api:70
vl_api_nat44_add_del_static_mapping_v2_t::pool_ip_address
vl_api_ip4_address_t pool_ip_address
Definition: nat44_ed.api:826
i32
signed int i32
Definition: types.h:77
vl_api_nat_show_config_2_reply_t::out2in_dpo
bool out2in_dpo
Definition: nat44_ed.api:221
vl_api_nat_ipfix_enable_disable_t::enable
bool enable
Definition: nat44_ed.api:368
vl_api_nat44_lb_static_mapping_dump_t::context
u32 context
Definition: nat44_ed.api:1113
vl_api_nat_get_mss_clamping_reply_t::enable
bool enable
Definition: nat44_ed.api:504
vl_api_nat_get_addr_and_port_alloc_alg_reply_t::end_port
u16 end_port
Definition: nat44_ed.api:469
vl_api_nat44_forwarding_is_enabled_reply_t::context
u32 context
Definition: nat44_ed.api:1200
vl_api_nat_show_config_t::context
u32 context
Definition: nat44_ed.api:130
vl_api_nat44_plugin_enable_disable_t::session_memory
u32 session_memory
Definition: nat44_ed.api:67
vl_api_nat_get_addr_and_port_alloc_alg_t
Get address and port assignment algorithm.
Definition: nat44_ed.api:444
vl_api_nat_get_timeouts_reply_t::tcp_established
u32 tcp_established
Definition: nat44_ed.api:412
vl_api_nat44_user_dump_t::context
u32 context
Definition: nat44_ed.api:974
vl_api_nat_get_timeouts_t::client_index
u32 client_index
Definition: nat44_ed.api:395
vl_api_nat44_show_running_config_reply_t::user_sessions
u32 user_sessions
Definition: nat44_ed.api:277
vl_api_nat_get_timeouts_reply_t::retval
i32 retval
Definition: nat44_ed.api:410
vl_api_nat44_lb_static_mapping_add_del_local_t::is_add
bool is_add
Definition: nat44_ed.api:1100
vl_api_nat_get_timeouts_reply_t
Get values of timeouts for NAT sessions reply.
Definition: nat44_ed.api:407
vl_api_nat44_lb_static_mapping_add_del_local_t::client_index
u32 client_index
Definition: nat44_ed.api:1098
vl_api_nat44_user_session_details_t::total_bytes
u64 total_bytes
Definition: nat44_ed.api:1035
vl_api_nat44_add_del_static_mapping_t::protocol
u8 protocol
Definition: nat44_ed.api:788
vl_api_nat44_lb_static_mapping_details_t::external_addr
vl_api_ip4_address_t external_addr
Definition: nat44_ed.api:1134
vl_api_nat44_plugin_enable_disable_t::sessions
u32 sessions
Definition: nat44_ed.api:66
vl_api_nat44_add_del_identity_mapping_t::client_index
u32 client_index
Definition: nat44_ed.api:890
vl_api_nat44_lb_static_mapping_details_t::external_port
u16 external_port
Definition: nat44_ed.api:1135
vl_api_nat_ha_flush_t::client_index
u32 client_index
Definition: nat44_ed.api:592
vl_api_nat44_add_del_lb_static_mapping_t::affinity
u32 affinity
Definition: nat44_ed.api:1082
vl_api_nat44_user_session_details_t::inside_port
u16 inside_port
Definition: nat44_ed.api:1031
vl_api_nat44_set_session_limit_t::context
u32 context
Definition: nat44_ed.api:305
vl_api_nat44_ed_set_fq_options_t::client_index
u32 client_index
Definition: nat44_ed.api:1211
NAT44_IS_ENDPOINT_INDEPENDENT
@ NAT44_IS_ENDPOINT_INDEPENDENT
Definition: nat44_ed.api:31
vl_api_nat_set_timeouts_t::deprecated
option deprecated
Definition: nat44_ed.api:380
vl_api_nat44_ed_show_fq_options_t::client_index
u32 client_index
Definition: nat44_ed.api:1223
vl_api_nat44_add_del_static_mapping_t::tag
string tag[64]
Definition: nat44_ed.api:793
vl_api_nat44_show_running_config_reply_t::forwarding_enabled
bool forwarding_enabled
Definition: nat44_ed.api:280
vl_api_nat_set_log_level_t::client_index
u32 client_index
Definition: nat44_ed.api:317
vl_api_nat44_forwarding_is_enabled_reply_t::deprecated
option deprecated
Definition: nat44_ed.api:1199
vl_api_nat44_show_running_config_reply_t::user_buckets
u32 user_buckets
Definition: nat44_ed.api:278
vl_api_nat44_static_mapping_dump_t::context
u32 context
Definition: nat44_ed.api:843
vl_api_nat_control_ping_t::client_index
u32 client_index
Definition: nat44_ed.api:103
vl_api_nat_get_timeouts_reply_t::tcp_transitory
u32 tcp_transitory
Definition: nat44_ed.api:413
vl_api_nat44_add_del_interface_addr_t::context
u32 context
Definition: nat44_ed.api:941
vl_api_nat44_add_del_static_mapping_v2_t::client_index
u32 client_index
Definition: nat44_ed.api:821
vl_api_nat_show_config_2_reply_t::max_translations_per_user
u32 max_translations_per_user
Definition: nat44_ed.api:227
vl_api_nat44_interface_addr_dump_t::context
u32 context
Definition: nat44_ed.api:953
vl_api_nat44_show_running_config_t::context
u32 context
Definition: nat44_ed.api:246
vl_api_nat44_interface_dump_t
Dump interfaces with NAT44 feature.
Definition: nat44_ed.api:703
vl_api_nat_ha_get_listener_reply_t::path_mtu
u32 path_mtu
Definition: nat44_ed.api:559
vl_api_nat_get_timeouts_t::context
u32 context
Definition: nat44_ed.api:396
vl_api_nat_ipfix_enable_disable_t
Enable/disable NAT IPFIX logging.
Definition: nat44_ed.api:362
vl_api_nat_show_config_2_reply_t::user_buckets
u32 user_buckets
Definition: nat44_ed.api:225
vl_api_nat44_add_del_static_mapping_v2_t::flags
vl_api_nat_config_flags_t flags
Definition: nat44_ed.api:825
vl_api_nat_show_config_2_t::deprecated
option deprecated
Definition: nat44_ed.api:184
vl_api_nat44_add_del_static_mapping_t::client_index
u32 client_index
Definition: nat44_ed.api:782
vl_api_nat44_add_del_identity_mapping_t::port
u16 port
Definition: nat44_ed.api:896
vl_api_nat_set_mss_clamping_t::mss_value
u16 mss_value
Definition: nat44_ed.api:481
nat44_lb_static_mapping_add_del_local
int nat44_lb_static_mapping_add_del_local(ip4_address_t e_addr, u16 e_port, ip4_address_t l_addr, u16 l_port, nat_protocol_t proto, u32 vrf_id, u8 probability, u8 is_add)
Definition: nat44_ed.c:1084
vl_api_nat44_plugin_enable_disable_t::outside_vrf
u32 outside_vrf
Definition: nat44_ed.api:63
vl_api_nat44_address_dump_t
Dump NAT44 addresses.
Definition: nat44_ed.api:665
vl_api_nat44_add_del_static_mapping_t::local_ip_address
vl_api_ip4_address_t local_ip_address
Definition: nat44_ed.api:786
vl_api_nat_ipfix_enable_disable_t::domain_id
u32 domain_id
Definition: nat44_ed.api:366
vl_api_nat_ha_set_listener_t
Set HA listener (local settings)
Definition: nat44_ed.api:514
vl_api_nat_ha_get_listener_reply_t::context
u32 context
Definition: nat44_ed.api:555
vl_api_nat_show_config_reply_t::context
u32 context
Definition: nat44_ed.api:157
vl_api_nat_worker_dump_t
Dump NAT workers.
Definition: nat44_ed.api:337
vl_api_nat44_static_mapping_details_t
NAT44 static mapping details response.
Definition: nat44_ed.api:863
vl_api_nat44_add_del_lb_static_mapping_t::local_num
u32 local_num
Definition: nat44_ed.api:1084
vl_api_nat_ipfix_enable_disable_t::client_index
u32 client_index
Definition: nat44_ed.api:364
vl_api_nat_show_config_reply_t::user_memory_size
u64 user_memory_size
Definition: nat44_ed.api:168
vl_api_nat_ha_flush_t
Flush the current HA data (for testing)
Definition: nat44_ed.api:591
vl_api_nat44_interface_addr_details_t
NAT44 pool addresses interfaces details response.
Definition: nat44_ed.api:962
vl_api_nat_ha_resync_completed_event_t::pid
u32 pid
Definition: nat44_ed.api:620
vl_api_nat_show_config_2_reply_t::inside_vrf_id
u32 inside_vrf_id
Definition: nat44_ed.api:229
vl_api_nat44_interface_dump_t::context
u32 context
Definition: nat44_ed.api:705
vl_api_nat44_user_dump_t
Dump NAT44 users.
Definition: nat44_ed.api:972
vl_api_nat44_set_session_limit_t
NAT44 set session limit.
Definition: nat44_ed.api:303
vl_api_nat44_ed_set_fq_options_t
Set NAT handoff frame queue options.
Definition: nat44_ed.api:1209
vl_api_nat_set_addr_and_port_alloc_alg_t::client_index
u32 client_index
Definition: nat44_ed.api:430
vl_api_nat44_plugin_enable_disable_t::client_index
u32 client_index
Definition: nat44_ed.api:60
vl_api_nat44_add_del_static_mapping_t::flags
vl_api_nat_config_flags_t flags
Definition: nat44_ed.api:785
vl_api_nat44_plugin_enable_disable_t::inside_vrf
u32 inside_vrf
Definition: nat44_ed.api:62
vl_api_nat_ha_set_failover_t::context
u32 context
Definition: nat44_ed.api:532
vl_api_nat_show_config_reply_t::static_mapping_connection_tracking
bool static_mapping_connection_tracking
Definition: nat44_ed.api:160
vl_api_nat_ha_set_listener_t::context
u32 context
Definition: nat44_ed.api:516
vl_api_nat44_interface_add_del_output_feature_t::is_add
bool is_add
Definition: nat44_ed.api:734
vl_api_nat44_add_del_lb_static_mapping_t::client_index
u32 client_index
Definition: nat44_ed.api:1075
vl_api_nat_show_config_2_reply_t::nat64_bib_memory_size
u64 nat64_bib_memory_size
Definition: nat44_ed.api:231
vl_api_nat44_add_del_lb_static_mapping_t::external_port
u16 external_port
Definition: nat44_ed.api:1080
vl_api_nat44_static_mapping_details_t::flags
vl_api_nat_config_flags_t flags
Definition: nat44_ed.api:865
vl_api_nat44_add_del_address_range_t::last_ip_address
vl_api_ip4_address_t last_ip_address
Definition: nat44_ed.api:655
vl_api_nat44_add_del_identity_mapping_t::is_add
bool is_add
Definition: nat44_ed.api:892
events
static perfmon_event_t events[]
Definition: core.c:21
vl_api_nat_ha_set_failover_t::port
u16 port
Definition: nat44_ed.api:534
vl_api_nat44_del_session_t::client_index
u32 client_index
Definition: nat44_ed.api:1159
vl_api_nat44_session_cleanup_t::context
u32 context
Definition: nat44_ed.api:294
vl_api_nat44_plugin_enable_disable_t::enable
bool enable
Definition: nat44_ed.api:69
vl_api_nat44_user_details_t
NAT44 users response.
Definition: nat44_ed.api:984
vl_api_nat_set_addr_and_port_alloc_alg_t
Set address and port assignment algorithm.
Definition: nat44_ed.api:429
vl_api_nat44_interface_add_del_feature_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: nat44_ed.api:696
vl_api_nat44_show_running_config_reply_t::translation_buckets
u32 translation_buckets
Definition: nat44_ed.api:279
nat44_set_session_limit
int nat44_set_session_limit(u32 session_limit, u32 vrf_id)
Set NAT44 session limit (session limit, vrf id)
Definition: nat44_ed.c:2770
vl_api_nat44_interface_addr_dump_t
Dump NAT44 pool addresses interfaces.
Definition: nat44_ed.api:951
vl_api_nat44_add_del_static_mapping_v2_t::vrf_id
u32 vrf_id
Definition: nat44_ed.api:833
vl_api_nat_show_config_2_t::client_index
u32 client_index
Definition: nat44_ed.api:185
vl_api_nat44_lb_static_mapping_dump_t
Dump NAT44 load-balancing static mapping rules.
Definition: nat44_ed.api:1111
vl_api_nat44_del_session_t::address
vl_api_ip4_address_t address
Definition: nat44_ed.api:1161
vl_api_nat_ha_resync_completed_event_t
Tell client about a HA resync completion event.
Definition: nat44_ed.api:617
vl_api_nat_show_config_t
Show NAT plugin startup config.
Definition: nat44_ed.api:126
vl_api_nat44_user_details_t::ip_address
vl_api_ip4_address_t ip_address
Definition: nat44_ed.api:987
vl_api_nat_get_addr_and_port_alloc_alg_t::context
u32 context
Definition: nat44_ed.api:446
vl_api_nat_set_log_level_t::context
u32 context
Definition: nat44_ed.api:318
vl_api_nat44_del_session_t::vrf_id
u32 vrf_id
Definition: nat44_ed.api:1164
vl_api_nat_show_config_2_reply_t::deterministic
bool deterministic
Definition: nat44_ed.api:219
vl_api_nat44_add_del_lb_static_mapping_t::context
u32 context
Definition: nat44_ed.api:1076
vl_api_nat_ha_set_listener_t::client_index
u32 client_index
Definition: nat44_ed.api:515
vl_api_nat_set_timeouts_t::tcp_transitory
u32 tcp_transitory
Definition: nat44_ed.api:385
vl_api_nat44_identity_mapping_details_t::tag
string tag[64]
Definition: nat44_ed.api:929
vl_api_nat_get_timeouts_reply_t::udp
u32 udp
Definition: nat44_ed.api:411
vl_api_nat44_address_details_t::vrf_id
u32 vrf_id
Definition: nat44_ed.api:680
vl_api_nat44_add_del_identity_mapping_t
Add/delete NAT44 identity mapping.
Definition: nat44_ed.api:889
vl_api_nat_ha_resync_t::client_index
u32 client_index
Definition: nat44_ed.api:606
vl_api_nat44_forwarding_is_enabled_t::client_index
u32 client_index
Definition: nat44_ed.api:1190
vl_api_nat44_add_del_static_mapping_v2_t::local_ip_address
vl_api_ip4_address_t local_ip_address
Definition: nat44_ed.api:827
vl_api_nat_ha_set_listener_t::port
u16 port
Definition: nat44_ed.api:518
vl_api_nat44_static_mapping_dump_t::client_index
u32 client_index
Definition: nat44_ed.api:842
vl_api_nat_show_config_reply_t::translation_memory_size
u32 translation_memory_size
Definition: nat44_ed.api:166
vl_api_nat_set_timeouts_t::client_index
u32 client_index
Definition: nat44_ed.api:381
vl_api_nat44_add_del_lb_static_mapping_t::flags
vl_api_nat_config_flags_t flags
Definition: nat44_ed.api:1078
vl_api_nat44_user_session_details_t::context
u32 context
Definition: nat44_ed.api:1027
vl_api_nat44_interface_details_t::flags
vl_api_nat_config_flags_t flags
Definition: nat44_ed.api:718
vl_api_nat44_identity_mapping_details_t::protocol
u8 protocol
Definition: nat44_ed.api:925
vl_api_nat_show_config_2_reply_t
Show NAT plugin startup config reply.
Definition: nat44_ed.api:212
vl_api_nat44_lb_static_mapping_details_t::locals
vl_api_nat44_lb_addr_port_t locals[local_num]
Definition: nat44_ed.api:1141
vl_api_nat44_add_del_interface_addr_t::sw_if_index
vl_api_interface_index_t sw_if_index
Definition: nat44_ed.api:943
vl_api_nat44_show_running_config_reply_t::inside_vrf
u32 inside_vrf
Definition: nat44_ed.api:273
vl_api_nat44_ed_show_fq_options_reply_t::frame_queue_nelts
u32 frame_queue_nelts
Definition: nat44_ed.api:1237
vl_api_nat_get_timeouts_t::deprecated
option deprecated
Definition: nat44_ed.api:394
vl_api_nat_ha_resync_t::pid
u32 pid
Definition: nat44_ed.api:609
vl_api_nat44_add_del_identity_mapping_t::vrf_id
u32 vrf_id
Definition: nat44_ed.api:898
vl_api_nat44_interface_dump_t::client_index
u32 client_index
Definition: nat44_ed.api:704
vl_api_nat44_address_dump_t::client_index
u32 client_index
Definition: nat44_ed.api:666
version
option version
Definition: nat44_ed.api:16
vl_api_nat44_del_session_t::ext_host_address
vl_api_ip4_address_t ext_host_address
Definition: nat44_ed.api:1166
NAT44_IS_ENDPOINT_DEPENDENT
@ NAT44_IS_ENDPOINT_DEPENDENT
Definition: nat44_ed.api:32
vl_api_nat44_add_del_lb_static_mapping_t
Add/delete NAT44 load-balancing static mapping rule.
Definition: nat44_ed.api:1074
vl_api_nat44_add_del_lb_static_mapping_t::is_add
bool is_add
Definition: nat44_ed.api:1077
vl_api_nat_show_config_2_reply_t::outside_vrf_id
u32 outside_vrf_id
Definition: nat44_ed.api:228
vl_api_nat44_interface_addr_details_t::flags
vl_api_nat_config_flags_t flags
Definition: nat44_ed.api:965
vl_api_nat_show_config_reply_t::out2in_dpo
bool out2in_dpo
Definition: nat44_ed.api:163
vl_api_nat44_user_session_details_t::outside_port
u16 outside_port
Definition: nat44_ed.api:1029
vl_api_nat44_del_session_t::flags
vl_api_nat_config_flags_t flags
Definition: nat44_ed.api:1165
vl_api_nat44_ed_show_fq_options_t::in_progress
option in_progress
Definition: nat44_ed.api:1222
vl_api_nat_set_addr_and_port_alloc_alg_t::psid_offset
u8 psid_offset
Definition: nat44_ed.api:433
vl_api_nat_show_config_2_reply_t::translation_buckets
u32 translation_buckets
Definition: nat44_ed.api:223
vl_api_nat_set_addr_and_port_alloc_alg_t::start_port
u16 start_port
Definition: nat44_ed.api:436
vl_api_nat_get_timeouts_reply_t::context
u32 context
Definition: nat44_ed.api:409
vl_api_nat44_address_details_t::ip_address
vl_api_ip4_address_t ip_address
Definition: nat44_ed.api:678
vl_api_nat44_static_mapping_details_t::context
u32 context
Definition: nat44_ed.api:864
vl_api_nat44_identity_mapping_details_t::context
u32 context
Definition: nat44_ed.api:922
vl_api_nat44_ed_plugin_enable_disable_t::context
u32 context
Definition: nat44_ed.api:87
vl_api_nat44_add_del_identity_mapping_t::ip_address
vl_api_ip4_address_t ip_address
Definition: nat44_ed.api:894
u64
unsigned long u64
Definition: types.h:89
vl_api_nat_get_timeouts_reply_t::deprecated
option deprecated
Definition: nat44_ed.api:408
vl_api_nat44_interface_output_feature_dump_t
Dump interfaces with NAT44 output feature.
Definition: nat44_ed.api:743
vl_api_nat_set_addr_and_port_alloc_alg_t::end_port
u16 end_port
Definition: nat44_ed.api:437
vl_api_nat44_del_user_t::ip_address
vl_api_ip4_address_t ip_address
Definition: nat44_ed.api:637
vl_api_nat44_lb_static_mapping_details_t::affinity
u32 affinity
Definition: nat44_ed.api:1138
vl_api_nat44_interface_output_feature_details_t
NAT44 interface with output feature details response.
Definition: nat44_ed.api:754
vl_api_nat_set_workers_t::worker_mask
u64 worker_mask
Definition: nat44_ed.api:330
vl_api_nat44_del_session_t::protocol
u8 protocol
Definition: nat44_ed.api:1162
vl_api_nat44_static_mapping_details_t::local_port
u16 local_port
Definition: nat44_ed.api:869
vl_api_nat44_user_session_details_t::ext_host_port
u16 ext_host_port
Definition: nat44_ed.api:1038
vl_api_nat44_identity_mapping_details_t::port
u16 port
Definition: nat44_ed.api:926
u32
unsigned int u32
Definition: types.h:88
vl_api_nat_set_mss_clamping_t::enable
bool enable
Definition: nat44_ed.api:482
vl_api_nat_show_config_2_reply_t::nat64_st_memory_size
u64 nat64_st_memory_size
Definition: nat44_ed.api:233
vl_api_nat44_add_del_interface_addr_t
Add/delete NAT44 pool address from specific interfce.
Definition: nat44_ed.api:939
vl_api_nat_set_timeouts_t::tcp_established
u32 tcp_established
Definition: nat44_ed.api:384
vl_api_nat44_add_del_address_range_t::vrf_id
u32 vrf_id
Definition: nat44_ed.api:656
vl_api_nat44_lb_static_mapping_add_del_local_t::protocol
u8 protocol
Definition: nat44_ed.api:1103
vl_api_nat44_set_session_limit_t::client_index
u32 client_index
Definition: nat44_ed.api:304
vl_api_nat44_lb_static_mapping_dump_t::client_index
u32 client_index
Definition: nat44_ed.api:1112
vl_api_nat44_forwarding_is_enabled_t
Check if forwarding is enabled or disabled.
Definition: nat44_ed.api:1188
vl_api_nat44_plugin_enable_disable_t
Enable/disable NAT44 plugin.
Definition: nat44_ed.api:58
vl_api_nat44_add_del_interface_addr_t::client_index
u32 client_index
Definition: nat44_ed.api:940
vl_api_nat_control_ping_reply_t::context
u32 context
Definition: nat44_ed.api:116
vl_api_nat_set_addr_and_port_alloc_alg_t::context
u32 context
Definition: nat44_ed.api:431
vl_api_nat44_user_dump_t::client_index
u32 client_index
Definition: nat44_ed.api:973
vl_api_nat44_static_mapping_details_t::external_ip_address
vl_api_ip4_address_t external_ip_address
Definition: nat44_ed.api:867
vl_api_nat44_user_session_details_t::total_pkts
u32 total_pkts
Definition: nat44_ed.api:1036
vl_api_nat_ha_get_failover_reply_t
Get HA failover/remote settings reply.
Definition: nat44_ed.api:579
vl_api_nat_show_config_reply_t::outside_vrf_id
u32 outside_vrf_id
Definition: nat44_ed.api:170
vl_api_nat_show_config_reply_t::user_buckets
u32 user_buckets
Definition: nat44_ed.api:167
vl_api_nat_control_ping_reply_t::retval
i32 retval
Definition: nat44_ed.api:117
vl_api_nat44_add_del_address_range_t
Add/del NAT44 address range.
Definition: nat44_ed.api:651
vl_api_nat_ha_set_listener_t::ip_address
vl_api_ip4_address_t ip_address
Definition: nat44_ed.api:517
vl_api_nat44_show_running_config_reply_t::in_progress
option in_progress
Definition: nat44_ed.api:270
vl_api_nat_show_config_2_t::context
u32 context
Definition: nat44_ed.api:186
vl_api_nat44_interface_add_del_output_feature_t::context
u32 context
Definition: nat44_ed.api:733
vl_api_nat_ha_flush_t::context
u32 context
Definition: nat44_ed.api:593
vl_api_nat44_add_del_static_mapping_v2_t::local_port
u16 local_port
Definition: nat44_ed.api:830
vl_api_nat_ha_get_failover_reply_t::retval
i32 retval
Definition: nat44_ed.api:581
vl_api_nat_ha_get_failover_reply_t::port
u16 port
Definition: nat44_ed.api:583
vl_api_nat_ha_get_listener_t
Get HA listener/local configuration.
Definition: nat44_ed.api:542
vl_api_nat44_add_del_identity_mapping_t::flags
vl_api_nat_config_flags_t flags
Definition: nat44_ed.api:893
vl_api_nat44_add_del_static_mapping_t::local_port
u16 local_port
Definition: nat44_ed.api:789
vl_api_nat_set_log_level_t::log_level
vl_api_nat_log_level_t log_level
Definition: nat44_ed.api:319
vl_api_nat_show_config_reply_t::nat64_st_memory_size
u64 nat64_st_memory_size
Definition: nat44_ed.api:175
vl_api_nat_set_log_level_t::deprecated
option deprecated
Definition: nat44_ed.api:316
vl_api_nat44_add_del_static_mapping_v2_t
Add/delete NAT44 static mapping.
Definition: nat44_ed.api:819
vl_api_nat44_show_running_config_reply_t::log_level
vl_api_nat_log_level_t log_level
Definition: nat44_ed.api:283
vl_api_nat44_interface_add_del_output_feature_t
Enable/disbale NAT44 as an interface output feature (postrouting in2out translation)
Definition: nat44_ed.api:731
vl_api_nat_get_mss_clamping_reply_t::context
u32 context
Definition: nat44_ed.api:501
vl_api_nat44_show_running_config_t::in_progress
option in_progress
Definition: nat44_ed.api:244
vl_api_nat_show_config_2_reply_t::static_mapping_connection_tracking
bool static_mapping_connection_tracking
Definition: nat44_ed.api:218
vl_api_nat_get_mss_clamping_reply_t::mss_value
u16 mss_value
Definition: nat44_ed.api:503
vl_api_nat_show_config_reply_t::translation_buckets
u32 translation_buckets
Definition: nat44_ed.api:165
vl_api_nat44_show_running_config_t::client_index
u32 client_index
Definition: nat44_ed.api:245
vl_api_nat44_ed_plugin_enable_disable_t::flags
vl_api_nat44_config_flags_t flags
Definition: nat44_ed.api:93
vl_api_nat44_del_user_t
Del NAT44 user.
Definition: nat44_ed.api:634
vl_api_nat44_add_del_static_mapping_v2_t::external_sw_if_index
vl_api_interface_index_t external_sw_if_index
Definition: nat44_ed.api:832
vl_api_nat_show_config_reply_t::deprecated
option deprecated
Definition: nat44_ed.api:156
vl_api_nat_ha_set_failover_t::ip_address
vl_api_ip4_address_t ip_address
Definition: nat44_ed.api:533
vl_api_nat_show_config_t::deprecated
option deprecated
Definition: nat44_ed.api:128
vl_api_nat_worker_details_t::lcore_id
u32 lcore_id
Definition: nat44_ed.api:351
vl_api_nat44_lb_static_mapping_add_del_local_t::local
vl_api_nat44_lb_addr_port_t local
Definition: nat44_ed.api:1104
vl_api_nat44_interface_addr_dump_t::client_index
u32 client_index
Definition: nat44_ed.api:952
vl_api_nat44_interface_addr_details_t::context
u32 context
Definition: nat44_ed.api:963
vl_api_nat_show_config_2_reply_t::deprecated
option deprecated
Definition: nat44_ed.api:214
vl_api_nat44_add_del_static_mapping_v2_t::match_pool
bool match_pool
Definition: nat44_ed.api:824
vl_api_nat_set_workers_t::context
u32 context
Definition: nat44_ed.api:329
vl_api_nat44_plugin_enable_disable_t::users
u32 users
Definition: nat44_ed.api:64
vl_api_nat44_static_mapping_details_t::external_sw_if_index
vl_api_interface_index_t external_sw_if_index
Definition: nat44_ed.api:871
vl_api_nat_get_addr_and_port_alloc_alg_reply_t::psid
u16 psid
Definition: nat44_ed.api:467
vl_api_nat44_plugin_enable_disable_t::user_memory
u32 user_memory
Definition: nat44_ed.api:65
vl_api_nat44_identity_mapping_details_t
NAT44 identity mapping details response.
Definition: nat44_ed.api:921
vl_api_nat44_add_del_lb_static_mapping_t::protocol
u8 protocol
Definition: nat44_ed.api:1081
vl_api_nat_ha_get_failover_t::context
u32 context
Definition: nat44_ed.api:568
vl_api_nat_worker_dump_t::client_index
u32 client_index
Definition: nat44_ed.api:338
vl_api_nat_ha_get_failover_reply_t::ip_address
vl_api_ip4_address_t ip_address
Definition: nat44_ed.api:582
vl_api_nat_show_config_reply_t::dslite_ce
bool dslite_ce
Definition: nat44_ed.api:164
u8
unsigned char u8
Definition: types.h:56
vl_api_nat44_user_details_t::nsessions
u32 nsessions
Definition: nat44_ed.api:988
vl_api_nat44_address_details_t::flags
vl_api_nat_config_flags_t flags
Definition: nat44_ed.api:679
vl_api_nat44_user_session_details_t
NAT44 user's sessions response.
Definition: nat44_ed.api:1026
nat_ha_set_failover
int nat_ha_set_failover(vlib_main_t *vm, ip4_address_t *addr, u16 port, u32 session_refresh_interval)
Set HA failover (remote settings)
Definition: nat44_ei_ha.c:540
vl_api_nat_show_config_2_reply_t::max_translations_per_thread
u32 max_translations_per_thread
Definition: nat44_ed.api:234
nat_ha_resync
int nat_ha_resync(u32 client_index, u32 pid, nat_ha_resync_event_cb_t event_callback)
Resync HA (resend existing sessions to new failover)
Definition: nat44_ei_ha.c:1283
vl_api_nat44_show_running_config_reply_t::sessions
u32 sessions
Definition: nat44_ed.api:276
vl_api_nat44_interface_output_feature_dump_t::context
u32 context
Definition: nat44_ed.api:745
vl_api_nat44_add_del_static_mapping_t::external_sw_if_index
vl_api_interface_index_t external_sw_if_index
Definition: nat44_ed.api:791
vl_api_nat_set_log_level_t
Set NAT logging level.
Definition: nat44_ed.api:315
vl_api_nat44_forwarding_enable_disable_t::deprecated
option deprecated
Definition: nat44_ed.api:1178
vl_api_nat_get_mss_clamping_reply_t
Get TCP MSS rewriting configuration reply.
Definition: nat44_ed.api:500
vl_api_nat44_ed_show_fq_options_reply_t::retval
i32 retval
Definition: nat44_ed.api:1236
vl_api_nat44_forwarding_is_enabled_t::context
u32 context
Definition: nat44_ed.api:1191
vl_api_nat44_add_del_identity_mapping_t::context
u32 context
Definition: nat44_ed.api:891
vl_api_nat44_del_user_t::client_index
u32 client_index
Definition: nat44_ed.api:635
vl_api_nat_show_config_reply_t::nat64_bib_buckets
u32 nat64_bib_buckets
Definition: nat44_ed.api:172
vl_api_nat44_identity_mapping_details_t::ip_address
vl_api_ip4_address_t ip_address
Definition: nat44_ed.api:924
nat_ha_set_listener
int nat_ha_set_listener(vlib_main_t *vm, ip4_address_t *addr, u16 port, u32 path_mtu)
Set HA listener (local settings)
Definition: nat44_ei_ha.c:495
vl_api_nat44_lb_static_mapping_add_del_local_t::context
u32 context
Definition: nat44_ed.api:1099
vl_api_nat44_lb_static_mapping_details_t::tag
string tag[64]
Definition: nat44_ed.api:1139
vl_api_nat_ha_resync_t::want_resync_event
u8 want_resync_event
Definition: nat44_ed.api:608
vl_api_nat44_interface_add_del_feature_t
Enable/disable NAT44 feature on the interface.
Definition: nat44_ed.api:691
vl_api_nat_get_addr_and_port_alloc_alg_t::client_index
u32 client_index
Definition: nat44_ed.api:445
vl_api_nat44_lb_static_mapping_details_t::context
u32 context
Definition: nat44_ed.api:1133
port
u16 port
Definition: nat44_ed.api:1051
vl_api_nat44_forwarding_enable_disable_t
Enable/disable forwarding for NAT44 Forward packets which don't match existing translation or static ...
Definition: nat44_ed.api:1177
vrf_id
u32 vrf_id
Definition: nat44_ed.api:1053
vl_api_nat_worker_details_t::name
string name[64]
Definition: nat44_ed.api:352
vl_api_nat44_add_del_static_mapping_t
Add/delete NAT44 static mapping.
Definition: nat44_ed.api:781
vl_api_nat44_user_session_dump_t::vrf_id
u32 vrf_id
Definition: nat44_ed.api:1002
vl_api_nat44_ed_show_fq_options_reply_t::context
u32 context
Definition: nat44_ed.api:1235
vl_api_nat44_add_del_address_range_t::first_ip_address
vl_api_ip4_address_t first_ip_address
Definition: nat44_ed.api:654
vl_api_nat44_user_session_dump_t
NAT44 user's sessions.
Definition: nat44_ed.api:998
vl_api_nat_show_config_2_reply_t::endpoint_dependent
bool endpoint_dependent
Definition: nat44_ed.api:220
nat44_add_del_lb_static_mapping
int nat44_add_del_lb_static_mapping(ip4_address_t e_addr, u16 e_port, nat_protocol_t proto, nat44_lb_addr_port_t *locals, u8 is_add, twice_nat_type_t twice_nat, u8 out2in_only, u8 *tag, u32 affinity)
Add/delete static mapping with load-balancing (multiple backends)
Definition: nat44_ed.c:856
vl_api_nat44_identity_mapping_dump_t::client_index
u32 client_index
Definition: nat44_ed.api:907
vl_api_nat44_add_del_lb_static_mapping_t::locals
vl_api_nat44_lb_addr_port_t locals[local_num]
Definition: nat44_ed.api:1085
vl_api_nat_show_config_reply_t::static_mapping_only
bool static_mapping_only
Definition: nat44_ed.api:159
vl_api_nat_get_mss_clamping_t
Get TCP MSS rewriting configuration.
Definition: nat44_ed.api:489
NAT44_IS_CONNECTION_TRACKING
@ NAT44_IS_CONNECTION_TRACKING
Definition: nat44_ed.api:34
vl_api_nat_show_config_reply_t::nat64_st_buckets
u32 nat64_st_buckets
Definition: nat44_ed.api:174
vl_api_nat44_ed_show_fq_options_t
Show NAT handoff frame queue options.
Definition: nat44_ed.api:1220
vl_api_nat44_user_session_details_t::ext_host_address
vl_api_ip4_address_t ext_host_address
Definition: nat44_ed.api:1037
vl_api_nat44_address_details_t
NAT44 address details response.
Definition: nat44_ed.api:676
vl_api_nat_ha_get_listener_t::context
u32 context
Definition: nat44_ed.api:544
vl_api_nat44_show_running_config_t
Show NAT44 plugin running config.
Definition: nat44_ed.api:242
vl_api_nat_worker_details_t
NAT workers details response.
Definition: nat44_ed.api:348
vl_api_nat44_user_session_details_t::last_heard
u64 last_heard
Definition: nat44_ed.api:1034
vl_api_nat_ha_get_listener_reply_t::ip_address
vl_api_ip4_address_t ip_address
Definition: nat44_ed.api:557
vl_api_nat_ha_resync_completed_event_t::client_index
u32 client_index
Definition: nat44_ed.api:619
vl_api_nat44_user_session_details_t::flags
vl_api_nat_config_flags_t flags
Definition: nat44_ed.api:1033
vl_api_nat_control_ping_t
Control ping from client to api server request.
Definition: nat44_ed.api:100
vl_api_nat_ipfix_enable_disable_t::deprecated
option deprecated
Definition: nat44_ed.api:363
vl_api_nat_ipfix_enable_disable_t::src_port
u16 src_port
Definition: nat44_ed.api:367
vl_api_nat_get_addr_and_port_alloc_alg_reply_t
Get address and port assignment algorithm reply.
Definition: nat44_ed.api:461
nat_ha_get_failover
void nat_ha_get_failover(ip4_address_t *addr, u16 *port, u32 *session_refresh_interval)
Get HA failover/remote settings.
Definition: nat44_ei_ha.c:555
vl_api_nat_ipfix_enable_disable_t::context
u32 context
Definition: nat44_ed.api:365
vl_api_nat44_session_cleanup_t::deprecated
option deprecated
Definition: nat44_ed.api:292
vl_api_nat_get_mss_clamping_reply_t::retval
i32 retval
Definition: nat44_ed.api:502
vl_api_nat_set_addr_and_port_alloc_alg_t::psid_length
u8 psid_length
Definition: nat44_ed.api:434
vl_api_nat44_plugin_enable_disable_t::user_sessions
u32 user_sessions
Definition: nat44_ed.api:68
vl_api_nat44_identity_mapping_dump_t
Dump NAT44 identity mappings.
Definition: nat44_ed.api:906
vl_api_nat44_ed_show_fq_options_t::context
u32 context
Definition: nat44_ed.api:1224
vl_api_nat44_user_details_t::nstaticsessions
u32 nstaticsessions
Definition: nat44_ed.api:989
vl_api_nat44_ed_plugin_enable_disable_t::session_memory
u32 session_memory
Definition: nat44_ed.api:91
vl_api_nat_get_addr_and_port_alloc_alg_reply_t::alg
u8 alg
Definition: nat44_ed.api:464
vl_api_nat_show_config_2_reply_t::static_mapping_only
bool static_mapping_only
Definition: nat44_ed.api:217
vl_api_nat44_ed_set_fq_options_t::context
u32 context
Definition: nat44_ed.api:1212
vl_api_nat_worker_dump_t::context
u32 context
Definition: nat44_ed.api:339
vl_api_nat_worker_details_t::context
u32 context
Definition: nat44_ed.api:349
vl_api_nat_show_config_reply_t::deterministic
bool deterministic
Definition: nat44_ed.api:161
vl_api_nat44_forwarding_is_enabled_reply_t::enabled
bool enabled
Definition: nat44_ed.api:1201
vl_api_nat44_user_session_details_t::inside_ip_address
vl_api_ip4_address_t inside_ip_address
Definition: nat44_ed.api:1030
vl_api_nat_show_config_2_reply_t::user_memory_size
u64 user_memory_size
Definition: nat44_ed.api:226
vl_api_nat_show_config_2_reply_t::translation_memory_size
u64 translation_memory_size
Definition: nat44_ed.api:224
vl_api_nat_show_config_reply_t
DEPRECATED: Show NAT plugin startup config reply.
Definition: nat44_ed.api:154