[ 21/4/94 djk ]
This document offers some suggestions for allocating subnets on a
Class C to be used within the APANA® Network(tm), whether it is to be IP
connected to other APANA MANs (Metropolitan Area Networks) or not.
The intended audience is network administrators setting up a new
APANA IP MAN, since it is believed that the people looking after
the established APANA MANs in Melbourne, Sydney and Adelaide have
already been through this exercise and found their own solutions.
Please note that this document describes the way that APANA IP
Networks(tm) are configured CURRENTLY. There is active research going
on into how to make more efficient use of address space.
And of course, if your hardware/software allows you to avoid
having to allocate a subnet for each point-to-point link and/or
variable subnet masks, you should take advantage of this!
IP (Internet Protocol) addresses look something like this:
0000 0000 0011 1111 1111 2222 2222 2233
0123 4567 8901 2345 6789 0123 4567 8901
+---------------------------------------+
|xxxx xxxx xxxx xxxx xxxx xxxx xxxx xxxx|
+---------------------------------------+
NNNN NNNN NNNN NNNN NNNN NNNN SSSS HHHH
\ / / /
+-- Class C network --+ / /
Subnet number --------------------+ /
Host number part -+
Each 'x' represents a "bit" (BInary digiT) in the IP address.
The bits labelled 'N' comprise the Class C Network Number, as allocated
by the APANA Network(tm) Number Co-ordinator, hostmaster@apana.org.au.
This is essentially a fixed quantity, and should not by used by any
hosts anywhere in the global Internet other than the ones on your MAN.
Outside APANA (in fact, outside your MAN), that Class C network number
is treated as a single entity for routing purposes. (In fact, it may
be aggregated with other adjacent APANA Class C network numbers by
core Internet routers in the USA which use CIDR.) If The Internet ever
saw the same Class C net being used from two different places, chaos
would ensue.
The bits labelled 'S' make up the subnet number. It is assumed to be
your job to allocate this. If SSSS is "all 0's" (ie: each 'S' bit is
equal to '0'), then this represents the network as a whole rather than
an individual subnet. Similarly, SSSS all 1's indicates a network-wide
broadcast (across the MAN).
The bits labelled 'H' are allocated to individual hosts on a given
subnet. Normally this will be done by the person who controls the
subnet; if the subnet is used for point-to-point routing by a router
then the administrator of the router will generally assign the host
addresses within the subnet. If the subnet is for an Ethernet (LAN)
in a member's home, then that member can allocate host numbers on it.
The example IP address shown has a subnet mask of 0xfffffff0 or
255.255.255.240. The subnetting scheme could be called something
like 24+4/4 (24 bits of "N", 4 bits of "S", 4 bits of "H").
However, the subnet mask which is more commonly used in APANA(tm) is
24+5/3 (0xfffffff8; 255.255.255.248; 5 subnet bits, 3 host bits).
This allows up to 6 hosts on an individual subnet before things
start getting complicated, which seems like a reasonable amount.
Here is an outline of the conventional approach for a smallish MAN:
HEX NET BCAST MIN MAX
0 0 7 1 6 RESERVED (all 0's)
8 8 15 9 14
10 16 23 17 22
18 24 31 25 30
20 32 39 33 38 Ether #1
28 40 47 41 46
30 48 55 49 54
38 56 63 57 62
40 64 71 65 70 Ether #2
48 72 79 73 78
50 80 87 81 86
58 88 95 89 94
60 96 103 97 102 Ether #3
68 104 111 105 110
70 112 119 113 118
78 120 127 121 126
80 128 135 129 134 Slip #4
88 136 143 137 142
90 144 151 145 150
98 152 159 153 158
a0 160 167 161 166 Slip #3
a8 168 175 169 174
b0 176 183 177 182
b8 184 191 185 190
c0 192 199 193 198 Slip #2
c8 200 207 201 206
d0 208 215 209 214
d8 216 223 217 222
e0 224 231 225 230 Slip #1
e8 232 239 233 238
f0 240 247 241 246
f8 248 255 249 254 RESERVED (all 1's)
Notes: the first column gives the subnet address in hexadecimal
(for no particular reason). The second gives the base address of
the subnet. Because this IP address has a host part of 0 (all 0's)
If this MAN then grows so that it no longer fits in the above
scheme, then the following extension could be used. Or, if the
initial network will not fit in the previous table then this
scheme can be used initially, although the numerical sequence
of the subnets would probably be different (eg: 16=="Ether #1",
32=="Ether #2"), because there is no backwards compatibility.
HEX NET BCAST MIN MAX
0 0 7 1 6 RESERVED (all 0's)
8 8 15 9 14
10 16 23 17 22 Ether #4
18 24 31 25 30
20 32 39 33 38 Ether #1
28 40 47 41 46
30 48 55 49 54 Ether #5
38 56 63 57 62
40 64 71 65 70 Ether #2
48 72 79 73 78
50 80 87 81 86 Ether #6
58 88 95 89 94
60 96 103 97 102 Ether #3
68 104 111 105 110
70 112 119 113 118 Ether #7
78 120 127 121 126
80 128 135 129 134 Slip #4
88 136 143 137 142
90 144 151 145 150 Slip #8
98 152 159 153 158
a0 160 167 161 166 Slip #3
a8 168 175 169 174
b0 176 183 177 182 Slip #7
b8 184 191 185 190
c0 192 199 193 198 Slip #2
c8 200 207 201 206
d0 208 215 209 214 Slip #6
d8 216 223 217 222
e0 224 231 225 230 Slip #1
e8 232 239 233 238
f0 240 247 241 246 Slip #5
f8 248 255 249 254 RESERVED (all 1's)
If that runs out as well (or wasn't enough in the first place!)...
HEX NET BCAST MIN MAX
0 0 7 1 6 RESERVED (all 0's)
8 8 15 9 14 Ether #8
10 16 23 17 22 Ether #4
18 24 31 25 30 Ether #9
20 32 39 33 38 Ether #1
28 40 47 41 46 Ether #10
30 48 55 49 54 Ether #5
38 56 63 57 62 Ether #11
40 64 71 65 70 Ether #2
48 72 79 73 78 Ether #12
50 80 87 81 86 Ether #6
58 88 95 89 94 Ether #13
60 96 103 97 102 Ether #3
68 104 111 105 110 Ether #14
70 112 119 113 118 Ether #7
78 120 127 121 126 Ether #15
80 128 135 129 134 Slip #4
88 136 143 137 142 Slip #15
90 144 151 145 150 Slip #8
98 152 159 153 158 Slip #14
a0 160 167 161 166 Slip #3
a8 168 175 169 174 Slip #13
b0 176 183 177 182 Slip #7
b8 184 191 185 190 Slip #12
c0 192 199 193 198 Slip #2
c8 200 207 201 206 Slip #11
d0 208 215 209 214 Slip #6
d8 216 223 217 222 Slip #10
e0 224 231 225 230 Slip #1
e8 232 239 233 238 Slip #9
f0 240 247 241 246 Slip #5
f8 248 255 249 254 RESERVED (all 1's)
The way this would normally work would look something like this:
HOST A
|
| (Slip #1) |--- HOST B
| |
+-------+ |
HOST I ------------| RTR X |---------------- RTR Y --+ (Ether #1)
(Slip #4) +-------+ (Slip #2) |
| |
| (Slip #3) |--- HOST C
|
HOST D RTR Z
| | (Ether #2)
------------------+----------------------
| | | |
HOST E HOST F HOST G HOST H
NETWORK SUBNET ADDRESSES
Slip #1 224 X=225, A=226
Slip #2 192 X=193, Y=194
Slip #3 160 X=161, Z=162
Slip #4 128 X=129, I=130
Ether #1 32 Y=33, B=34, C=35
Ether #2 64 Z=65, D=66, E=67, F=68, G=69, H=70
For example, if you have been assigned Class C net 203.1.2.0, (note:
all addresses allocated within Australia these days start with 203)
then the full addresses would be something like
A: 203.1.2.226
B: 203.1.2.34
C: 203.1.2.35
D: 203.1.2.66
E: 203.1.2.67
F: 203.1.2.68
G: 203.1.2.69
H: 203.1.2.70
I: 203.1.2.130
X: 203.1.2.129 203.1.2.161 203.1.2.193 203.1.2.225
Y: 203.1.2.33 203.1.2.194
Z: 203.1.2.65 203.1.2.162
You should also co-ordinate with hostmaster@apana.org.au, so that
these addresses can be into the DNS.
___________________________________________________________________
David Keegel
APANA: a network community, not just a personal mail/news/slip feed.
APANA® is the Registered Trademark of the
Australian Public Access Network Association Inc.
APANA® newsgroups (tm),
APANA® network (tm) and the
APANA® logo (tm) are
trademarks of the Australian Public Access Network Association
Inc.