On Sat, 25 Feb 2012 00:30:05 -0800, Brian Kantor <Brian(a)ucsd.edu>
wrote:
On Fri, Feb 24, 2012 at 10:12:14PM -0800, Geoff Joy
wrote:
If this were implemented across eight bits
instead of six the number
of subnets quadruples.
Good scheme!
I think we can take it as read that the /16s really are /16s
as the table says, not /18s as I once thought they'd have to
be, so you do have all 8 bits of the third octet to use.
I wonder if it might be wise to reserve the zero'th subnet?
I didn't think reserving it was necessary, CIDR allows it as a proper
subnet so I grandfathered the zero'th subnet as "mobile" or
non-specific use since those routes already existed but whenever
anyone had a specific location, use, or frequency or they wanted a
block of IP's I allocated them one of the subnets.
You do have to reserve host 0 and host 255 as broadcast addresses. If
you follow what seems to be the de facto standard host 1 also becomes
the gateway for that subnet with 2, 4, 6 being DNS. Although, if you
take BBN's (now Level3) original usage as an example, their DNS is on
4.2.2.1, 4.2.2.2 through 6.
CIDR _is_ classless, so I would expect modern routers that take the
CIDR mask would be able to handle broadcasts across joined subnets on
a 44.x.x.x/23 mask, but I have not experimented with it. In that case
if you need to expand the hosts bit to /23 the first address in that
subnet becomes the broadcast address as in 44.x.1.255, 44.x.129.255,
etc.
If you want to allocate 9 or 10 bits to the hosts and use the /23 or
/22 netmask then you are back to the first 128 or 64 indexes
respectively.
Using all eight bits the scheme looks like this and the 6-bit scheme
fits interstitially with the 8-bit scheme.
Subnet assignment order by index
Index Subnet Hex Binary
0 0 0x00 00000000
1 128 0x80 10000000
2 64 0x40 01000000
3 192 0xc0 11000000
4 32 0x20 00100000
5 160 0xa0 10100000
6 96 0x60 01100000
7 224 0xe0 11100000
8 16 0x10 00010000
9 144 0x90 10010000
10 80 0x50 01010000
11 208 0xd0 11010000
12 48 0x30 00110000
13 176 0xb0 10110000
14 112 0x70 01110000
15 240 0xf0 11110000
16 8 0x08 00001000
17 136 0x88 10001000
18 72 0x48 01001000
19 200 0xc8 11001000
20 40 0x28 00101000
21 168 0xa8 10101000
22 104 0x68 01101000
23 232 0xe8 11101000
24 24 0x18 00011000
25 152 0x98 10011000
26 88 0x58 01011000
27 216 0xd8 11011000
28 56 0x38 00111000
29 184 0xb8 10111000
30 120 0x78 01111000
31 248 0xf8 11111000
32 4 0x04 00000100
33 132 0x84 10000100
34 68 0x44 01000100
35 196 0xc4 11000100
36 36 0x24 00100100
37 164 0xa4 10100100
38 100 0x64 01100100
39 228 0xe4 11100100
40 20 0x14 00010100
41 148 0x94 10010100
42 84 0x54 01010100
43 212 0xd4 11010100
44 52 0x34 00110100
45 180 0xb4 10110100
46 116 0x74 01110100
47 244 0xf4 11110100
48 12 0x0c 00001100
49 140 0x8c 10001100
50 76 0x4c 01001100
51 204 0xcc 11001100
52 44 0x2c 00101100
53 172 0xac 10101100
54 108 0x6c 01101100
55 236 0xec 11101100
56 28 0x1c 00011100
57 156 0x9c 10011100
58 92 0x5c 01011100
59 220 0xdc 11011100
60 60 0x3c 00111100
61 188 0xbc 10111100
62 124 0x7c 01111100
63 252 0xfc 11111100
64 2 0x02 00000010
65 130 0x82 10000010
66 66 0x42 01000010
67 194 0xc2 11000010
68 34 0x22 00100010
69 162 0xa2 10100010
70 98 0x62 01100010
71 226 0xe2 11100010
72 18 0x12 00010010
73 146 0x92 10010010
74 82 0x52 01010010
75 210 0xd2 11010010
76 50 0x32 00110010
77 178 0xb2 10110010
78 114 0x72 01110010
79 242 0xf2 11110010
80 10 0x0a 00001010
81 138 0x8a 10001010
82 74 0x4a 01001010
83 202 0xca 11001010
84 42 0x2a 00101010
85 170 0xaa 10101010
86 106 0x6a 01101010
87 234 0xea 11101010
88 26 0x1a 00011010
89 154 0x9a 10011010
90 90 0x5a 01011010
91 218 0xda 11011010
92 58 0x3a 00111010
93 186 0xba 10111010
94 122 0x7a 01111010
95 250 0xfa 11111010
96 6 0x06 00000110
97 134 0x86 10000110
98 70 0x46 01000110
99 198 0xc6 11000110
100 38 0x26 00100110
101 166 0xa6 10100110
102 102 0x66 01100110
103 230 0xe6 11100110
104 22 0x16 00010110
105 150 0x96 10010110
106 86 0x56 01010110
107 214 0xd6 11010110
108 54 0x36 00110110
109 182 0xb6 10110110
110 118 0x76 01110110
111 246 0xf6 11110110
112 14 0x0e 00001110
113 142 0x8e 10001110
114 78 0x4e 01001110
115 206 0xce 11001110
116 46 0x2e 00101110
117 174 0xae 10101110
118 110 0x6e 01101110
119 238 0xee 11101110
120 30 0x1e 00011110
121 158 0x9e 10011110
122 94 0x5e 01011110
123 222 0xde 11011110
124 62 0x3e 00111110
125 190 0xbe 10111110
126 126 0x7e 01111110
127 254 0xfe 11111110
128 1 0x01 00000001
129 129 0x81 10000001
130 65 0x41 01000001
131 193 0xc1 11000001
132 33 0x21 00100001
133 161 0xa1 10100001
134 97 0x61 01100001
135 225 0xe1 11100001
136 17 0x11 00010001
137 145 0x91 10010001
138 81 0x51 01010001
139 209 0xd1 11010001
140 49 0x31 00110001
141 177 0xb1 10110001
142 113 0x71 01110001
143 241 0xf1 11110001
144 9 0x09 00001001
145 137 0x89 10001001
146 73 0x49 01001001
147 201 0xc9 11001001
148 41 0x29 00101001
149 169 0xa9 10101001
150 105 0x69 01101001
151 233 0xe9 11101001
152 25 0x19 00011001
153 153 0x99 10011001
154 89 0x59 01011001
155 217 0xd9 11011001
156 57 0x39 00111001
157 185 0xb9 10111001
158 121 0x79 01111001
159 249 0xf9 11111001
160 5 0x05 00000101
161 133 0x85 10000101
162 69 0x45 01000101
163 197 0xc5 11000101
164 37 0x25 00100101
165 165 0xa5 10100101
166 101 0x65 01100101
167 229 0xe5 11100101
168 21 0x15 00010101
169 149 0x95 10010101
170 85 0x55 01010101
171 213 0xd5 11010101
172 53 0x35 00110101
173 181 0xb5 10110101
174 117 0x75 01110101
175 245 0xf5 11110101
176 13 0x0d 00001101
177 141 0x8d 10001101
178 77 0x4d 01001101
179 205 0xcd 11001101
180 45 0x2d 00101101
181 173 0xad 10101101
182 109 0x6d 01101101
183 237 0xed 11101101
184 29 0x1d 00011101
185 157 0x9d 10011101
186 93 0x5d 01011101
187 221 0xdd 11011101
188 61 0x3d 00111101
189 189 0xbd 10111101
190 125 0x7d 01111101
191 253 0xfd 11111101
192 3 0x03 00000011
193 131 0x83 10000011
194 67 0x43 01000011
195 195 0xc3 11000011
196 35 0x23 00100011
197 163 0xa3 10100011
198 99 0x63 01100011
199 227 0xe3 11100011
200 19 0x13 00010011
201 147 0x93 10010011
202 83 0x53 01010011
203 211 0xd3 11010011
204 51 0x33 00110011
205 179 0xb3 10110011
206 115 0x73 01110011
207 243 0xf3 11110011
208 11 0x0b 00001011
209 139 0x8b 10001011
210 75 0x4b 01001011
211 203 0xcb 11001011
212 43 0x2b 00101011
213 171 0xab 10101011
214 107 0x6b 01101011
215 235 0xeb 11101011
216 27 0x1b 00011011
217 155 0x9b 10011011
218 91 0x5b 01011011
219 219 0xdb 11011011
220 59 0x3b 00111011
221 187 0xbb 10111011
222 123 0x7b 01111011
223 251 0xfb 11111011
224 7 0x07 00000111
225 135 0x87 10000111
226 71 0x47 01000111
227 199 0xc7 11000111
228 39 0x27 00100111
229 167 0xa7 10100111
230 103 0x67 01100111
231 231 0xe7 11100111
232 23 0x17 00010111
233 151 0x97 10010111
234 87 0x57 01010111
235 215 0xd7 11010111
236 55 0x37 00110111
237 183 0xb7 10110111
238 119 0x77 01110111
239 247 0xf7 11110111
240 15 0x0f 00001111
241 143 0x8f 10001111
242 79 0x4f 01001111
243 207 0xcf 11001111
244 47 0x2f 00101111
245 175 0xaf 10101111
246 111 0x6f 01101111
247 239 0xef 11101111
248 31 0x1f 00011111
249 159 0x9f 10011111
250 95 0x5f 01011111
251 223 0xdf 11011111
252 63 0x3f 00111111
253 191 0xbf 10111111
254 127 0x7f 01111111
255 255 0xff 11111111