Конфигурация сети
Конфигурационные файлы
Во время первичной установки сеть настраивается автоматически с помощью файла /etc/network/interfaces
.
Если интерфейсов много, можно разнести их конфигурацию по разным файлам в /etc/network/interfaces.d/
Строка, начинаяющая с auto
, определяет список интерфейсов, которые должны быть включены автоматически при загрузке сетевого сервиса.
- Больше информации о синтаксисе конфигурационного файла можно получить в
man interfaces
(5) из пакетаifupdown
- Подробнее о работе с директориями, оканчивающимися на
.d
, можно узнать в разделе apt/Конфигурационные опции.
IP-сеть, связаная с картой Ethernet, может быть настроена автоматически или статически.
Автоматическая конфигурация сети с помощью DHCP
Для этого требуется сервер DHCP в локальной сети. Конфигурация может содержать желаемое имя хоста в настройке hostname:
auto enp0s31f6
iface enp0s31f6 inet dhcp
hostname someserver
Сервер DHCP возвращает настройки для нужной сети.
По умолчанию ядро назначает сетевым интерфейсам имена типа:
eth0
для проводных Ethernet-подключений,wlan0
для Wi-Fi.
Числа в таких именах отражают порядок обнаружения интерфейсов. На современном оборудовании этот порядок может меняться при каждой перезагрузке, что делает имена ненадёжными.
Инструменты systemd и udev умеют переименовывать интерфейсы сразу после их появления.
Политика именования по умолчанию задана в /lib/systemd/network/99-default.link
Описание записей NamePolicy в этом файле можно найти в man systemd.link
(5).
Обычно имена имеют в основании порядковый номер подключения устройств.
Некоторые имена начанаются с en
для проводных подключений и с wl
для Wi-Fi.
Остальная часть имени в примере выше указывает:
- шину PCI (p)
- номер шины (0)
- номер слота (s31)
- номер функции (f6).
Таким образом, имя становится предсказуемым.
Можно переопределить или дополнить эту политику, чтобы задать собственные имена каким-то конкретным интерфейсам.
Найти имена сетевых интерфейсов можно в выводе команды ip addr
или в именах файлов в /sys/class/net/
.
Можно деактивировать описанное именование сетевых устройств:
- изменить правила udev
- загрузить систему с параметрами ядра net.ifnames=0 and biosdevname=0.
Во втором случае будут восстановлены параметры ядра по умолчанию.
Статическая конфигурация сети
Статическая конфигурация обязательно содержит IP-адрес и маску подсети, опционально — адрес сети и широковещательный адрес.
Роутер, подключённый к внешней сети, указывается в качестве шлюза.
auto enp0s31f6
iface enp0s31f6 inet static
address 192.168.0.3/24
broadcast 192.168.0.255
network 192.168.0.0
gateway 192.168.0.1
Можно настроить несколько интерфейсов на одной сетевой карте и несколько IP-адресов на одном интерфейсе. Чтобы назначить несколько IP-адресов на одном интерфейсе, нужно создать несколько вхождений iface для одного и того же устройства.
IP-адрес может соответствовать произвольному количеству имён в DNS, а имя может соответствовать произвольному количеству IP-адресов.