Ваш ответ правильный, за исключением того, что классные адреса больше не существуют. Интернет переехал в Classless Inter-Domain Routing (CIDR) в 1993 году, поэтому ваша терминология немного устарела;)
IP-сети в эти дни работают с префиксами маршрутизации. Префикс представляет собой диапазон IP-адресов, определенных первым адресом в этом диапазоне, и количеством фиксированных битов в начале адреса. Ваш пример показывает это красиво.
Ваш примерный диапазон: 99.224.0.1
- 99.239.255.254
. На самом деле это 99.224.0.0
- 99.239.255.255
, потому что при использовании в подсети первый и последний адреса зарезервированы (но все еще часть подсети и префикса).
Первый адрес в префиксе, который у нас уже есть: 99.224.0.0
. Вы можете увидеть длину префикса из вашего бинарного вычисления (слегка видоизмененный):
01100011.11101111.11111111.11111111
01100011.11100000.00000000.00000000
----------------------------------- (xor)
00000000.00001111.11111111.11111111
----------------------------------- (not)
11111111.11110000.00000000.00000000
Просто посчитайте количество 1
с самого начала: . Таким образом, ваш префикс: 99.224.0.0/12
. Этот префикс охватывает все адреса, которые соответствуют 01100011.1110****.********.********
.
При написании длины префикса вниз в качестве маски подсети вы действительно получаете 255.240.0.0
.
Немного не по теме здесь, потому что речь идет о сети, а не об алгоритме расчета маски подсети, но может быть полезно: пример того, как можно планировать сеть адресации:
Допустим, что для моего офисного здания я получаю IP-адреса 192.0.2.0/24
(то есть 192.0.2.0
- 192.0.2.255
, маска подсети 255.255.255.0
, 256 адресов).Мне нужно 50 адресов для серверов, 100 адресов для сотрудников и 40 адресов для гостей.
Поскольку адресация работает с префиксами, все, что у вас есть, это сила 2. Если вы используете /24
, у вас есть префикс с 256 адресами. Полный адрес 32 бита, первые 24 фиксированы, поэтому у вас осталось 8 бит. 2 = 256. Если вы используете /25
вы иметь префикс 128 адресов, /26
имеет 64 адреса и т.д.
Таким образом, вы можете также разделить префикс. 192.0.2.0/24
можно разделить на 192.0.2.0/25
и 192.0.2.128/25
. И они могут быть разделены снова и снова, пока у вас не будет префикса, который охватывает только один адрес: a /32
.
возвращение к примеру. Чтобы получить (по крайней мере) 50 адресов для серверов, мне нужно округлить до следующей мощности 2. Это 2 = 64. Для того, чтобы иметь столько адресов, мне нужен префикс /26
. Для клиентских устройств мне нужно округлить до 128 (2), поэтому нам нужен /25
. Для гостей следующая мощность 2 составляет 64 (2), поэтому /26
.
Поэтому нам необходимо разделить /24
на /25
и два /26
. Одно из возможных решений:
Client devices: 192.0.2.0/25
Servers: 192.0.2.128/26
Guests: 192.0.2.192/26
После того, как мы настроим эти подсети на наших устройствах первого и последнего адреса каждой подсети становятся специальные (сети и широковещательный адрес), поэтому мы можем использовать эти диапазоны для наших устройств:
Client devices: 192.0.2.1 - 192.0.2.126
Servers: 192.0.2.129 - 192.0.2.190
Guests: 192.0.2.193 - 192.0.2.254
Я очень счастлив, что все правильно. Спасибо также за второй пример! Я слышал о CIDR, но наш учитель хотел начать с основ. –
CIDR * есть * основы. Маски подсети и классные вещи являются устаревшими осложнениями;) –