## Introduction

This document describes the IP address plan we will use for this set of workshop exercises.

Wherever possible the plan tries to replicate real life as closely as possible.

The first section describes the plan itself for End-Site networks, the link to Transit providers, and the IXP.

The last section shows a diagram of the lab network including the addressing used on all the links.

### Background about the address space used

The IPv4 address space used in these exercises is from subnets of 100.64.0.0/10 which is an IPv4 Shared Address block. It must not be routed on the Internet.

Note that 2001:DB8::/32 is the IPv6 Documentation Address block. It must not be routed on the Internet.

And finally note that the 2001:10::/28 address block has been listed in the IANA special registry for future use. It must not be routed on the Internet.

If using these labs as inspiration for your own infrastructure design, please replace all instances of private, documentation, and unassigned address space with your own address blocks.

## End-Site networks

If they are not a Regional Internet Registry member, end-site networks typically will receive a public IPv6 /48 and a very small public IPv4 block from their network operator.

We will use an IPv4 /24 for these exercises, reflecting the fact that in reality an end-site organisation will use a large private block like a /16 internally, NATed out into a small public IPv4 block like the /24 we are using here.

Group | Public IPv4 | IPv6 | ASN
--- | --- | --- | ---
1 | 100.68.1.0/24 | 2001:DB8:1::/48 | 10
2 | 100.68.2.0/24 | 2001:DB8:2::/48 | 20
3 | 100.68.3.0/24 | 2001:DB8:3::/48 | 30
4 | 100.68.4.0/24 | 2001:DB8:4::/48 | 40
5 | 100.68.5.0/24 | 2001:DB8:5::/48 | 50
6 | 100.68.6.0/24 | 2001:DB8:6::/48 | 60
7 | 100.68.7.0/24 | 2001:DB8:7::/48 | 70
8 | 100.68.8.0/24 | 2001:DB8:8::/48 | 80

The list will continue in the same pattern if there are more groups.

Each group will then further partition their space as follows:

IPv4 | IPv6 | Description
--- | --- | ---
100.68.X.0/24 | 2001:DB8:X::/48 | Group address block
100.68.X.0/26 | 2001:DB8:X:0000::/52 | Infrastructure space
100.68.X.0/28 | 2001:DB8:X:0000::/64 | Router loopbacks
100.68.X.16/29 | 2001:DB8:X:0010::/60 | Internal Point-to-point links
100.68.X.24/29 | 2001:DB8:X:0020::/60 | Server appliance links
100.68.X.32/28 | 2001:DB8:X:0030::/60 | External Point-to-point links
100.68.X.64/26 | 2001:DB8:X:4000::/52 | End user space 1
100.68.X.128/26 | 2001:DB8:X:8000::/52 | End user space 2
100.68.X.192/26 | 2001:DB8:X:C000::/52 | End user space 3

Where X is your group number (1,2,3…).

Prefixes for point-to-point links will be of length /31 for IPv4 and /127 for IPv6 (we will adopt the recommendations of RFC6164 for IPv6 inter-router links where we reserve a /64 for the link but subnet it as a /127). The point-to-point link for the server appliance will remain as a /30 for IPv4:

IPv4 | IPv6 | Description
--- | --- | ---
100.68.X.16/31 | 2001:DB8:X:10::/127 | P2P CX <-> BX
100.68.X.18/31 | 2001:DB8:X:11::/127 | P2P CX <-> PX
100.68.X.20/31 | 2001:DB8:X:12::/127 | P2P CX <-> AX
100.68.X.22/31 | 2001:DB8:X:13::/127 | Unused
100.68.X.24/30 | 2001:DB8:X:20::/64 | Spare
100.68.X.28/30 | 2001:DB8:X:21::/64 | P2P CX <-> SRV
100.68.X.32/31 | 2001:DB8:X:30::/127 | P2P Private Peer
100.68.X.34/31 | 2001:DB8:X:31::/127 | P2P AX <-> CustX
100.68.X.36/31 | 2001:DB8:X:32::/127 | P2P AX <-> CustY

