On Sat, 25 Feb 2012 00:30:05 -0800, Brian Kantor Brian@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