bef1e1873db6a00f152cd508df2c3854aba67569
howto/Address-Space.md
... | ... | @@ -0,0 +1,50 @@ |
1 | +DN42 uses network addresses in the [rfc1918](https://tools.ietf.org/html/rfc1918) and [ULA](https://tools.ietf.org/html/rfc4193) ranges. These are described in detail in the sections below. |
|
2 | + |
|
3 | +The [DN42 registry](https://git.dn42.us/dn42/registry) is the authoritative source of information on address space assignment. Within the registry, the DN42 address space is divided in to blocks based on _policies_ that define how the addresses may be used. Policies are defined in `inetnum` and `inet6num` objects and can be: |
|
4 | + |
|
5 | + - **open** - users may request prefixes in this range, subject to any constraints that are described in the `remark` attributes |
|
6 | + - **closed** - these ranges cannot be assigned |
|
7 | + - **reserved** - these ranges are reserved for future use |
|
8 | + - **ask** - these ranges are for specific uses, please ask on the mailing list before requesting assignments |
|
9 | + |
|
10 | +The [filter.txt](https://git.dn42.us/dn42/registry/src/master/data/filter.txt) and [filter6.txt](https://git.dn42.us/dn42/registry/src/master/data/filter6.txt) files within the registry detail the network wide constraints on what address ranges are in use together with the global limits on what can be announced. |
|
11 | + |
|
12 | +`inetnum` and `inet6num` objects within the registry are used to describe the allocation of address space to users. `route` and `route6` objects in the registry are used to validate routing announcements through [ROA](https://wiki.dn42/howto/Bird#route-origin-authorization). |
|
13 | + |
|
14 | +In addition to the native DN42 address ranges, the registry also contains allocations for the address space used by affiliate networks. These are updated by a regular [sync script](https://git.dn42.us/dn42/registry-sync). |
|
15 | + |
|
16 | +Globally routable prefixes are not supported in DN42; they are denied via the registry filter{6,}.txt files and many networks will filter both announcements and traffic for prefixes that are outside of the allowable ranges. |
|
17 | + |
|
18 | +# IPv6 Address Space |
|
19 | + |
|
20 | +DN42 uses the fd00::/8 ULA range for IPv6 addresses; the whole fd00::/8 block has an open policy and users are free to request any prefix in this range, that is not already allocated. |
|
21 | + |
|
22 | +**The DN42 registry is not authoritative for the fd00::/8 range** |
|
23 | + |
|
24 | +DN42 is interconnected with other networks, like icvpn, which also use the same ULA range and many users will also use this range for their own networks. A registration in the dn42 registry cannot prevent IPv6 conflicts, so a fully random prefix (see [RFC4193](https://tools.ietf.org/html/rfc4193)) is strongly recommended. If an address conflict is found, then needing to renumber your network is no fun. |
|
25 | + |
|
26 | +# IPv4 Address Space |
|
27 | + |
|
28 | +DN42 uses the 172.20.0.0/14 range for IPv4 addresses. As with the public internet, IPv4 space is limited and users are encouraged to conserve space where possible. |
|
29 | + |
|
30 | +Unlike the IPv6 address space, the DN42 IPv4 space is not fully open for assignment to users; some ranges are intended for specific uses and other ranges are reserved. See the policy section, below. Users should always check the policy in the registry before requesting a prefix to be assigned. |
|
31 | + |
|
32 | +There are other IPv4 ranges in use within DN42 related to the affiliate networks, see the [filter.txt](https://git.dn42.us/dn42/registry/src/master/data/filter.txt) file in the registry. |
|
33 | + |
|
34 | +## IPv4 Policies |
|
35 | + |
|
36 | +The diagram below shows the allocation policies for the DN42 address space. |
|
37 | + |
|
38 | +... image ... |
|
39 | + |
|
40 | +Specific policy restrictions: |
|
41 | + |
|
42 | +| Prefix | Usage | |
|
43 | +|--------|-------| |
|
44 | +| 172.20.0.0/24<br/>172.21.0.0/24<br/>172.22.0.0/24<br/>172.23.0.0/24 | Reserved for anycast addresses | |
|
45 | +| 172.20.240.0/20<br/>172.22.240.0/20 | Reserved for transfer networks | |
|
46 | +| 172.20.64.0/18 | Reserved for allocations larger than /23, up to /21 | |
|
47 | +| 172.22.0.0/18 | Reserved for allocations of /24 or larger, up to /21 | |
|
48 | +| 172.23.16.0/21 | Closed to new allocations | |
|
49 | + |
|
50 | + |