summaryrefslogtreecommitdiffstats
path: root/nat/nat-api/src/main/yang/interface-nat@2016-08-01.yang
diff options
context:
space:
mode:
authorMarek Gradzki <mgradzki@cisco.com>2017-08-01 12:50:31 +0200
committerJan Srnicek <jsrnicek@cisco.com>2017-08-02 08:05:52 +0000
commit3c0282ee7e937e0225e48ccb4d712ccf0d6267f9 (patch)
treedde48ab6957f43392ceca581a65adb751ebbb0d2 /nat/nat-api/src/main/yang/interface-nat@2016-08-01.yang
parent36f5d08e1e7fb2838d88133140f5dab53f8d9882 (diff)
HC2VPP-197: update interface-nat model to support post-routing NAT
Change-Id: I009d790e21ff5019f94145e1aa1e08f87b6729ca Signed-off-by: Marek Gradzki <mgradzki@cisco.com>
Diffstat (limited to 'nat/nat-api/src/main/yang/interface-nat@2016-08-01.yang')
-rw-r--r--nat/nat-api/src/main/yang/interface-nat@2016-08-01.yang63
1 files changed, 63 insertions, 0 deletions
diff --git a/nat/nat-api/src/main/yang/interface-nat@2016-08-01.yang b/nat/nat-api/src/main/yang/interface-nat@2016-08-01.yang
new file mode 100644
index 000000000..6906a67c1
--- /dev/null
+++ b/nat/nat-api/src/main/yang/interface-nat@2016-08-01.yang
@@ -0,0 +1,63 @@
+module interface-nat {
+ yang-version 1;
+ namespace "urn:opendaylight:params:xml:ns:yang:interface:nat";
+ prefix "ifc-nat";
+
+ revision "2017-08-01" {
+ description "Added support for snat_interface_add_del_output_feature.";
+ }
+
+ revision "2016-12-14" {
+ description "Initial revision of interface-nat model.";
+ }
+
+ import ietf-interfaces {
+ prefix "if";
+ }
+ import ietf-nat {
+ prefix "nat";
+ }
+ import yang-ext {
+ prefix "ext";
+ }
+
+ description "Augmentations to interfaces model to connect interfaces with nat configuration.";
+
+ grouping interface-nat-vpp-feature-attributes {
+ leaf post-routing {
+ type boolean;
+ default false;
+ description
+ "Indicates whether NAT translation should be applied after routing.
+ If true, snat_interface_add_del_output_feature message is used to enable NAT.
+ By default snat_interface_add_del_feature is used.";
+ reference
+ "https://git.fd.io/vpp/tree/src/plugins/snat/snat.api";
+ }
+ }
+
+ grouping interface-nat-attributes {
+ container nat {
+ container inbound {
+ presence "Enables inbound NAT";
+ uses interface-nat-vpp-feature-attributes;
+ }
+ container outbound {
+ presence "Enables outbound NAT";
+ uses interface-nat-vpp-feature-attributes;
+ }
+ }
+ }
+
+ augment /if:interfaces/if:interface {
+ ext:augment-identifier "nat-interface-augmentation";
+
+ uses interface-nat-attributes;
+ }
+
+ augment /if:interfaces-state/if:interface {
+ ext:augment-identifier "nat-interface-state-augmentation";
+
+ uses interface-nat-attributes;
+ }
+} \ No newline at end of file