summaryrefslogtreecommitdiff
path: root/interface-definitions/vpp.xml.in
diff options
context:
space:
mode:
authorDaniil Baturin <daniil@vyos.io>2025-03-18 15:58:26 +0000
committerGitHub <noreply@github.com>2025-03-18 15:58:26 +0000
commit337837dd8a57d7af282d603f8b930ed40f7fa03c (patch)
treef156d60a3f29bae77303f8409ccc3395d9d7bad2 /interface-definitions/vpp.xml.in
parent7de0ab73af90d4d39519f3ba0dec80fb6b9badf5 (diff)
parent13f99beada6ac28ede7c74d434b84a63bf9905b0 (diff)
downloadvyos-1x-337837dd8a57d7af282d603f8b930ed40f7fa03c.tar.gz
vyos-1x-337837dd8a57d7af282d603f8b930ed40f7fa03c.zip
Merge pull request #16 from sever-sever/T7181
T7181: VPP add initial source NAT implentation
Diffstat (limited to 'interface-definitions/vpp.xml.in')
-rw-r--r--interface-definitions/vpp.xml.in65
1 files changed, 65 insertions, 0 deletions
diff --git a/interface-definitions/vpp.xml.in b/interface-definitions/vpp.xml.in
index 150803a0d..138991084 100644
--- a/interface-definitions/vpp.xml.in
+++ b/interface-definitions/vpp.xml.in
@@ -842,6 +842,71 @@
</node>
</children>
</node>
+ <node name="nat44">
+ <properties>
+ <help>NAT44</help>
+ </properties>
+ <children>
+ <node name="source" owner="${vyos_conf_scripts_dir}/vpp_nat_source.py">
+ <properties>
+ <help>Source NAT setting</help>
+ <priority>320</priority>
+ </properties>
+ <children>
+ <leafNode name="inbound-interface">
+ <properties>
+ <help>Inbound interface of NAT traffic</help>
+ <completionHelp>
+ <list>any</list>
+ <script>${vyos_completion_dir}/list_interfaces</script>
+ </completionHelp>
+ </properties>
+ </leafNode>
+ <leafNode name="outbound-interface">
+ <properties>
+ <help>Outbound interface of NAT traffic</help>
+ <completionHelp>
+ <list>any</list>
+ <script>${vyos_completion_dir}/list_interfaces</script>
+ </completionHelp>
+ </properties>
+ </leafNode>
+ <node name="translation">
+ <properties>
+ <help>Outside NAT IP (source NAT only)</help>
+ </properties>
+ <children>
+ <leafNode name="address">
+ <properties>
+ <help>IP address, subnet, or range</help>
+ <completionHelp>
+ <list>masquerade</list>
+ </completionHelp>
+ <valueHelp>
+ <format>ipv4</format>
+ <description>IPv4 address to match</description>
+ </valueHelp>
+ <valueHelp>
+ <format>ipv4range</format>
+ <description>IPv4 address range to match</description>
+ </valueHelp>
+ <valueHelp>
+ <format>masquerade</format>
+ <description>NAT to the primary address of outbound-interface</description>
+ </valueHelp>
+ <constraint>
+ <validator name="ipv4-address"/>
+ <validator name="ipv4-range"/>
+ <regex>(masquerade)</regex>
+ </constraint>
+ </properties>
+ </leafNode>
+ </children>
+ </node>
+ </children>
+ </node>
+ </children>
+ </node>
<tagNode name="kernel-interfaces" owner="${vyos_conf_scripts_dir}/vpp_kernel-interfaces.py">
<properties>
<help>VPP kernel interface settings</help>