CIDR-нотация для двух конкретных IP-адресов

Вопрос или проблема

У меня есть следующие IP-адреса, которые я должен установить, чтобы разрешить подключение к нашей системе:

172.22.254.67
172.22.254.68

Я знаю, что могу закодировать 172.22.254.67/32 и 172.22.254.68/32, и /32 означает точный IP, но поле, которое у меня есть, не позволяет ввести такое количество символов в строке.

Если я закодирую 172.22.254.0/24, это позволит подключиться слишком большому числу IP-адресов. CIDR запутанный.

Я не знаю, могу ли я закодировать 172.22.254.67/2, чтобы разрешить подключение обоих IP-адресов.

172.22.254.64/29 – это наименьший диапазон, который охватывает оба этих IP-адреса, но он все равно разрешит больше, чем вам нужно, так что вам придется использовать два адреса /32.

Чтобы понять, почему, посмотрите на числа в двоичном виде:

66 это 01000010
67 это 01000011
68 это 01000100
69 это 01000101

Таким образом, вам нужно иметь 3 свободных бита, чтобы отделить 67 и 68 от их соседей. 172.22.254.67/31 будет включать .66 и .67; 172.22.254.68/31 будет включать .68 и .69.

Ответ или решение

Чтобы разобраться с вашим запросом на использование CIDR-нотации для указанных IP-адресов 172.22.254.67 и 172.22.254.68, важно учитывать несколько ключевых моментов.

Анализ требования

Вы правильно отметили, что использование CIDR-нотации с маской /32, что соответствует каждому конкретному IP-адресу (172.22.254.67/32 и 172.22.254.68/32), в вашем случае невозможно из-за ограничения по количеству символов в соответствующем поле. В то же время использование более широкой маски, например, 172.22.254.0/24, откроет доступ ко всем 256 IP-адресам в этом диапазоне, что также не соответствует вашему требованию.

Понимание CIDR и бинарной системы

CIDR (Classless Inter-Domain Routing) позволяет более гибко подходить к распределению адресов. Чтобы понять, какую маску использовать, рассмотрим бинарные представления ваших адресов:

  • 172.22.254.67 = 10101100.00010110.11111110.01000011
  • 172.22.254.68 = 10101100.00010110.11111110.01000100

Из бинарного представления видно, что последние три бита адреса различаются. То есть:

  • 67 = 01000011
  • 68 = 01000100

Это значит, что для идентификации двух IP-адресов, нам нужно установить маску, которая оставляет три последних бита свободными. Однако, если мы попробуем использовать маску, например, /31 (которая позволит только два IP-адреса), это включает соседние адреса, что вам не нужно.

Оптимальное решение

Ваша ссылка на маску /29 (172.22.254.64/29) верна. Она включает диапазон от 172.22.254.64 до 172.22.254.71, что удовлетворяет ваши потребности, но также включает дополнительный адрес 172.22.254.64 и 172.22.254.65, которые, возможно, вам не нужны.

Так как нет возможности сократить диапазон до минимального, учитывая только эти два IP, единственным приемлемым решением будет использование двух отдельных записей в формате /32, если место позволяет. Однако, если у вас совершенно исключена возможность подключения двух IP, можно использовать /29, понимая, что он откроет доступ и к другим.

Заключение

Если доступ к меньшему количеству IP-адресов критичен для вашей системы, разумно будет планировать изменение конфигурации, позволяющее вводить более двух адресов. В противном случае, стоит рассмотреть возможность использования маски /29 с учётом имеющихся ограничений.

Если возникнут дополнительные вопросы, пожалуйста, дайте знать.

Оцените материал
Добавить комментарий

Капча загружается...