blob: 287122ed39c2fd025feb3e06912322084c9da0d8 [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 Condon9f7966e2022-02-03 10:55:06 +000040 key "ip-domain-id";
Scott Bakerfdbad762022-01-03 16:00:45 -080041 description
42 "List of ip domains";
43
Sean Condon9f7966e2022-02-03 10:55:06 +000044 leaf ip-domain-id {
Scott Bakerfdbad762022-01-03 16:00:45 -080045 type ip-domain-id;
46 description "ID for this ip domain.";
47 }
48
Sean Condon9f7966e2022-02-03 10:55:06 +000049 uses at:desc-display-name;
Scott Bakerfdbad762022-01-03 16:00:45 -080050
51 leaf dnn {
52 type at:dnn;
53 mandatory true;
54 description "DNN/APN";
55 }
56
57 leaf dns-primary {
58 type inet:ip-address;
59 description "primary dns server name";
60 }
61
62 leaf dns-secondary {
63 type inet:ip-address;
64 description "secondary dns server name";
65 }
66
67 // Note: Cannot use a subnet as a list key. Dropped support from a
68 // list of subnets to a single subnet. Revisit in the future.
69 leaf subnet {
70 type inet:ipv4-prefix;
71 mandatory true;
72 description "subnet to allocate ip addresses from";
73 }
74
75 leaf admin-status {
76 type at:admin-status;
77 description "administrative status";
78 }
79
80 leaf mtu {
81 type at:mtu;
82 description "maximum transmission unit";
83 }
Scott Bakerfdbad762022-01-03 16:00:45 -080084 }
85 }
86}