2 namespace "urn:opendaylight:vpnservice:natservice";
5 import ietf-yang-types { prefix "yang"; /*revision-date 2013-07-15; */}
6 import ietf-inet-types { prefix "inet"; }
8 revision "2016-01-11" {
9 description "NAT Manager module";
12 container external-networks {
18 leaf vpnid { type yang:uuid; }
19 leaf-list router-ids { type yang:uuid; }
23 container ext-routers {
26 leaf router-name { type string; }
27 leaf network-id { type yang:uuid; }
28 leaf enable-snat { type boolean; }
29 leaf-list external-ips {
30 type string; //format - ipaddress\prefixlength
32 leaf-list subnet-ids { type yang:uuid; }
33 leaf ext_gw_mac_address { type string; }
38 grouping external-interface-info {
39 leaf internal-ip { type string; }
40 leaf external-ip { type string; }
41 leaf label { type uint16; config false; }
44 container floating-ip-info {
48 leaf router-id { type string; }
49 leaf external-network-id { type yang:uuid; }
52 leaf port-name { type string; }
55 uses external-interface-info;
61 container napt-switches {
62 list router-to-napt-switch {
64 leaf router-name { type string; }
65 leaf primary-switch-id { type uint64; }
69 grouping ip-port-entity {
70 leaf ip-address { type string; }
71 leaf port-num { type uint16; }
74 typedef protocol-types {
81 container intext-ip-port-map {
83 list ip-port-mapping {
85 leaf router-id { type uint32; }
86 list intext-ip-protocol-type {
88 leaf protocol { type protocol-types; }
91 description "internal to external ip-port mapping";
92 leaf ip-port-internal { type string; }
93 container ip-port-external {
101 container snatint-ip-port-map {
102 list intip-port-map {
104 leaf router-id { type uint32; }
107 leaf internal-ip { type string; }
108 list int-ip-proto-type {
110 leaf protocol { type protocol-types; }
111 leaf-list ports { type uint16; }
117 container intext-ip-map {
121 leaf segment-id { type uint32; }
124 leaf internal-ip { type string; }
125 leaf external-ip { type string; }
126 leaf label {type uint32;}
131 container router-id-name {
134 leaf router-id {type uint32;}
135 leaf router-name { type string; }