Что такое пул адресов
- Диапазон «10.0.0.2 – 10.127.255.255» используется для IP-адресов компьютеров
- Диапазон «10.128.0.1 – 10.255.255.254» используется для IP-адресов пользователей.
Создание пула IP-адресов
Чтобы создать новый пул:
1. В разделе Пулы IP-адресов на панели инструментов нажмите кнопку Добавить новый пул IP-адресов. Появится следующее окно:
Пул назначения IP-адресов
Пул адресов — это набор IP-адресов, доступных для распределения пользователям, например в конфигурациях хоста с DHCP. Пул адресов назначения может поддерживать либо адрес IPv4, либо IPv6. Вы можете создавать централизованные пулы адресов IPv4 и IPv6 независимо от клиентских приложений, которые используют пулы. Для получения дополнительной информации прочитайте эту тему.
Обзор пулов назначения адресов
Пул адресов назначения позволяет создавать централизованные пулы адресов IPv4 и IPv6 независимо от клиентских приложений, которые используют пулы. Процесс authd управляет пулами и распределением адресов, будь то локальные пулы или сервер RADIUS.
Например, несколько клиентских приложений, таких как DHCP, могут использовать один и тот же пул назначения адресов для предоставления адресов для своих конкретных клиентов. Клиентские приложения могут приобретать адреса для проверенных или несанкционированных клиентов. Пул, отобранный для абонента на основе сервера RADIUS, соответствия сети или другого правила, называется пулом соответствия для абонента.
Типы назначения адресов
Пулы адресов для назначения поддерживают динамическое и статическое назначение адресов. При динамическом назначении адреса клиенту автоматически назначается адрес из пула назначения адресов. При статическом назначении адреса, которое поддерживается только для пулов IPv4, вы резервируете адрес, который затем всегда используется определенным клиентом. Адреса, предназначенные для статического назначения, удаляются из пула динамических адресов и не могут быть назначены другим клиентам.
Названные диапазоны адресов в пуле назначения адресов
Вы можете настроить указанные диапазоны адресов в пуле назначения адресов. Указанный диапазон — это подмножество общего диапазона адресов. Клиентское приложение может использовать названные диапазоны для управления назначением адресов на основе конкретных критериев клиента. Например, для пулов назначения адресов IPv4 можно создать указанный диапазон, основанный на определенном значении параметра DHCP 82. Затем, когда запрос клиента DHCP соответствует указанному значению варианта 82, адрес из указанного диапазона назначается клиенту.
Распределение адресов из пулов связанных адресов
Пулы назначения адресов можно объединить для предоставления резервных пулов для назначения адресов. Когда в первичном или соответствующем пуле адресов нет доступных адресов, устройство автоматически переходит к пулу связанных (второстепенных) адресов для поиска доступного адреса для распределения.
Хотя первый пул в цепочке связанных пулов, как правило, считается основным пулом, соответствующий бассейн не обязательно является первым бассейном в цепочке.
Начиная с версии ОС Junos 18.1R1 механизм поиска доступного адреса проходит через цепочку связанных пулов. Такое поведение позволяет DHCP одновременно искать адреса.
Давайте рассмотрим пример работы механизма поиска. Рассмотрим цепочку из трех пулов: А, B и C. Пул А является основным пулом, пул B — это пул, соответствующий пул для определенных абонентов на основе информации, возвращенной сервером RADIUS. Поиск доступного адреса для этих абонентов использует следующую последовательность:
По умолчанию в первую очередь ищется пул соответствия (Pool B).
Поиск перемещается в первый пул (Пул А) в цепочке, если адрес не найден.
Поиск продолжается через цепочку (Пул С) до тех пор, пока доступный адрес не будет найден и выделен, или до тех пор, пока поиск не определит, что адреса не являются бесплатными.
В каждом пуле все диапазоны адресов полностью ищут адрес.
Вы можете настроить linked-pool-aggregation заявление, чтобы начать поиск в блоке адресов в каждом диапазоне в пуле соответствия, а затем последовательно через связанные пулы. Затем поиск перемещается обратно в первый пул в цепочке и ищет все адреса во всех диапазонах в каждом пуле через последний пул в цепочке.
Состояние удержания пула адресов
Вы можете настроить пул назначения адресов в режиме удержания. Когда пул адресов находится в состоянии удержания, пул больше недоступен для распределения IP-адресов для абонентов. Такая конфигурация изящно трансформирует активный пул в неактивное состояние по мере возврата ранее выделенных адресов в пул. Когда бассейн неактивн, вы можете безопасно выполнять техническое обслуживание в бассейне, не влияя на активных абонентов.
Пул для назначения адресов для рекламы маршрутизатора соседа Discovery
Вы можете прямо выделить пул назначения адресов для рекламы маршрутизатора Neighbor Discovery (NDRA).
Исключение определенного адреса или диапазона адресов
Начиная с версии ОС Junos 18.1R1, вы можете исключить указанный адрес или диапазон последовательных адресов, чтобы предотвратить их выделение из пула адресов.
Например, может потребоваться зарезервировать определенные адреса или диапазоны, которые будут использоваться только для статичных абонентов. Когда вы настраиваете адрес или диапазон, который будет исключен, а адрес или адрес в пределах диапазона уже выделены, этот абонент вошел в систему, адрес занимает местоположение, а адрес отмечен для исключения.
Требование лицензирования
Для этого требуется лицензия. Чтобы узнать больше о лицензировании доступа к абонентам, см. обзор лицензирования доступа абонентов. Для получения общей информации об управлении лицензионными лицензионными решениями обращайтесь в Руководство по лицензированию компании Juniper . Для получения подробной информации обратитесь к листам данных о продуктах или свяжитесь с отделом по работе с клиентами компании Juniper или с партнером Juniper.
Преимущества пулов назначения адресов
Функция пула назначения адресов поддерживает как управление абонентами, так и управление DHCP.
Вы можете создавать централизованные пулы адресов независимо от клиентских приложений.
Вы можете указать блоки адресов, названные диапазоны, чтобы пул адресов использовался для предоставления разных адресов для различных клиентских приложений или абонентов, соответствующих различным критериям.
Пулы можно соединять, чтобы пулы искали бесплатные адреса определенным образом, одновременно или без нее.
Вы можете изящно перейти пул адресов с активного на неактивный, уточнив, что никаких дополнительных адресов из пула не выделено.
Расширенные пулы локальных серверов DHCP и пулов назначения адресов
Расширенный локальный сервер DHCP улучшает традиционную работу сервера DHCP, в котором пул адресов клиента и информация о конфигурации клиента размещены на сервере DHCP. Благодаря расширенному местному серверу DHCP информация о клиентском адресе и конфигурации размещена в централизованных пулах назначения адресов, которыми управляют независимо от локального сервера DHCP и которыми могут делиться различные клиентские приложения.
Расширенный локальный сервер DHCP также поддерживает расширенное сопоставление пулов и использование названных диапазонов адресов. Вы также можете настроить локальный сервер для использования информации о варианте DHCP 82 в клиентском PDU, чтобы определить, какой названный диапазон адресов для использования для конкретного клиента. Информация о конфигурации клиента, которая настроена в пуле назначения адресов, включает в себя определяемые пользователем варианты, такие как сервер загрузки, льготный период и время аренды.
Настройка среды DHCP, которая включает в себя расширенный локальный сервер DHCP, требует двух независимых операций конфигурации, которые вы можете завершить в любом порядке.
В ходе одной операции вы настраиваете расширенный локальный сервер DHCP на маршрутизаторе и указываете, как локальный сервер DHCP определяет, какой пул назначения адресов для использования.
В другой операции вы настраиваете пулы назначения адресов, используемые локальным сервером DHCP. Пулы назначения адресов содержат IP-адреса, указанные диапазоны адресов и информацию о конфигурации для клиентов DHCP. См. обзор конфигурации пула адресов назначения для получения подробной информации о создании и использовании пулов для назначения адресов.
Расширенный локальный сервер DHCP и пулы назначения адресов, используемые сервером, должны быть настроены в той же логической системе и экземпляре маршрутизации.
Взаимодействие между клиентом DHCP, расширенным локальным сервером DHCP и пулами назначения адресов
Модель взаимодействия между локальным сервером DHCP, клиентом DHCP и пулами назначения адресов одинакова независимо от того, используете ли вы маршрутизатор или коммутатор. Однако существуют некоторые различия в деталях использования.
На маршрутизаторах: В типичной конфигурации граничных сетей оператора связи клиент DHCP находится на компьютере абонента или клиентском оборудовании( CPE), а на маршрутизаторе настроен локальный сервер DHCP.
На коммутаторах: в типичной сетевой конфигурации клиент DHCP находится на устройстве доступа, таком как персональный компьютер, а на коммутаторе настроен локальный сервер DHCP.
Следующие шаги обеспечивают высокоуровневую информацию о взаимодействии между локальным сервером DHCP, клиентом DHCP и пулами адресных заданий:
Клиент DHCP отправляет пакет обнаружения на один или несколько местных серверов DHCP в сети для получения параметров конфигурации и IP-адреса для абонента (или клиента DHCP).
Каждый локальный сервер DHCP, который получает пакет обнаружения, затем ищет пул адрес-назначение для вариантов клиентского адреса и конфигурации. Каждый локальный сервер создает вход в свой внутренний клиентский стол для отслеживания состояния клиента, а затем отправляет пакет предложения DHCP клиенту.
При получении пакета предложения клиент DHCP выбирает локальный сервер DHCP, с которого он получает информацию о конфигурации, и отправляет пакет запроса, указывающий местный сервер DHCP, выбранный для предоставления информации о адресе и конфигурации.
Выбранный локальный сервер DHCP отправляет клиенту пакет подтверждения, который содержит арендный адрес клиента и параметры конфигурации. Сервер также устанавливает маршрут хоста и вход ARP, а затем отслеживает состояние аренды.
Настройка того, как локальный сервер DHCP определяет пул назначения адресов для использования
Вы можете указать порядок соответствия, в котором расширенный локальный сервер DHCP использует данные клиента для определения пула назначения адресов, который предоставляет IP-адрес и конфигурацию для клиента DHCP. Если вы не указываете какой-либо заказ на совпадение пула, устройство использует IP-адрес по умолчанию, настроенный в варианте совпадения IP-адресов, чтобы выбрать пул адресов.
Вы можете указать порядок сопоставления пулов. Вы можете указать методы в любом порядке. Все методы не являются обязательными. Первым способом IP-адресов является метод по умолчанию.
Первый IP-адрес — вариант по умолчанию. Сервер выбирает пул назначения адресов для использования путем сопоставления IP-адреса в запросе DHCP клиента с сетевым адресом пула назначения адресов.
Если клиентский запрос содержит IP-адрес шлюза (giaddr), локальный сервер соответствует giaddr к адресу пула назначения.
Если клиентский запрос не содержит giaddr, локальный сервер DHCP соответствует IP-адресу получающего интерфейса к адресу пула назначения адресов.
Внешний орган: локальный сервер DHCP получает назначение адреса от внешнего органа, такого как RADIUS или Diameter.
Если RADIUS является внешним органом, локальный сервер DHCP использует атрибут Framed-IPv6-Pool (атрибут RADIUS 100) для выбора пула.
Если Диаметр — внешний орган, сервер использует аналог Диаметр атрибута Framed-IPv6-Pool для определения пула.
Вариант 82. Локальный сервер DHCP с расширенным адресом IPv4 соответствует варианту информации о ретрансляторе DHCP (вариант 82) в пакетах клиента DHCP с указанным диапазоном в пуле назначения адресов. Названные диапазоны — это подмножество в общем диапазоне адресов назначения пула адресов, которые можно настроить при создании пула адресных заданий.
Чтобы использовать функцию сопоставления локального сервера DHCP 82 с пулом назначения адресов IPv4, необходимо убедиться, что option-82 заявление включено в dhcp-attributes заявление для пула адресов назначения.
На этом примере показана расширенная конфигурация локального сервера DHCP, которая включает в себя факультативные группы совпадения пула адресов ИПв4 и группы интерфейсов. Для сопоставления пулов эта конфигурация определяет, что локальный сервер DHCP сначала проверяет ответ внешнего органа аутентификации (например, RADIUS) и использует атрибут Framed-IPv6-Pool для определения пула назначения адресов для использования для клиентского адреса. При отсутствии совпадения внешнего органа локальный сервер DHCP использует сопоставление ip-адресов с информацией 82 варианта в соответствии с указанным диапазоном адресов для назначения адреса клиента IPv4. Соответствие варианту 82 также должно быть включено в конфигурацию пула назначения адресов.
Назначайте конкретный IP-адрес клиенту с помощью варианта 50 и DHCPv6 IA_NA
Управление абонентами или управление DHCP позволяет указать, что локальный сервер DHCP назначает конкретный адрес клиенту. Например, если клиент отключен, вы можете использовать эту возможность для назначения того же адреса, который клиент использовал до разъединения. Если запрашиваемый адрес доступен, DHCP назначает его клиенту. Если адрес недоступен, локальный сервер DHCP предлагает другой адрес на основе процесса распределения адресов.
Локальный сервер DHCP и локальный сервер DHCPv6 поддерживают функцию запроса конкретного адреса. Локальный сервер DHCP использует вариант DHCP 50 в DHCP, обнаруживая сообщения для запроса конкретного адреса, в то время как местный сервер DHCPv6 использует вариант IA_NA (Ассоциация идентификации для не временных адресов) в сообщениях DHCPv6 для запроса сообщений.
Управление абонентами (УПРАВЛЕНИЕ DHCP) поддерживает только один адрес для каждого из типов адресов DHCPv6 IA_NA или IA_PD. Если клиент DHCPv6 запрашивает более одного адреса для определенного типа, локальный сервер DHCPv6 использует только первый адрес и игнорировать другие адреса.
Настройка пулов назначения адресов
Функция пула адресов назначения позволяет создавать пулы адресов, которыми могут делиться различные клиентские приложения, такие как DHCPv4 или DHCPv6.
Чтобы настроить пул назначения адресов, используйте следующий заказ. Следующие процедуры тестируются на устройствах SRX300, SRX320, SRX340, SRX345, SRX550M и SRX1500.
- Настройте название пула адрес-назначения и укажите адреса пула.
- (Необязательно) Настраивайте названные диапазоны (подмножества) адресов.
- (Необязательно; Только для IPv4) Создавайте статические привязки к адресу.
- (Необязательно) Настраивайте атрибуты для клиентов DHCP.
Настройка пула и названий пула адресов
При настройке пула адресов назначения на устройствах необходимо указать название пула и его адреса.
Чтобы настроить пул назначения адресов IPv4:
- Настройте название пула и укажите семейство IPv4.
Вы можете настроить пул назначения адресов IPv4 в экземпляре маршрутизации, настраивая заявления о назначении адресов на [edit routing-instance routing-instance-name ] уровне иерархии. Например [edit routing-instances routing-instances name access address-assignment pool blr-pool family inet] . На указанных выше шагах показана только конфигурация [edit access] .
Настройка названного диапазона адресов для динамического назначения адресов
В пуле адресов можно настроить несколько названных диапазонов или подмножеств адресов. Во время динамического назначения адреса клиенту может быть назначен адрес из определенного названного диапазона. Для создания названного диапазона вы указываете название диапазона и определяете диапазон адресов.
Этот пример проверяется на устройствах SRX300, SRX320, SRX340, SRX345, SRX1500 и SRX550M.
Для создания названного диапазона в пуле назначения адресов IPv4:
- Укажите название пула назначения адресов.
Чтобы настроить названные диапазоны адресов в экземпляре маршрутизации, настраивайте address-assignment заявления на [edit routing-instances] уровне иерархии.
Настройка статических заданий адресов
Возможно, вы можете создать статичный адрес IPv4, обязывающий резервировать определенный адрес для конкретного клиента. Адрес удаляется из пула назначения адресов, чтобы он не был назначен другому клиенту. Забронируя адрес, вы определяете хост клиента и создаете обязательную связь между mac-адресом клиента и назначенным IP-адресом.
Этот пример проверяется на устройствах SRX300, SRX320, SRX340, SRX345, SRX1500 и SRX550M.
Для настройки статичного обязательного адреса IPv4:
- Укажите название пула назначения адресов IPv4, содержащего IP-адрес, который вы хотите забронировать для клиента.
Чтобы настроить статическую обязательную силу для адреса IPv4 в экземпляре маршрутизации, настраивайте address-assignment заявления в [edit routing-instances] иерархии.
Настройка пула назначения адресов
Ссылка на пул адресов позволяет указать пул второстепенных адресов, который устройство может использовать при полном распределении пула основных адресов. Когда у основного пула нет оставшихся адресов, устройство автоматически переключается на связанный вспомогательный пул и начинает распределять адреса из этого пула. Устройство использует вспомогательный пул только при полном распределении пула адресов.
Для связи первичного пула назначения адресов, названного пулом-1, к дополнительному пулу под названием пул-2, используйте следующий вариант:
Настройка атрибутов dhCP для конкретных клиентов для пулов назначения адресов
При получении адреса вы используете функцию пула адресов назначения, чтобы включать атрибуты, характерные для приложений. Клиентское приложение, такое как DHCP, использует атрибуты для определения назначения адресов и предоставления клиенту дополнительных характеристик, связанных с приложениями. Например, приложение DHCP может указать, что клиент, который соответствует определенной необходимой информации, динамически назначается адрес из определенного названного диапазона. На основе использования названного диапазона DHCP определяет дополнительные атрибуты DHCP, такие как файл загрузки, используемый клиентом, сервер DNS и максимальное время аренды.
Эта функция поддерживается на устройствах SRX300, SRX320, SRX340, SRX345, SRX550M и SRX1500.
Вы используете dhcp-attributes заявление для настройки атрибутов, характерных для клиента DHCP, для пулов адресных заданий.
Для настройки атрибутов пула адресов для клиентов DHCP:
- Укажите название пула назначения адресов.
Чтобы настроить атрибуты, характерные для клиента DHCP, в экземпляре маршрутизации, настраивайте dhcp-attributes заявления в [edit routing-instances] иерархии.
Основы компьютерных сетей. Тема №5. Понятие IP адресации, масок подсетей и их расчет
Приветствую вас на очередном выпуске. И сегодня речь пойдет о том, какие бывают IP-адреса, и как ими пользоваться. Что такое маска подсети, как она считается, и для чего она нужна. Как делить сети на подсети и суммировать их. Заинтересовавшихся приглашаю к прочтению.
P.S. Возможно, со временем список дополнится.
Начнем, или уже продолжим, с самого популярного, заезженного и больного. Это IP-адреса. На протяжении 4-х статей это понятие встречалось по несколько раз, и скорее всего вы уже либо сами поняли для чего они, либо нагуглили и почитали о них. Но я обязан вам это рассказать, так как без ясного понимания двигаться дальше будет тяжело.
Итак IP-адрес — это адрес, используемый узлом на сетевом уровне. Он имеет иерархическую структуру. Что это значит? Это значит, что каждая цифра в его написании несет определенный смысл. Объясню на очень хорошем примере. Примером будет номер обычного телефона — +74951234567. Первой цифрой идет +7. Это говорит о том, что номер принадлежит зоне РФ. Далее следует 495. Это код Москвы. И последние 7 цифр я взял случайными. Эти цифры закреплены за районной зоной. Как видите здесь наблюдается четкая иерархия. То есть по номеру можно понять какой стране, зоне он принадлежит. IP адреса придерживаются аналогично строгой иерархии. Контролирует их организация IANA(англ. Internet Assigned Numbers Authority). Если на русском, то это «Администрация адресного пространства Интернет». Заметьте, что слово «Интернет» с большой буквы. Мало кто придает этому значение, поэтому объясню разницу. В англоязычной литературе термин «internet» используется для описания нескольких подключённых друг к другу сетей. А термин «Internet» для описания глобальной сети. Так что примите это к сведению.
Несмотря на то, что тема статьи больше теоретическая, нежели практическая, я настоятельно рекомендую отнестись к ней со всей серьезностью, так как от нее зависит понимание дальнейших тем, а особенно маршрутизации. Не для кого, я думаю, не секрет, что мы привыкли воспринимать числовую информацию в десятичном формате (в числах от 0-9). Однако все современные компьютеры воспринимают информацию в двоичном (0 и 1). Не важно при помощи тока или света передается информация. Вся она будет воспринята устройством как есть сигнал (1) или нет (0). Всего 2 значения. Поэтому был придуман алгоритм перевода из двоичной системы в десятичную, и обратно. Начну с простого и расскажу, как выглядят IP адреса в десятичном формате. Вся эта статья посвящена IP адресам версии 4. О версии 6 будет отдельная статья. В предыдущих статьях, лабах, да и вообще в жизни, вы видели что-то вроде этого «193.233.44.12». Это и есть IP адрес в десятичной записи. Состоит он из 4-х чисел, называемых октетами и разделенных между собой точками. Каждое такое число (октет) может принимать значение от 0 до 255. То есть одно из 256 значений. Длина каждого октета равна 8 битам, а суммарная длина IPv4 = 32 битам. Теперь интересный вопрос. Каким образом этот адрес воспримет компьютер, и как будет с ним работать?
Можно конечно набить это в калькулятор, коих навалом в Интернете, и он переведет его в двоичный формат, но я считаю, что переводить вручную должен уметь каждый. Особенно это касается тех, кто планирует сдавать экзамен. У вас не будет под рукой ничего, кроме бумаги и маркера, и полагаться придется только на свои навыки. Поэтому показываю, как это делать вручную. Строится таблица.
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
---|---|---|---|---|---|---|---|
x | x | x | x | x | x | x | x |
Вместо «x» записывается либо 1, либо 0. Таблица разделена на 8 колонок, каждая из которых несет в себе 1 бит (8 колонок = 8 бит = 1 октет). Расположены они по старшинству слева направо. То есть первый (левый) бит — самый старший и имеет номер 128, а последний (правый) — самый младший и имеет номер 1. Теперь объясню, откуда эти числа взялись. Так как система двоичная, и длина октета равна 8-ми битам, то каждое число получается возведением числа 2 в степень от 0 до 7. И каждая из полученных цифр записывается в таблицу от большего к меньшему. То есть слева направо. От 2 в 7-ой степени до 2 в 0-ой степени. Приведу таблицу степеней 2-ки.
Думаю теперь понятно, каким образом строится таблица. Давайте теперь разберем адрес «193.233.44.12» и посмотрим, как он выглядит в двоичном формате. Разберем каждый октет отдельно. Возьмем число 193 и посмотрим, из каких табличных комбинаций оно получается. 128 + 64 + 1 = 193.
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
---|---|---|---|---|---|---|---|
1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 |
Те числа, которые участвовали в формировании комбинации получают 1, а все остальные получают 0.
Берем первый октет 233. 128 + 64 + 32 + 8 + 1.
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
---|---|---|---|---|---|---|---|
1 | 1 | 1 | 0 | 1 | 0 | 0 | 1 |
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
---|---|---|---|---|---|---|---|
0 | 0 | 1 | 0 | 1 | 1 | 0 | 0 |
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
---|---|---|---|---|---|---|---|
0 | 0 | 0 | 0 | 1 | 1 | 0 | 0 |
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
---|---|---|---|---|---|---|---|
1 | 1 | 0 | 1 | 0 | 1 | 0 | 1 |
Получаю 128 + 64 + 16 + 4 + 1 = 213.
Вычисляю второй блок.
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
---|---|---|---|---|---|---|---|
1 | 0 | 1 | 1 | 0 | 1 | 0 | 0 |
Считаю 128 + 32 + 16 + 4 = 180.
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
---|---|---|---|---|---|---|---|
1 | 1 | 0 | 0 | 0 | 0 | 0 | 1 |
128 + 64 + 1 = 193.
И напоследок четвертый.
128 | 64 | 32 | 16 | 8 | 4 | 2 | 1 |
---|---|---|---|---|---|---|---|
0 | 0 | 0 | 0 | 0 | 0 | 1 | 1 |
Собираем результаты вычислений и получаем адрес 213.180.193.3. Ничего тяжелого, чистая арифметика. Если тяжело и прям невыносимо трудно, то попрактикуйтесь. Сначала может показаться страшным, так как многие закончили учебу лет 10 назад и многое позабыли. Но уверяю, что как только набьете руку, считать будет гораздо легче. Ну а для закрепления дам вам несколько примеров для самостоятельного расчета (под спойлером будут ответы, но открывайте их только когда прорешаете сами).
1) 10.124.56.220
2) 113.72.101.11
3) 173.143.32.194
4) 200.69.139.217
5) 88.212.236.76
6) 01011101.10111011.01001000.00110000
7) 01001000.10100011.00000100.10100001
8) 00001111.11011001.11101000.11110101
9) 01000101.00010100.00111011.01010000
10) 00101011.11110011.10000010.00111101
Теперь IP-адреса не должны быть чем-то страшным, и можно углубиться в их изучение.
Выше мы говорили о структуре телефонных номеров и их иерархии. И вот на заре рождения Интернета в том представлении, в каком мы его привыкли видеть, возник вопрос. Вопрос заключался в том, что IP-адреса нужно как-то сгруппировать и контролировать выдачу. Решением было разделить все пространство IP-адресов на классы. Это решение получило название классовая адресация (от англ. Classful). Она уже давно устарела, но практически в любой книге на нее отводятся целые главы и разделы. Cisco тоже не забывает про это и в своих учебных материалах рассказывает про нее. Поэтому я пробегусь по этой теме и покажу, чем она блистала с 1981 по 1995 год.
Пространство было поделено на 5 классов. Каждому классу был назначен блок адресов.
Начнем с класса A. Если внимательно посмотреть на таблицу, то можно заметить, что этому блоку дан самый большой блок адресов, а если быть точным, то половина всего адресного пространства. Предназначался данный класс для крупных сетей. Структура этого класса выглядит следующим образом.
В чем суть. Первый октет, то есть 8 бит, остаются за адресом сети, а 3 последних октета (то есть оставшиеся 24 бита) назначаются хостам. Вот для того, чтобы показать, какой кусок относится к сети, а какой к хостам, используется маска. По структуре записи она аналогична записи IP-адреса. Отличие маски от IP-адресов в том, что 0 и 1 не могут чередоваться. Сначала идут 1, а потом 0. Таким образом, там где есть единица, значит это участок сети. Чуть ниже, после разбора классов, я покажу, как с ней работать. Сейчас главное знать, что маска класса A — 255.0.0.0. В таблице еще упомянут какой-то первый бит и для класса A он равен 0. Этот бит как раз нужен для того, чтобы сетевое устройство понимало, к какому классу оно принадлежит. Он же еще задает начальный и конечный диапазон адресов. Если в двоичном виде записать на всех октетах единицы, кроме первого бита в первом октете (там всегда 0), то получится 127.255.255.255, что является границей класса A. Например, возьмем адрес 44.58.63.132. Мы знаем, что у класса A первый октет отдается под адрес сети. То есть «44» — это адрес сети, а «58.63.132» — это адрес хоста.
Поговорим про класс B
Этому классу был дан блок поменьше. И адреса из этого блока предназначались для сетей средних масштабов. 2 октета отданы под адрес сети, и 2 — под адрес хостов. Маска у B класса — 255.255.0.0. Первые биты строго 10. А остальные меняются. Перейдем к примеру: 172.16.105.32. Два первых октета под адрес сети — «172.16». А 3-ий и 4-ый под адрес хоста — «105.32».
Этот класс обделили адресами и дали ему самый маленький блок. Он был предназначен для мелких сетей. Зато этот класс отдавал целых 3 октета под адрес сети и только 1 октет — под хосты. Маска у него — 255.255.255.0. Первые биты 110. На примере это выглядит так — 192.168.1.5. Адрес сети «192.168.1», а адрес хоста «5».
Классы D и E. Я неcпроста объединил их в один. Адреса из этих блоков зарезервированы и не могут назначаться сетям и хостам. Класс D предназначен для многоадресной рассылки. Аналогию можно привести с телевидением. Телеканал вещает группе лиц свой эфир. И те, кто подключены, могут смотреть телепередачи. То есть в распоряжение администраторов могут попасть только 3 первых класса.
Напомню, что первые биты у класса D — это 1110. Пример адреса — 224.0.0.5.
А первые биты у класса E — это 1111. Поэтому, если вдруг увидите адрес вида 240.0.0.1, смело говорите, что это адрес E класса.
Про классы обмолвились. Теперь озвучу вопрос, который мне недавно задали. Так зачем тогда маски? У нас итак хосты понимают в каком они классе. Но суть вот в чем. Например, у вас есть маленький офис, и вам нужен блок IP-адресов. Никто не будет вам выдавать все адреса класса C. А дадут только его кусок. Например 192.168.1.0 с маской 255.255.255.0. Так вот эта маска и будет определять вашу границу. Мы уже говорили, что октет варьируется в значении от 0 до 255. Вот этот 4 октет полностью в вашем распоряжении. За исключением первого адреса и последнего, то есть 0 и 255 в данном случае. Первый адрес — это адрес сети (в данном случае 192.168.1.0), а последний адрес — широковещательный адрес (192.168.1.255). Напомню, что широковещательный адрес используется в том случае, когда надо передать информацию всем узлам в сети. Поэтому есть правило. Если вам надо узнать номер сети, то все биты относящиеся к хосту обращаете в 0, а если широковещательный, то все биты — в 1. Поэтому, если из 256 адресов забирается 2 адреса, то на назначение хостам остается 254 адреса (256 — 2). На собеседованиях и экзаменах часто любят спрашивать: «Количество IP-адресов в сети?» и «Сколько доступных IP-адресов в сети для назначения хостам?». Два разных вопроса, которые могут поставить в тупик. Ответом на первый будет — все адреса, включая адрес сети и широковещательный адрес, а на второй вопрос — все адреса, кроме адреса сети и широковещательного адреса.
Теперь углубимся в изучении маски.
Я записал адрес класса C 192.168.1.1 с маской 255.255.255.0 в десятичном и двоичном формате. Обратите внимание на то, как выглядит IP-адрес и маска в двоичном формате. Если в IP-адресе 0 и 1 чередуются, то в маске сначала идут 1, а потом 0. Эти биты фиксируют адрес сети и задают размер. По таблице выше можно сделать вывод, что в двоичном виде маска представлена последовательностью 24 единиц подряд. Это говорит о том, что целых 3 октета выделено под сеть, а 4 октет свободен под адресацию для хостов. Здесь ничего необычного. Это стандартная маска класса C.
Но вот в чем загвоздка. Например, в вашем офисе 100 компьютеров, и расширяться вы не планируете. Зачем плодить сеть из 250+ адресов, которые вам не нужны?! На помощь приходит разделение на подсети. Это очень удобная вещь. Объясню принцип на примере того же класса C. Как бы вы не хотели, но трогать 3 октета нельзя. Они фиксированы. Но вот 4 октет свободен под хосты, поэтому его можно трогать. Заимствуя биты из хостового куска, вы дробите сеть на n-ое количество подсетей и, соответственно, уменьшаете в ней количество адресов для хостов.
Попробуем это воплотить в реальность. Меняю маску. Заимствую первый бит из хостовой части(то есть 1-ый бит 4-ого октета выставляю в единицу). Получается следующая маска.
Данная маска делит сеть на 2 части. Если до дробления у сети было 256 адресов(от 0 до 255), то после дробления у каждого куска будет по 128 адресов(от 0 до 127 и от 128 до 255).
Теперь посмотрю, что изменится в целом с адресами.
Красным цветом я показал те биты, которые зафиксированы и не могут изменяться. То есть маска ей задает границу. Соответственно биты помеченные черным цветом определены для адресации хостов. Теперь вычислю эту границу. Чтобы определить начало, надо все свободные биты(помеченные черным цветом) обратить в ноль, а для определения конца обратить в единицы. Приступаю.
То есть в четвертом октете меняются все биты, кроме первого. Он жестко фиксирован в рамках этой сети.
Теперь посмотрим на вторую половину сети и вычислим ее адреса. Деление у нас производилось заимствованием первого бита в 4-ом октете, значит он является делителем. Первая половина сети получалась, когда этот бит принимал значение 0, а значит вторая сеть образуется, когда этот бит примет значение 1. Обращаю этот бит в 1 и посмотрю на границы.
Приведу в десятичный вид.
Соответственно .128 и .255 назначать хостам нельзя. Значит в доступности 128-2=126 адресов.
Вот таким образом можно при помощи маски управлять размером сети. Каждый заимствованный бит делит сеть на 2 части. Если откусить 1 бит от хостовой части, то поделим на 2 части (по 128 адресов), 2 бита = 4 части (по 64 адреса), 3 бита = 8 (по 32 адреса) и так далее.
Если вы рассчитали количество бит, отдаваемые под хосты, то количество доступных IP-адресов можно вычислить по формуле
В книге У. Одома по подготовке к CCNA R&S приведена хорошая формула для расчета битов, отдаваемых на подсеть и хосты:
N + S + H = 32, где N — кол-во битов сети (класс A — 8 бит, B — 16 бит, C — 24 бита), S — кол-во заимствованных битов на подсеть (это то, что мы делали выше, когда заимствовали 1 бит из хостовой части), H — кол-во бит отводимых хостам.
Внесу ясность и объясню, как и где применять эти формулы.
Нам выдали сеть 172.16.0.0 и попросили создать 120 подсетей со 180 хостами и записать маску. Приступим.
В качестве шпаргалки, и для быстроты вычисления, я ниже подготовил таблицу степеней двойки.
Двигаемся дальше. Первое главное условие, при использовании классовой адресации — это то, что должна использоваться одна маска для всех подсетей. То есть, если у вас для одной подсети маска 255.255.255.0, то для другой подсети она не может быть 255.255.255.128.
Теперь смотрим на выданную сеть. Путем логических размышлений понимаем, что это адрес класса B. А значит его N (кол-во битов сети) = 16. Ок. Значит на хосты выделено тоже 16 бит. Вспоминаем условия задачи. Нужно создать 120 подсетей. «Откусывать» биты от сетевой части запрещено, значит кусаем от хостовой части.
Теперь нужно взять такое кол-во бит, чтобы хватило для 120 подсетей, однако оставляло достаточное кол-во под биты для хоста. Смотрим на таблицу выше. Если взять 7 бит, то получим 128. 128>120, следовательно попадаем под условие. Если возьмем 6 бит, то получим 64. 64<128, поэтому не попадаем под условие и отбрасываем этот вариант.
Ок. Выяснили, что S надо выделить не меньше 7 бит. Теперь посмотрим, что осталось под хосты.
Если N + S + H = 32 => H = 32 — (N + S) => H = 32 — (16 + 7) = 9. Смотрим на таблицу выше (или возводим 2 в 9 степень в уме) и получаем число 512. Отнимаем 2 (адрес сети и широковещательный адрес) и получаем 510 адресов. Нам нужно 180, а значит под условие мы попадаем причем с большим запасом. В таких случаях вам предоставляется право выбора. Сделать больше подсетей или хостов на подсеть. Объясняю, что это значит. У нас есть 9 бит на хосты. Если мы возьмем 8 бит, то получим число 256. 256 — 2 = 254 адреса. Этот вариант нам тоже подходит. Возьмем 7 бит. Получаем 128. Даже не отнимая 2 адреса, становится понятно, что это меньше 180 => данный вариант отбрасывается сразу. Итого получаем, что минимальное количество для подсети — 7 бит, а для хостов — 8 бит. Поэтому свободный бит можно отдать либо на подсеть, либо на хосты. Маска получается сложением N и S. В нашем случае получаем, если под подсеть отдаем 7 бит, то получаем 23. В десятичном виде маска будет выглядеть 255.255.254.0. А если отдадим под подсеть 8 бит, то получим 24 (или в десятичном виде 255.255.255.0). Иногда бывает, что под задачу существует всего одна маска. Ну и, конечно, могут быть случаи, когда маска не попадает не под какие условия. В этих случаях нужно брать сеть другого класса или доказывать заказчику, что это невозможно.
Думаю теперь понятно, как работала классовая адресация, и как ее рассчитывали. Возможно с первого раза голова не переварит этого, поэтому перечитывайте еще раз и повнимательнее. Как только начнет что-то проясняться, потренируйтесь на задачках, которые я оставлю.
1) Записать маску для проекта: сеть 172.16.0.0. 250 подсетей и 220 хостов.
2) Записать маску для проекта: сеть 10.0.0.0. 2000 подсетей и 1500 хостов.
3) Записать маску для проекта: сеть 192.168.0.0. 4 подсети и 60 хостов.
На этом разговор про классовые сети начну закруглять и подведу итоги. Классовая адресация — это зарождение сегодняшнего интернета, и именно с нее все началось. Поэтому плюсов у нее много, и за это создателям спасибо. Но, как вы могли заметить, у нее было жесткая привязка к одной маске. За счет этого IP-адреса использовались не экономно и расточительно. А в связи с бурным ростом Интернета адресов стало не хватать, и срочно нужно было вносить изменения.
Поняли ведущие умы, что использовать классовые сети не удобно и нужно от них отказываться. Это привело к созданию бесклассовой адресации и маскам переменной длины, о чем мы ниже поговорим. Но перед этим пару слов о видах IP-адресов. Несмотря на то, что переход от классовой адресации к бесклассовой предполагал экономию IP-адресов, на деле эта проблема все равно решалась не полностью. Все упиралось в саму технологию IPv4. Объясню почему. Выше я говорил, что длина IP адреса равна 32 бита. Каждый бит может принимать значение 0 или 1, то есть два значения. Соответственно, чтобы вычислить все комбинации, надо возвести 2 в 32-ую степень. Получаем 4294967296 адресов. Если вычесть отсюда зарезервированные для специальных нужд и прочего, то останется примерно 4.2 млрд. адресов, когда на Земле проживает около 7.3 млрд. человек. Поэтому ведущие умы быстро просекли эту фишку и начали искать решение. Они решили выделить некое адресное пространство, которое будет использоваться только в пределах локальной сети и не будет использоваться в Интернете. Это разделило адреса на 2 лагеря: белые или публичные (англ. public) и серые или частные (англ. private).
Привожу диапазон адресов, которые выделены под локальные сети:
1) 10.0.0.0 — 10.255.255.255 с маской 255.0.0.0 (или кратко 10/8).
2) 172.16.0.0 — 172.31.255.255 с маской 255.240.0.0 (или кратко 172.16/12).
3) 192.168.0.0 — 192.168.255.255 (или кратко 192.168/16).
Если честно, я мало где видел применение адресации 172.16.X.X. Обычно в корпоративной среде всегда используется 10.X.X.X, а в домах/квартирах и мелких офисах 192.168.X.X.
Теперь прошу обратить внимание на очень важную вещь, которую многие путают. Не путайте классовую адресацию и диапазон частных адресов. Очень много людей наступают на эти грабли и свято верят, что диапазон частных адресов 10.0.0.0 — 10.255.255.255 — это диапазон A класса.
Разобрались, что такое частные адреса или private адреса. Но это еще не все. Есть еще список зарезервированных адресов, которые не могут светиться в Интернете. По ним написана целая документация на IETF. Привожу ссылку, где можете прочитать оригинал. Я кратко опишу часто встречающиеся.
1) 0.0.0.0/8 — диапазон адресов, используемый хостами для самоидентификации. Обычно это можно увидеть, когда хост пытается получить IP-адрес от DHCP сервера. Так как изначально у него нету IP-адреса, то в поле источника он вставляет адрес из данного диапазона.
2) 127.0.0.0/8 — loopback или localhost адреса. Это IP-адреса, используемые компьютером, чтобы обратиться к самому себе. Очень полезно для проверки работы TCP/IP. Дело в том, что независимо от наличия соединения с Интернетом или локальной сетью, адреса из этого пула должны всегда пинговаться. Если этого не происходит, значит система накрылась или накрывается медным тазом.
3) 169.254.0.0/16 — link-local address или локальные адреса. Автоматически используются хостами при отсутствии DHCP-сервера или его недоступности. Это позволяет быстро организовать локальную сеть и проверить работу узлов. Однако данный пул адресов не маршрутизируется. Следовательно, выйти в Интернет с них не получится.
4) 224.0.0.0/4 — блок адресов, зарезервированный под многоадресную рассылку или multicast. Для тех, кто хочет побольше узнать про multicast, оставляю ссылку.
Бесклассовая адресация (англ. Classless Inter-Domain Routing или CIDR). Описана была в стандарте RFC1519 в 1993 году. Она отказалась от классовых рамок и фиксированной маски. Адреса делятся только на публичные и зарезервированные, о которых написано выше. Если в классовой адресации маска нарезалась единой для всех подсетей, то в бесклассовой — у каждой подсети может быть своя маска. На теории все хорошо и красиво, но нет ничего лучше, чем практика. Поэтому перехожу к ней и объясню, как можно делить на подсети с разным количеством хостов.
В качестве шпаргалки приведу список всех возможных масок.
Представим ситуацию. Вам выдали сеть 192.168.1.0/24 и поставили следующие условия:
1) Подсеть на 10 адресов для гостей.
2) Подсеть на 42 адреса для сотрудников.
3) Подсеть на 2 адреса для соединения 2 маршрутизаторов.
4) Подсеть на 26 адресов для филиала.
Ок. Данная маска показывает, что в нашем распоряжении находятся 256 адресов. По условию эту сеть надо каким-то образом разделить на 4 подсети. Давайте попробуем. 256 очень хорошо делится на 4, давая в ответе 64. Значит один большой блок в 256 адресов можно поделить на 4 равных блока по 64 адреса в каждом. И все было бы прекрасно, но это порождает большое число пустых адресов. Для сотрудников, которым нужно 42 адреса, ладно, может в дальнейшем компания еще наймет. Но вот подсеть для маршрутизаторов, которая требует всего 2 адреса, оставит 60 пустых адресов. Да, вы можете сказать, что это private адреса, и кому дело до них. А теперь представьте, что это публичные адреса, которые маршрутизируются в Интернете. Их и так мало, а тут мы еще будем их отбрасывать. Это не дело, тем более, когда мы можем гибко управлять адресным пространством. Поэтому возвращаемся к примеру и нарежем подсети так, как нам нужно.
Итак, какие подсети должны быть нарезаны, чтобы вместились все адреса, заданные по условию?!
1) Для 10 хостов, наименьшей подсетью будет блок из 16 адресов.
2) Для 42 хостов, наименьшей подсетью будет блок из 64 адресов.
3) Для 2 хостов, наименьшей подсетью будет блок из 4 адресов.
4) Для 26 хостов, наименьшей подсетью будет блок из 32 адресов.
Я понимаю, что не все могут с первого раза в это вникнуть, и в этом нет ничего страшного. Все люди разные и по-разному воспринимают информацию. Для полноты эффекта покажу деление на картинке.
Вот у нас блок, состоящий из 256 адресов.
После деления на 4 части получается следующая картинка.
Выше мы выяснили, что при таком раскладе адреса используются не рационально. Теперь обратите внимание, как стало выглядеть адресное пространство после нарезки подсетей разной длины.
Как видите, в свободном доступе осталось куча адресов, которые мы в дальнейшем сможем использовать. Можно посчитать точную цифру. 256 — (64 + 32 + 16 + 4) = 140 адресов.
Вот столько адресов мы сэкономили. Двигаемся дальше и ответим на следующие вопросы:
— Какими будут сетевые и широковещательные адреса?
— Какие адреса можно будет назначить хостам?
— Как буду выглядеть маски?
Механизм деления на подсети с разной маской получил название VLSM (от англ. Variable Length Subnet Mask) или маска подсети переменной длины. Дам важный совет! Начинайте адресацию с самой большой подсети. Иначе вы можете попасть на то, что адреса начнут перекрываться. Поэтому сначала планируйте сеть на бумаге. Нарисуйте ее, изобразите в виде фигур, просчитайте вручную или на калькуляторе и только потом переходите настройке в боевых условиях.
Итак, самая большая подсеть состоит из 64 адресов. С нее и начнем. Первый пул адресов будет следующий:
Адрес подсети — 192.168.1.0.
Широковещательный адрес — 192.168.1.63.
Пул адресов для назначения хостам от 192.168.1.1 до 192.168.1.62.
Теперь выбор маски. Тут все просто. Отнимаем от целой сети нужный кусок и полученное число записываем в октет маски. То есть 256 — 64 = 192 => маска 255.255.255.192 или /26.
Дальше идет подсеть поменьше. Состоит она из 32 адресов. Если первая заканчивалась на .63, то эта будет начинаться с .64:
Адрес подсети — 192.168.1.64.
Широковещательный адрес — 192.168.1.95.
Пул адресов для назначения хостам будет от 192.168.1.65 до 192.168.1.94.
Маска: 256 — 32 = 224 => 255.255.255.224 или /27.
3-я подсеть, которая предназначена для филиала, начнет старт с .96:
Адрес подсети — 192.168.1.96.
Широковещательный адрес — 192.168.1.111.
Пул адресов для назначения хостам будет от 192.168.1.97 до 192.168.1.110.
Маска: 256 — 16 = 240 => 255.255.255.240 или /28.
Ну и для последней подсети, которая уйдет под интерфейсы, соединяющие роутеры, будет начинаться с .112:
Адрес подсети — 192.168.1.112.
Широковещательный адрес — 192.168.1.115.
Разрешенными адресами будут 192.168.1.113 и 192.168.1.114.
Маска: 256 — 4 = 252 => 255.255.255.252 или /30.
Замечу, что адрес 192.168.1.115 является последним используемым адресом. Начиная с 192.168.1.116 и до .255 свободны.
Вот таким образом, при помощи VLSM или масок переменной длины, мы экономно создали 4 подсети с нужным количеством адресов в каждой. Думаю это стоит закрепить задачкой для самостоятельного решения.
Разделите сеть 192.168.1.0/24 на 3 разные подсети. Найдите и запишите в каждой подсети ее адреса, широковещательный адрес, пул разрешенных к выдаче адресов и маску. Указываю требуемые размеры подсетей:
1) Подсеть на 120 адресов.
2) Подсеть на 12 адресов.
3) Подсеть на 5 адресов.
1) Адрес подсети — 192.168.1.0.
Широковещательный адрес — 192.168.1.127.
Пул адресов для назначения хостам будет от 192.168.1.1 до 192.168.1.126.
Маска: 256 — 128 = 128 => 255.255.255.128 или /25.
2) Адрес подсети — 192.168.1.128.
Широковещательный адрес — 192.168.1.143.
Пул адресов для назначения хостам будет от 192.168.1.129 до 192.168.1.142.
Маска: 256 — 16 = 240 => 255.255.255.240 или /28.
3) Адрес подсети — 192.168.1.144.
Широковещательный адрес — 192.168.1.151.
Пул адресов для назначения хостам будет от 192.168.1.145 до 192.168.1.150.
Маска: 256 — 8 = 248 => 255.255.255.248 или /29.
Теперь, когда вы знаете, как делить сети на подсети, самое время научиться собирать подсети в одну общую подсеть. Иначе это называется суммированием или summarization. Суммирование чаще всего используется в маршрутизации. Когда у вас в таблице маршрутизатора несколько соседних подсетей, маршрутизация которых проходит через один и тот же интерфейс или адрес. Скорее всего этот процесс лучше объяснять при разборе маршрутизации, но учитывая то, что тема маршрутизации и так большая, то я объясню процесс суммирования в этой статье. Тем более, что суммирование это сплошная математика, а в этой статье мы ею и занимаемся. Ну что же, приступлю.
Представим, что у меня компания состоящая из главного здания и корпусов. Я работаю в главном здании, а в корпусах коллеги. Хоть у меня и главное здание, но в нем всего 4 подсети:
— 192.168.0.0/24
— 192.168.1.0/24
— 192.168.2.0/24
— 192.168.3.0/24
Тут коллеги с соседнего здания очухались и поняли, что у них слетела конфигурация на маршрутизаторе, а бекапов нет. Наизусть они не помнят, какие в главном здании подсети, но помнят, что они находятся рядом друг с другом, и просят прислать одну суммированную. Теперь у меня возникает задача, как их суммировать. Для начала я переведу все подсети в двоичный вид.
Посмотрите внимательно на таблицу. Как видите, у 4 подсетей первые 22 бита одинаковые. Соответственно, если я возьму 192.168.0.0 с маской /22 или 255.255.252.0, то покрою свои 4 подсети. Но обратите внимание на 5 подсеть, которую я специально ввел. Это подсеть 192.168.4.0. 22-ой бит у нее отличается от предыдущих 4-х, а значит выше выбранное не покроет эту подсеть.
Ок. Теперь я отправлю коллегам суммированную подсеть, и, если они все правильно пропишут, то маршрутизация до моих подсетей будет работать без проблем.
Возьмем тот же пример и немного изменим условия. Нас попросили прислать суммарный маршрут для подсетей 192.168.0.0 и 192.168.1.0. Я не поленюсь и создам еще одну таблицу.
Обратите внимание, что у 2 первых подсетей одинаковые не 22 бита, а 23 бита. Это значит, что их можно просуммировать еще компактнее. В принципе работать будет и так, и так. Но как говорилось в одной рекламе: «Если нет разницы — зачем платить больше?». Поэтому старайтесь суммировать, не задевая при этом соседние подсети.
Таким образом, переводя подсети в двоичный формат и находя одинаковые биты, можно их суммировать.
Вообще суммирование полезно применять, когда надо объединить несколько подсетей, расположенных вблизи друг с другом. Это позволит сэкономить ресурсы маршрутизаторов. Однако это не всегда возможно. Просуммировать, например, подсеть 192.168.1.0 и 192.168.15.0, не захватив при этом соседние подсети, невозможно. Поэтому перед суммированием стоит подумать над ее целесообразностью. Поэтому повторюсь еще раз, что начинать какую-либо революцию надо на бумажке. Ну и для закрепления материала оставлю небольшую задачу.
1) 10.3.128.0
2) 10.3.129.0
3) 10.3.130.0
4) 10.3.131.0
Просуммируйте подсети и найдите маску, которая сможет покрыть их, не задевая при этом соседние подсети.
Исходя из этого, ответом будет 10.3.128.0/22 (255.255.252.0)
Что такое пул адресов
За исключением циклического метода round-robin , адресный пул должен быть описан как сетевой блок CIDR (Classless Inter-Domain Routing). Циклический round-robin метод допускает использование множества отдельных адресов, определенных при помощи списка или таблицы.
Параметр sticky-address может быть использован с пулами типа random и round-robin для обеспечения того условия, что адрес источника всегда будет соотнесен тому же адресу перенаправления.
Пул адресов NAT
В этом примере пул из двух адресов используется для преобразования исходящих пакетов. Для каждого исходящего соединения PF будет циклически выбирать адрес способом round-robin. Одним из недостатков этого метода является то, что соединения с одного внутреннего адреса не могут быть всегда преобразованы в тот же конечный адрес. Это может препятствовать, например, просмотру сайтов, которые отслеживают доступ пользователей, основываясь на его IP-адрес. Альтернативный способ — использовать метод source-hash . Тогда каждый внутренний адрес всегда будет преобразован в один и тот же конечный адрес. Для этого адресный пул должен быть описан при помощи сетевого блока CIDR. Это правило использует пул адресов 192.0.2.4/31 (192.0.2.4 — 192.0.2.5) для преобразования адреса исходящих пакетов. Каждый внутренний адрес будет всегда преобразован в один и тот же адрес благодаря ключевому слову source-hash .
Балансировка нагрузки входящих соединений
Балансировка нагрузки исходящих соединений
Еще одна дополнительная порция информации, необходимая для этого — это IP-адрес соседнего рутера на каждом Internet соединении. Она необходима опции route-to для управления полем «приемник» (destination) исходящих пакетов.
Приведенный пример демонстрирует возможность балансировки исходящего трафика через два Internet соединения: Параметр route-to применяется к входящему трафику на внутреннем интерфейсе, чтобы указать исходящий (outgoing) сетевой шлюз (gateway), трафик которого будет балансироваться. Заметьте, что опция route-to может присутствовать в каждом правиле фильтра, которое предназначено для балансировки трафика (она не может быть использованая с правилом match ).
Чтобы быть уверенным, что source address пакеты, принадлежащие $ext_if1 , всегда перенаправляются на $ext_gw1 (и аналогично для $ext_if2 и $ext_gw2 ), в правила необходимо добавить следующие две строки: И наконец, NAT может быть использован на каждом исходящем интерфейсе: