При работе с BGP-сетями вам может потребоваться назначить приватный IP-адрес для сервера вручную.
В зависимости от ОС, установленной на сервере, это можно сделать по одной из инструкций ниже.
В примерах мы будем настраивать IP 192.168.0.12/24
. Замените его на нужный вам адрес.
ip a
Следующий вывод говорит о том, что на интерфейс ens8
не назначен приватный IP (отсутствует поле inet
с приватным адресом):
3: ens8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 54:52:00:43:ee:26 brd ff:ff:ff:ff:ff:ff
altname enp0s8
inet6 fe80::6f23:a5e7:7cb1:d9d9/64 scope link noprefixroute
valid_lft forever preferred_lft forever
Сначала узнайте имя соединения:
nmcli connection show
Найдите имя, которое указано для ens8
. В нашем случае это — Wired connection 1
.
Добавьте приватный IP к соединению:
nmcli connection modify 'Wired connection 1' ipv4.addresses 192.168.0.12/24
Где:
192.168.0.12
— это необходимый приватный IP.nmcli connection show 'Wired connection 1' | grep addresses
Проверьте директорию /etc/sysconfig/network-scripts/
, выполнив команду:
ls /etc/sysconfig/network-scripts/
Если в директории есть файл ifcfg-ens8
, переместите его в другую директорию, чтобы отключить старые настройки:
mv /etc/sysconfig/network-scripts/ifcfg-ens8 /root/ifcfg-ens8-Backup-$(date +"%Y%m%d")
Чтобы изменения сохранились после перезагрузки сервера, добавьте строку network: {config: disabled}
в файл /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
:
echo 'network: {config: disabled}' >> /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg
После перезагрузки сервера адрес может не успеть добавиться, когда другие службы захотят его прослушивать. Поэтому разрешаем bind
на адреса, которых нет на интерфейсе.
Откройте файл /etc/sysctl.conf
:
vi /etc/sysctl.conf
Допишите в него следующие строки:
net.ipv4.ip_nonlocal_bind = 1
net.ipv6.ip_nonlocal_bind = 1
Перезагрузите конфигурацию:
sysctl -p /etc/sysctl.conf
systemctl restart NetworkManager.service
ip a
Если приватный IP-адрес успешно добавлен, вы увидите строку с вашим IP, например:
3: ens8: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 54:52:00:43:ee:26 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.12/24 scope global ens8
valid_lft forever preferred_lft forever
Выполните команду:
ip a
Следующий вывод говорит о том, что на интерфейс eth1
не назначен приватный IP (отсутствует поле inet
с приватным адресом):
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 54:52:00:f2:d0:09 brd ff:ff:ff:ff:ff:ff
altname enp0s8
altname ens8
inet6 fe80::5652:ff:fef2:d009/64 scope link
valid_lft forever preferred_lft forever
Откройте файл конфигурации интерфейсов:
nano /etc/network/interfaces
Добавьте следующие строки:
auto eth1
allow-hotplug eth1
iface eth1 inet static
address 192.168.0.12/24
Где:
eth1
— имя интерфейса, полученное при выполнении ip a
.
192.168.0.12
— приватный IP, который добавляем к интерфейсу.
После перезагрузки сервера адрес может не успеть добавиться, когда другие службы захотят его прослушивать. Поэтому разрешаем bind
на адреса, которых нет на интерфейсе.
Откройте файл /etc/sysctl.conf
:
nano /etc/sysctl.conf
Добавьте следующие строки:
net.ipv4.ip_nonlocal_bind = 1
net.ipv6.ip_nonlocal_bind = 1
Перезагрузите конфигурацию:
sysctl -p /etc/sysctl.conf
Для применения изменений перезапустите сетевую службу:
systemctl restart networking.service
ip a
Если приватный IP-адрес успешно добавлен, вы увидите строку с вашим IP, например:
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 54:52:00:c3:bb:ae brd ff:ff:ff:ff:ff:ff
altname enp0s8
altname ens8
inet 192.168.0.12/24 brd 192.168.0.255 scope global eth1
valid_lft forever preferred_lft forever
inet6 fe80::5652:ff:fec3:bbae/64 scope link
valid_lft forever preferred_lft forever
ip a
Следующий вывод говорит о том, что на интерфейс eth1
не назначен никакой приватный IP (отсутствует поле inet
с приватным адресом):
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 54:52:00:f2:d0:09 brd ff:ff:ff:ff:ff:ff
altname enp0s8
altname ens8
inet6 fe80::5652:ff:fef2:d009/64 scope link
valid_lft forever preferred_lft forever
Откройте или создайте файл конфигурации Netplan:
nano /etc/netplan/99-ipv4.yaml
Добавьте следующую конфигурацию:
network:
version: 2
renderer: networkd
ethernets:
eth1:
dhcp4: false
addresses:
- "192.168.0.12/24"
Где:
eth1
— имя интерфейса, полученное при выполнении ip a
.
192.168.0.12
— приватный IP, который добавляем к интерфейсу.
Закройте права на чтение этого файла всем, кроме root
:
chmod 600 /etc/netplan/99-ipv4.yaml
После внесения изменений в файл, примените конфигурацию Netplan:
netplan apply
После перезагрузки сервера адрес может не успеть добавиться, когда другие службы захотят его прослушивать. Поэтому разрешаем bind
на адреса, которых нет на интерфейсе.
Откройте файл /etc/sysctl.conf
:
nano /etc/sysctl.conf
Допишите в него эти строки:
net.ipv4.ip_nonlocal_bind = 1
net.ipv6.ip_nonlocal_bind = 1
Перезагрузите конфигурацию sysctl
:
sysctl -p /etc/sysctl.conf
Для применения изменений перезапустите сетевую службу:
systemctl restart networking.service
ip a
Если приватный IP-адрес успешно добавлен, вы увидите строку с вашим IP, например:
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
link/ether 54:52:00:c3:bb:ae brd ff:ff:ff:ff:ff:ff
altname enp0s8
altname ens8
inet 192.168.0.12/24 brd 192.168.0.255 scope global eth1
valid_lft forever preferred_lft forever
inet6 fe80::5652:ff:fec3:bbae/64 scope link
valid_lft forever preferred_lft forever