X is your group number (1,2,3…) and Y is the adjacent group number (as described in the relevant lab).

Router loopback address subnet masks will be /32 for IPv4 and /128 for IPv6:

IPv4 | IPv6 | Description
--- | --- | ---
100.68.X.1/32 | 2001:DB8:X::1/128 | BX Loopback
100.68.X.2/32 | 2001:DB8:X::2/128 | CX Loopback
100.68.X.3/32 | 2001:DB8:X::3/128 | PX Loopback
100.68.X.4/32 | 2001:DB8:X::4/128 | AX Loopback
100.68.X.5/32 | 2001:DB8:X::5/128 | Unused

The Group Server addressing is like this:

Device | IPv4 | IPv6
--- | --- | ---
CX GigE 0/4 | 100.68.X.29/30 | 2001:DB8:X:21::29/64
SRV eth0 | 100.68.X.30/30 | 2001:DB8:X:21::30/64

Note that the convention used here assigns the beginning of the IPv4 and IPv6 address space for use for infrastructure. This is generally a matter of choice: some network operators use the beginning of the space, others use the end of the space.

## Transit Providers

Commercial network operators receive at minimum an IPv6 /32 from their regional internet registry. IPv4 allocations can range upwards from /22. We will use an IPv4 /16 for our exercises.

Transit Provider | IPv4 | IPv6 | AS Number
--- | --- | --- | ---
1 | 100.121.0.0/16 | 2001:18::/32 | 121
2 | 100.122.0.0/16 | 2001:19::/32 | 122

The point-to-point link addresses from Transit Providers 1 and 2 to the End-sites are listed next. Note that the Transit Providers will get the low address, and the end-site gets the high address in the subnet.

Group | Transit | IPv4 | IPv6
--- | --- | --- | ---
1 | TR1 | 100.121.1.0/31 | 2001:18:0:10::/127
2 | TR1 | 100.121.1.2/31 | 2001:18:0:11::/127
3 | TR1 | 100.121.1.4/31 | 2001:18:0:12::/127
4 | TR1 | 100.121.1.6/31 | 2001:18:0:13::/127
5 | TR2 | 100.122.1.8/31 | 2001:19:0:14::/127
6 | TR2 | 100.122.1.10/31 | 2001:19:0:15::/127
7 | TR2 | 100.122.1.12/31 | 2001:19:0:16::/127
8 | TR2 | 100.122.1.14/31 | 2001:19:0:17::/127

Note: The numbering started at the second /24 for the IPv4 point-to-point links to “end customers”. The first /24 is kept for number infrastructure within the ISP, for example: loopbacks, internal point-to-point links, etc. The same applies to IPv6, where the first sixteen /64s were kept for loopbacks (the first /64) and internal point-to-point links (the next fifteen /64s).

For the multi-homing exercise, here are the additional point-to-point links:

Group | Transit | IPv4 | IPv6
--- | --- | --- | ---
1 | TR2 | 100.122.1.0/31 | 2001:19:0:10::/127
2 | TR2 | 100.122.1.2/31 | 2001:19:0:11::/127
3 | TR2 | 100.122.1.4/31 | 2001:19:0:12::/127
4 | TR2 | 100.122.1.6/31 | 2001:19:0:13::/127
5 | TR1 | 100.121.1.8/31 | 2001:18:0:14::/127
6 | TR1 | 100.121.1.10/31 | 2001:18:0:15::/127
7 | TR1 | 100.121.1.12/31 | 2001:18:0:16::/127
8 | TR1 | 100.121.1.14/31 | 2001:18:0:17::/127

The address for the point-to-point link between Regional ISP 1 and Regional ISP 2 is given in this table:

Link | IPv4 | IPv6
--- | --- | ---
Transit 1 to Transit 2 | 100.121.0.0/31 | 2001:18:0:0::/127

## Internet Exchange Points (IXPs)

