blob: b5fb974801f9eb7da24522e4476851dadaa39abb [file] [log] [blame]
Scott Bakerfdbad762022-01-03 16:00:45 -08001// SPDX-FileCopyrightText: 2021 Open Networking Foundation
2//
3// SPDX-License-Identifier: LicenseRef-ONF-Member-Only-1.0
4
Sean Condon11d6f422022-01-14 13:02:03 +00005submodule onf-ip-domain {
6 belongs-to onf-enterprise { prefix ent; }
Scott Bakerfdbad762022-01-03 16:00:45 -08007
8 import ietf-inet-types { prefix inet; }
9 import ietf-yang-types{ prefix yg; }
10 import onf-aether-types { prefix at; }
Scott Bakerfdbad762022-01-03 16:00:45 -080011
12 organization "Open Networking Foundation.";
13 contact "Scott Baker";
14 description
15 "An Aether IP-Domain. This is a list of available subnets
16 that may be assigned to UEs, as well as DNS servers and other
17 metadata";
18
Sean Condon11d6f422022-01-14 13:02:03 +000019 revision "2022-01-14" {
20 description "Refactored as submodule";
21 reference "RFC 6020";
22 }
23
Scott Bakerfdbad762022-01-03 16:00:45 -080024 revision "2021-06-02" {
25 description "An Aether IP and Domain Specification";
26 reference "RFC 6087";
27 }
28
29 typedef ip-domain-id {
30 type yg:yang-identifier {
31 length 1..32;
32 }
33 description "The typedef for ip-domain-id";
34 }
35
Sean Condon11d6f422022-01-14 13:02:03 +000036 grouping ip-domain {
37 description "The ip-domain grouping";
Scott Bakerfdbad762022-01-03 16:00:45 -080038
39 list ip-domain {
Sean Condon11d6f422022-01-14 13:02:03 +000040 key "ip-id";
Scott Bakerfdbad762022-01-03 16:00:45 -080041 description
42 "List of ip domains";
43
Sean Condon11d6f422022-01-14 13:02:03 +000044 leaf ip-id {
Scott Bakerfdbad762022-01-03 16:00:45 -080045 type ip-domain-id;
46 description "ID for this ip domain.";
47 }
48
49 leaf display-name {
50 type string {
51 length 1..80;
52 }
53 description "display name to use in GUI or CLI";
54 }
55
56 leaf dnn {
57 type at:dnn;
58 mandatory true;
59 description "DNN/APN";
60 }
61
62 leaf dns-primary {
63 type inet:ip-address;
64 description "primary dns server name";
65 }
66
67 leaf dns-secondary {
68 type inet:ip-address;
69 description "secondary dns server name";
70 }
71
72 // Note: Cannot use a subnet as a list key. Dropped support from a
73 // list of subnets to a single subnet. Revisit in the future.
74 leaf subnet {
75 type inet:ipv4-prefix;
76 mandatory true;
77 description "subnet to allocate ip addresses from";
78 }
79
80 leaf admin-status {
81 type at:admin-status;
82 description "administrative status";
83 }
84
85 leaf mtu {
86 type at:mtu;
87 description "maximum transmission unit";
88 }
89
90 leaf description {
91 type at:description;
92 description "description of this ip domain";
93 }
Scott Bakerfdbad762022-01-03 16:00:45 -080094 }
95 }
96}