Обновить сетевые настройки на устройствах в подсети
Если вы изменили сетевые настройки (DNS-серверы, шлюз по умолчанию, статические маршруты) приватной подсети, в которой есть устройства, для применения настроек нужно обновить сетевые настройки на всех устройствах в подсети.
Обновить сетевые настройки на облачном сервере
Если сначала вы изменили сетевые настройки приватной подсети (DNS-серверы, шлюз по умолчанию, статические маршруты), а затем создали в ней облачные серверы, все настройки на серверах пропишутся автоматически.
Если сначала вы создали облачные серверы, а затем изменили сетевые настройки подсети, для применения настроек:
- Проверьте DHCP в приватной подсети.
- Примените новые сетевые настройки на облачном сервере.
- Измените файлы конфигурации сети облачного сервера.
1. Проверить DHCP в приватной подсети
- В панели управления в верхнем меню нажмите Продукты и выберите Облачные серверы.
- Перейдите в раздел Сеть → вкладка Приватные сети.
- Откройте страницу сети → вкладка Подсети.
- В карточке подсети откройте блок Автоматические сетевые настройки.
- Проверьте, включен или выключен тумблер DHCP-сервер.
2. Применить новые сетевые настройки на облачном сервере
Если DHCP включен
Примените новые сетевые настройки в зависимости от DHCP-клиента:
-
перезапросите информацию от DHCP-сервера на облачном сервере — новые сетевые настройки добавятся, при этом старые не удалятся:
dhclient <interface_name>
Укажите
<interface_name>
— имя интерфейса, напримерeth0
; -
или выключите, затем включите порт и перезапросите информацию у DHCP-сервера на облачном сервере — новые сетевые настройки добавятся, при этом старые удалятся:
INTERFACE=<interface_name>; ip link set $INTERFACE down && ip link set $INTERFACE up && dhclient $INTERFACE
Укажите
<interface_name>
— имя интерфейса, напримерeth0
.
Если DHCP выключен
Если в приватной подсети выключен DHCP, алгоритм применения новых сетевых настроек зависит от наличия агента cloud-init или cloudbase-init в образах, из которых создан облачный сервер. Агенты предустановлены во всех готовых образах облачной платформы. Агенты должны быть установлены, если вы самостоятельно загружали в хранилище образов Selectel образ по инструкции Подготовить ISO-образ для работы с облачной платформой.
Cloud-init установлен
Cloud-init не установлен
- В панели управления в верхнем меню нажмите Продукты и выберите Облачные серверы.
- Откройте страницу облачного сервера → вкладка Порты.
- Если в блоке Настройка портов указан параметр При перезагрузке сервера, выполните программную перезагрузку сервера.
- Если в блоке Настройка портов указан параметр Вручную в файле конфиг урации сети, измените файл конфигурации сети облачного сервера.
Измените файл конфигурации сети облачного сервера.
3. Изменить файл конфигурации сети облачного сервера
Изменить файл конфигурации сети облачного сервера нужно, если в приватной подсети выключен DHCP и при этом:
- облачный сервер создан из образа без агента cloud-init или cloudbase-init;
- облачный сервер создан из образа с агентом cloud-init или cloudbase-init, но в блоке Настройка портов указан параметр Вручную в файле конфигурации сети.
Если в дальнейшем вы включите DHCP в приватной подсети, то указанные в файле сетевые настройки перестанут работать — DHCP применяет ко всем серверам собственные настройки.
Это инструкция с примерами изменения сетевых настроек в файле конфигурации сети: DNS-серверов, шлюза по умолчанию, статических маршрутов. Конфигурационные файлы и сетевые настройки могут отличаться в зависимости от дистрибутива.
Linux
Windows
Настройка зависит от утилиты, которая установлена на облачном сервере: ifupdown или netplan. В облачных серверах, созданных из готовых образов с операционной системой Ubuntu 18.04, 20.04 и 22.04, по умолчанию для настройки сети используется утилита ifupdown. Вы можете переключите конфигурирование сети с ifupdown на netplan.
ifupdown
netplan
-
Откройте CLI.
-
Если облачный сервер создан из образа с cloud-init, настройки сети будут синхронизироваться с его помощью и после перезагрузки сервера будут указываться прежние сетевые настройки. Чтобы отключить синхронизацию, отключите конфигурирование сети:
echo "network: {config: disabled}" >> /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
-
Откройте файл конфигурации сети:
nano /etc/network/interfaces.d/50-cloud-init.cfg
-
Измените сетевые настройки:
auto lo
iface lo inet loopback
dns-nameservers <dns_server_1> <dns_server_2>
auto <interface_name>
iface <interface_name> inet static
address <ip_address>
mtu 1500
post-up route add default gw <gateway> || true
pre-down route del default gw <gateway> || true
up route add -net <destination_subnet_ip_address> netmask <destination_subnet_netmask> gw <next_hop_ip_address>Укажите:
<dns_server_1>
,<dns_server_2>
— DNS-серверы приватной подсети;<interface_name>
— имя сетевого интерфейса;<ip_address>
— IP-адрес облачного сервера с маской приватной подсети, в которой он находится. Например,192.168.0.5/29
;<gateway>
— шлюз по умолчанию приватной подсети;<destination_subnet_ip_address>
— для статических маршрутов: IP-адрес подсети назначения, в которую будет направляться трафик, например172.16.0.8
;<destination_subnet_netmask>
— для статических маршрутов: маска подсети назначения, например,29
;<next_hop_ip_address>
— для статических маршрутов: шлюз (next-hop) — IP-адрес, через который устройства исходной подсети будут направлять трафик в подсеть назначения. Можно ввести любой адрес из исходной подсети.
-
Откройте CLI.
-
Откройте файл конфигурации сети:
nano /etc/netplan/config.yaml
-
Измените сетевые настройки:
network:
version: 2
renderer: networkd
ethernets:
<interface_name>:
addresses:
- <ip_address>
nameservers:
addresses: [<dns_server_1>, <dns_server_2>]
routes:
- to: default
via: <gateway>
- to: <destination_subnet>
via: <next_hop_ip_address>Укажите:
<interface_name>
— имя сетевого интерфейса;<ip_address>
— IP-адрес облачного сервера с маской приватной подсети, в которой он находится. Например,192.168.0.5/29
;<dns_server_1>
,<dns_server_2>
— DNS-серверы приватной подсети;<gateway>
— шлюз по умолчанию приватной подсети;<destination_subnet>
— для статических маршрутов: CIDR подсети назначения, в которую будет направляться трафик, например172.16.0.8/29
;<next_hop_ip_address>
— для статических маршрутов: шлюз (next-hop) — IP-адрес, через который устройства исходной подсети будут направлять трафик в подсеть назначения. Можно ввести любой адрес из исходной подсети.
-
Проверьте синтаксис файла:
sudo netplan try
-
Примените настройки:
sudo netplan apply
-
Настройте статический маршрут:
route -p ADD <destination_subnet_ip_address> \
MASK <destination_subnet_netmask> <next_hop_ip_address> \
METRIC <priority>Укажите:
<destination_subnet_ip_address>
— IP-адрес подсети назначения, в которую будет направляться трафик, например172.16.0.8
;<destination_subnet_netmask>
— маска подсети назначения, например,29
;<next_hop_ip_address>
— шлюз (next-hop) — IP-адрес, через который устройства исходной подсети будут направлять трафик в подсеть назначения. Можно ввести любой адрес из исходной подсети;<priority>
— целое число, определяющее приоритет указанного шлюза. Например,1
— наивысший приоритет.
Обновить сетевые настройки на кластере Managed Kubernetes
Если сначала вы изменили сетевые настройки приватной подсети (DNS-серверы, шлюз по умолчанию, статические маршруты), а затем создали в ней ноды кластера Managed Kubernetes, все настройки на нодах кластера пропишутся автоматически.
Если сначала вы создали ноды кластера Managed Kubernetes, а затем изменили сетевые настройки подсети, для применения настроек последовательно переустановите ноды.
Обновить сетевые настройки на кластере облачных баз данных
Если сначала вы изменили сетевые настройки приватной подсети (DNS-серверы, шлюз по умолчанию, статические маршруты), а затем создали в ней кластер облачных баз данных, все настройки на кластере пропишутся автоматически.
Если сначала вы создали кластер облачных баз данных, а затем изменили сетевые настройки подсети, для применения настроек:
- создайте тикет. Укажите:
- ID кластера облачных баз данных. Можно скопировать в панели управления: в верхнем меню нажмите Продукты → Облачные базы данных → в строке кластера нажмите ;
- ID проекта. Можно скопировать в панели управления: в верхнем меню нажмите Продукты → Облачные базы данных → откройте меню проектов (название текущего проекта) → в строке проекта нажмите ;