Internet Exchange Points do not have specific IP address needs outside of the peering LAN and the IXP Services infrastructure. The minimum allocation for an IXP would be a /24 for IPv4 and /64 for IPv6, so that the routers connecting to the IXP LAN have an IP address on that LAN. IXPs only need an ASN if they have a device known as a Route Server.

The extended version of this workshop has two IXPs. Their address assignments are documented here.

### IXP 1

IXP 1 is the default IXP in this lab, serving as the peering interconnection point between the eight Groups. An ASN is included for the Route Server at the IXP. The IXP Services gets transit from TR1 - another ASN is assigned to the IXP Services.

IPv4 | IPv6 | RS ASN | Services ASN
--- | --- | --- | ---
100.127.0.0/23 | 2001:DB8:FFFF::/48 | 65534 | 131

The specific address assignments within the IX infrastructure are as follows:

| IPv4 | IPv6
--- | --- | ---
Peering LAN | 100.127.1.0/24 | 2001:DB8:FFFF:1::/64
IX Management LAN | 100.127.0.0/29 | 2001:DB8:FFFF:0::/64
RS Transit Link | 100.127.0.8/29 | 2001:DB8:FFFF:2::/64
Services Transit to TR1 | 100.121.1.16/31 | 2001:18:0:18::/64

And the address assignments made at the IXP are as follows:

Peer | IPv4 | IPv6
--- | --- | ---
Group 1 | 100.127.1.1 | 2001:DB8:FFFF:1::1
Group 2 | 100.127.1.2 | 2001:DB8:FFFF:1::2
Group 3 | 100.127.1.3 | 2001:DB8:FFFF:1::3
Group 4 | 100.127.1.4 | 2001:DB8:FFFF:1::4
Group 5 | 100.127.1.5 | 2001:DB8:FFFF:1::5
Group 6 | 100.127.1.6 | 2001:DB8:FFFF:1::6
Group 7 | 100.127.1.7 | 2001:DB8:FFFF:1::7
Group 8 | 100.127.1.8 | 2001:DB8:FFFF:1:8
… | … | …
Services GW | 100.127.1.253 | 2001:DB8:FFFF:1::FD
Route Server | 100.127.1.254 | 2001:DB8:FFFF:1::FE

### IXP 2

IXP 2 is the second IXP in this lab, serving as the alternative peering interconnection point between the eight Groups. (An ASN is included for the Route Server at the IXP.) The IXP Services gets transit from TR2.

IPv4 | IPv6 | RS ASN | Services ASN
--- | --- | --- | ---
100.127.2.0/23 | 2001:DB8:FFFE::/48 | 65533 | 132

The specific address assignments within the IX infrastructure are as follows:

| IPv4 | IPv6
--- | --- | ---
Peering LAN | 100.127.3.0/24 | 2001:DB8:FFFE:1::/64
IX Management LAN | 100.127.2.0/29 | 2001:DB8:FFFE:0::/64
RS Transit Link | 100.127.2.8/29 | 2001:DB8:FFFE:2::/64
Services Transit to TR2 | 100.122.1.16/31 | 2001:19:0:18::/64

And the address assignments made at the IXP are as follows:

Peer | IPv4 | IPv6
--- | --- | ---
Group 1 | 100.127.3.1 | 2001:DB8:FFFE:1::1
Group 2 | 100.127.3.2 | 2001:DB8:FFFE:1::2
Group 3 | 100.127.3.3 | 2001:DB8:FFFE:1::3
Group 4 | 100.127.3.4 | 2001:DB8:FFFE:1::4
Group 5 | 100.127.3.5 | 2001:DB8:FFFE:1::5
Group 6 | 100.127.3.6 | 2001:DB8:FFFE:1::6
Group 7 | 100.127.3.7 | 2001:DB8:FFFE:1::7
Group 8 | 100.127.3.8 | 2001:DB8:FFFE:1::8
… | … | …
Services GW | 100.127.3.253 | 2001:DB8:FFFE:1::FD
Route Server | 100.127.3.254 | 2001:DB8:FFFE:1::FE

## Diagram

The following diagram shows the address plan as implemented in the lab topology.