Static / Dynamic IP config (DHCP)

Конфигурация IP-адресов очень важна, но в чем разница между статической и динамической адресацией, и как работает DHCP?

Настройка IP-адреса (DHCP) - одна из самых важных, хотя и простых, настроек сетевых устройств. Рабочие станции, серверы, маршрутизаторы и другие компоненты должны иметь правильно назначенные параметры IP-адреса для участия в работе сети. В этой заметки рассматриваются статические и динамические настройки IP-адресов и конфигурация сервера DHCP. Дается определение сетевых идентификаторов, противопоставляются статические и динамические конфигурации, а также рассматриваются команды, необходимые для управления настройками. Рассматривается развертывание сервера DHCP, настройка области действия DHCP и управление динамическими IP-адресами на стороне клиента.

Сетевые узлы имеют три идентификатора: Имя хоста, логический адрес и физический адрес. Эти три адреса обеспечивают различные типы подключения и используются различными способами во время сетевого взаимодействия.

Три идентификатора:

  • Имя хоста - описываемые, легко запоминающиеся имена.
  • IP-адрес - логический адрес для однозначной идентификации сетевого узла, в основном используется маршрутизаторами.
  • MAC-адрес - физический адрес, закодированный на сетевой интерфейсной карте (NIC), используется в основном коммутаторами.

Имена хостов настраиваются при установке ОС, а MAC-адреса жестко закодированы на сетевых картах. Сисадмины обычно настраивают информацию об IP-адресах на серверах, рабочих станциях, портативных системах и сетевых устройствах. Я расскажу о двух основных способах предоставления узлам информации об IP-адресах: Статические и динамические конфигурации.

Статические и динамические конфигурации:

  • Статические - конфигурируются вручную системными администраторами.
  • Динамические - автоматически арендуются клиентами с сервера Dynamic Host Configuration Protocol (DHCP).

Стандартными настройками являются IP-адреса, маски подсети, шлюзы по умолчанию и серверы имен.

Статическая конфигурация. NetworkManager в основном работает с конфигурацией сети. NetworkManager можно использовать в среде GUI, TUI или CLI. Процесс nmcli для установки статической IP-конфигурации заключается в создании профиля подключения и последующей установке нужных значений. Red Hat предлагает документацию для ознакомления здесь.

Вот пример создания сетевого подключения с именем home-network с IP-адресом 192.168.2.200/24, шлюзом по умолчанию 192.168.2.1 и сервером имен 8.8.8.8:

# nmcli connection add con-name home-network ifname enp7s0 type ethernet

# nmcli connection modify home-network ipv4.gateway 192.168.2.1

# nmcli connection modify home-network ipv4.addresses 192.168.2.200/24

# nmcli connection modify home-network ipv4.dns 8.8.8.8

# nmcli connection up home-network

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

Зачем нужны статические конфигурации?

Статические IP-адреса не меняются, если только администратор активно не перенастраивает их. Это важный факт, когда речь идет о серверах, поскольку большинство клиентских компьютеров должны иметь возможность постоянно находить разные серверы в сети.

Например, файловый сервер NFS, содержащий каталоги отделов, должен сохранять один и тот же IP-адрес в течение долгого времени, поскольку файлы конфигурации, такие как файл /etc/fstab клиентского компьютера, могут использовать IP-адрес для подключения.

Другие сетевые узлы также могут нуждаться в неизменном сетевом идентификаторе. Устройства, такие как брандмауэры или прокси-серверы, серверы печати, серверы разрешения имен, веб-серверы и практически все другие устройства инфраструктуры нуждаются в неизменной идентификации. Сисадмины почти всегда настраивают эти системы со статическим IP-адресом.

Отслеживание IP-адресов.

Очень важно отслеживать статически назначенные IP-адреса. В зависимости от размера вашей среды, это может быть простой текстовый документ или электронная таблица, вплоть до специализированного программного обеспечения, интегрированного со службами каталогов и DHCP. Лучше всего отслеживать IP-адрес (и маску подсети), MAC-адрес (не обязательно), имя хоста, роль в сети (обосновывает, почему устройства имеют статический IP) и любые дополнительные заметки.

Динамические конфигурации.

Устройства, которым требуется статическая конфигурация IP, составляют относительно небольшой процент вашей сети. Большинство сетевых устройств - это системы конечных пользователей, такие как рабочие станции, ноутбуки, телефоны, планшеты и другие временные устройства. Кроме того, эти системы обычно не содержат сетевых служб, которые должны быть обнаружены другими компьютерами.

Конфигурации IP-адресов неумолимы, когда речь идет о дубликатах и опечатках. Кроме того, статические настройки IP-адресов занимают довольно много времени. Наконец, настройки IP-адресов, как правило, временные, особенно с появлением портативных устройств, таких как ноутбуки, телефоны и планшеты. Чтобы сэкономить время и уменьшить вероятность ошибки, для таких узлов предпочтительнее динамическое распределение IP-адресов. Системы Linux настраиваются как клиенты DHCP с помощью NetworkManager.

Вот пример добавления профиля сетевого подключения, настроенного на аренду IP-адреса от DHCP:

# nmcli connection add con-name home-network ifname enp7s0 type ethernet

Не указывая адрес в ручную, NetworkManager берет на себя роль клиента DHCP.

Команда dhclient также используется для управления динамическими конфигурациями IP-адресов. Однако в RHEL 8 сетевые конфигурации, включая DHCP, обрабатываются NetworkManager. Более старые версии RHEL полагаются на dhclient, как и некоторые другие дистрибутивы.

# dhclient

Команда ip route отображает информацию об аренде адресов.

Параметры IP-адреса имеют решающее значение для сетевых коммуникаций. Такие параметры, как IP-адрес, маска подсети, шлюз по умолчанию и серверы имен, могут управляться вручную, но системные администраторы должны быть очень внимательны, чтобы не допустить ошибок. Статические настройки не меняются, пока администратор не изменит их конфигурацию, поэтому они необходимы для серверов, чьи службы предоставляются по всей сети.

Динамические IP-конфигурации гораздо удобнее для систем, которые не содержат сетевых служб, например, для устройств конечных пользователей. Кроме того, многие из этих устройств регулярно входят и выходят из сети, и было бы очень трудоемко устанавливать значения IP каждый раз вручную. Вместо этого используется DHCP-сервер, на котором хранится пул доступных адресов, которые клиентские системы могут арендовать. Как правило, серверы и сетевые устройства используют статические, неизменные IP-адреса, в то время как клиентские устройства полагаются на динамически распределяемые IP-конфигурации.


Понимание разницы между статическими и динамическими IP-адресами является простым, но важным для администраторов.