Hetzner - DokuWiki

Network configuration using systemd-networkd/ru


systemd-networkd это продвинутый сетевой менеджер.

Inhaltsverzeichnis

Обратите внимание

В systemd версии 238 появились схемы именования интерфейсов. Это означает, что при использовании предсказуемых имен сетевых интерфейсов сетевые интерфейсы могут иметь разные имена в зависимости от версии systemd.

К счастью, systemd-networkd может использовать для идентификации MAC-адреса вместо имен сетевых интерфейсов.

В нашем Installimage и при автоматической установке мы обычно стараемся не отступать от используемого по умолчанию в том или ином дистрибутиве метода настройки сети, но реализации типа ifupdown или network-scripts требуют явно указать имя интерфейса, а также мы используем systemd-networkd в системах CentOS и Debian для настройки предсказуемых имен сетевых интерфейсов.

Синтаксис файла конфигурации .network

Информация о файлах .network, используемых systemd-networkd, доступна здесь: https://www.freedesktop.org/software/systemd/man/systemd.network.html.

Основной IP-адрес

Выделенные серверы

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

Это означает, что при настройке c фактическим префиксом IPv4 сети, например /27, другие серверы в этой же сети не будут доступны.

Для доступа к серверам в той же сети потребуется настроить основной IPv4 адрес с префиксом /32. В этом случае шлюз будет вне диапазона IP-адресов сети и потребуется явно указать, как передавать трафик до шлюза.

IPv4

Ниже приведен пример настройки основного IP-адреса 1.2.3.4 и шлюза 4.3.2.1 на сетевой карте с MAC-адресом 12:34:56:78:9a:bc.

Основной IP-адрес настроен как /32 в секции [Address], где Peer=<Шлюз> сообщает системе, что шлюз доступен через тот же интерфейс, для которого производится настройка. Причины использования /32 описаны в разделе Выделенные серверы.

# Файл /etc/systemd/network/10-mainif.network
[Match]
MACAddress=12:34:56:78:9a:bc # MAC-адрес основной сетевой карты

[Network]
Gateway=4.3.2.1

[Address]
Address=1.2.3.4 # Основной IP-адрес. Можно указывать без суффикса /32
Peer=4.3.2.1/32 # Шлюз

IPv6

IPv6 можно настроить, указав IPv6-адрес в Address и шлюз в Gateway.

# Файл /etc/systemd/network/10-mainif.network
[Match]
MACAddress=12:34:56:78:9a:bc # MAC-адрес основной сетевой карты

[Network]
Address=1:2:3:4::5/64
Gateway=fe80::1

IPv4 и IPv6

Настройка параллельного использования IPv4 и IPv6 стеков, по сути, является объединением настроек IPv4 и IPv6, описанных выше.

Причины использования /32 описаны в разделе Выделенные серверы.

# Файл /etc/systemd/network/10-mainif.network
[Match]
MACAddress=12:34:56:78:9a:bc # MAC-адрес основной сетевой карты

[Network]
Address=1:2:3:4::5/64
Gateway=4.3.2.1
Gateway=fe80::1

[Address]
Address=1.2.3.4 # Основной IP-адрес. Можно указывать без суффикса /32
Peer=4.3.2.1/32 # Шлюз

Серверы CX

IPv4

Для того чтобы использовать будущие возможности виртуальных серверов без изменения сетевых настроек следует использовать DHCP для IPv4.

# Файл /etc/systemd/network/10-mainif.network
[Match]
MACAddress=12:34:56:78:9a:bc # MAC-адрес основной сетевой карты

[Network]
DHCP=ipv4

IPv6

IPv6 настраивается так же как и для выделенных серверов. Достаточно указать адрес в Address и шлюз в Gateway.

# Файл /etc/systemd/network/10-mainif.network
[Match]
MACAddress=12:34:56:78:9a:bc # MAC-адрес основной сетевой карты

[Network]
Address=1:2:3:4::5/64
Gateway=fe80::1

IPv4 and IPv6

IPv4 и IPv6 можно настроить путем объединения DHCP для IPv4 и статической конфигурации IPv6.

# Файл /etc/systemd/network/10-mainif.network
[Match]
MACAddress=12:34:56:78:9a:bc # MAC-адрес основной сетевой карты

[Network]
DHCP=ipv4
Address=1:2:3:4::5/64
Gateway=fe80::1

CX c NAT

При использовании DHCP на серверах CX использующих сеть NAT специальные настройки не требуются.

Дополнительные IP / подсети

Дополнительные IP / подсети можно настроить добавив ключевое слово Address= в файл .network в секции [Network].

# Файл /etc/systemd/network/10-mainif.network
[Match]
MACAddress=12:34:56:78:9a:bc # MAC-адрес основной сетевой карты

[Network]
Address=1:2:3:4::5/64
Gateway=4.3.2.1
Gateway=fe80::1
Address=5.6.7.8 # Дополнительных одиночный IPv4
Address=9.10.11.12/29 # Дополнительная подсеть /29
Address=6:7:8:9::10/64 # Дополнительный IPv6

[Address]
Address=1.2.3.4 # Основной IP-адрес. Можно указывать без суффикса /32
Peer=4.3.2.1/32 # Шлюз


© 2019. Hetzner Online GmbH. Alle Rechte vorbehalten.