blob: dbd81aea05dea40844862a84009d7ec0e1ded2c2 [file] [log] [blame]
Scott Bakerfdbad762022-01-03 16:00:45 -08001// SPDX-FileCopyrightText: 2021 Open Networking Foundation
2//
Sean Condon160ec1d2022-02-08 12:58:25 +00003// SPDX-License-Identifier: Apache-2.0
Scott Bakerfdbad762022-01-03 16:00:45 -08004
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; }
Scott Bakerfdbad762022-01-03 16:00:45 -08009 import onf-aether-types { prefix at; }
Scott Bakerfdbad762022-01-03 16:00:45 -080010
11 organization "Open Networking Foundation.";
12 contact "Scott Baker";
13 description
14 "An Aether IP-Domain. This is a list of available subnets
15 that may be assigned to UEs, as well as DNS servers and other
16 metadata";
17
Sean Condon11d6f422022-01-14 13:02:03 +000018 revision "2022-01-14" {
19 description "Refactored as submodule";
20 reference "RFC 6020";
21 }
22
Scott Bakerfdbad762022-01-03 16:00:45 -080023 revision "2021-06-02" {
24 description "An Aether IP and Domain Specification";
25 reference "RFC 6087";
26 }
27
28 typedef ip-domain-id {
Scott Baker40a79562022-02-16 15:04:50 -080029 type at:aether-identifier;
Scott Bakerfdbad762022-01-03 16:00:45 -080030 description "The typedef for ip-domain-id";
31 }
32
Sean Condon11d6f422022-01-14 13:02:03 +000033 grouping ip-domain {
34 description "The ip-domain grouping";
Scott Bakerfdbad762022-01-03 16:00:45 -080035
36 list ip-domain {
Sean Condon9f7966e2022-02-03 10:55:06 +000037 key "ip-domain-id";
Scott Bakerfdbad762022-01-03 16:00:45 -080038 description
39 "List of ip domains";
40
Sean Condon9f7966e2022-02-03 10:55:06 +000041 leaf ip-domain-id {
Scott Bakerfdbad762022-01-03 16:00:45 -080042 type ip-domain-id;
43 description "ID for this ip domain.";
44 }
45
Sean Condon9f7966e2022-02-03 10:55:06 +000046 uses at:desc-display-name;
Scott Bakerfdbad762022-01-03 16:00:45 -080047
48 leaf dnn {
49 type at:dnn;
50 mandatory true;
51 description "DNN/APN";
52 }
53
54 leaf dns-primary {
55 type inet:ip-address;
56 description "primary dns server name";
57 }
58
59 leaf dns-secondary {
60 type inet:ip-address;
61 description "secondary dns server name";
62 }
63
64 // Note: Cannot use a subnet as a list key. Dropped support from a
65 // list of subnets to a single subnet. Revisit in the future.
66 leaf subnet {
67 type inet:ipv4-prefix;
68 mandatory true;
69 description "subnet to allocate ip addresses from";
70 }
71
72 leaf admin-status {
73 type at:admin-status;
74 description "administrative status";
75 }
76
77 leaf mtu {
78 type at:mtu;
79 description "maximum transmission unit";
80 }
Scott Bakerfdbad762022-01-03 16:00:45 -080081 }
82 }
83}