Добавление и удаление IP вручную
Надёжность, доступная каждому

Добавление и удаление IP вручную

IP-адрес подключён к серверу, однако при инициализации адреса в операционной системе виртуального сервера произошла ошибка. Пожалуйста, добавьте IP адрес вручную в сетевую конфигурацию сервера.

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

Добавление первого внешнего IP (Debian):

В качестве примера добавим IP 192.168.15.44.

Открываем на редактирование конфигурационный файл:

nano /etc/network/interfaces

Добавляем  в конец файла строки (блоки auto lo, для конфигурации лупбек-адреса и auto eth0, для конфигурации адреса приватной сети, следует оставить без изменений):

auto eth1
iface eth1 inet static
    address  192.168.15.44
    netmask 255.255.255.0
    gateway 192.168.15.125
address – добавляемый IP-адрес.
netmask – маска подсети, можно узнать в личном кабинете, нажав на IP.
gateway – шлюз, можно узнать в личном кабинете, нажав на IP.

Сохраняем файл, нажав комбинацию ctrl+x, далее Y и enter.

Общий вид файла будет примерно следующим:

auto lo                                                                         
iface lo inet loopback                                                         
                                                                               
auto eth0                                                                       
iface eth0 inet static                                                         
    address 10.7.159.164                                                       
    netmask 255.248.0.0                                                         
    broadcast 10.7.255.255 
    
auto eth1                                                                       
iface eth1 inet static                                                         
    address 192.168.15.44                                                     
    netmask 255.255.255.0                                                   
    gateway 192.168.15.125

Добавляем IP на интерфейс:

ip link set dev eth1 up
ip addr add 192.168.15.44/24 dev eth1
После IP адреса через символ "/" нужно указать префикс маски подсети (в данном примере 24). Таблица соответствия маскам подсети префиксов приведена в конце страницы.

Добавляем маршрут по умолчанию, указав шлюз:

ip route add default via 192.168.15.125 dev eth1

Добавление первого внешнего IP (CentOS):

В качестве примера добавим IP 192.168.15.45.

В дистрибутивах CentOS/openSUSE/Fedora текстовый редактор nano отсутствует. Вы можете его установить командой, приведённой ниже, или воспользоваться другим редактором:

#установка nano в CentOS:
yum install nano

#установка nano в openSUSE:
zypper install nano

#установка nano в Fedora:
dnf install nano

Создаём конфигурационный файл:

nano /etc/sysconfig/network-scripts/ifcfg-eth1

Внесите строки:

DEVICE=eth1
BOOTPROTO=static
TYPE=Ethernet
NM_CONTROLLED=yes
ONBOOT=yes
IPADDR=192.168.15.45
GATEWAY=192.168.15.125
NETMASK=255.255.255.0
address – добавляемый IP-адрес.
netmask – маска подсети, можно узнать в личном кабинете, нажав на IP.
gateway – шлюз, можно узнать в личном кабинете, нажав на IP.

Сохраняем файл, нажав комбинацию ctrl+x, далее Y и enter.

Добавляем IP на интерфейс:

ip link set dev eth1 up
ip addr add 192.168.15.45/24 dev eth1
После IP адреса через символ "/" нужно указать префикс маски подсети (в данном примере 24). Таблица соответствия маскам подсети префиксов приведена в конце страницы.

Добавляем маршрут по умолчанию, указав шлюз:

ip route add default via 192.168.15.125 dev eth1

Добавление второго внешнего IP (Debian):

Открываем на редактирование конфигурационный файл:

nano /etc/network/interfaces

Необходимо добавить блок с алиасом интерфейса для дополнительного IP-адреса. В случае добавления второго адреса алиас именуется  eth1:0.

В качестве примера добавим второй IP 192.168.15.55:

Добавляем  в конец файла строки:

auto eth1:0
iface eth1:0 inet static
    address 192.168.15.55
    netmask 255.255.255.0

Сохраняем файл, нажав комбинацию ctrl+x, далее Y и enter.

Добавляем IP на интерфейс:

ip addr add 192.168.15.55/24 dev eth1
После IP адреса через символ "/" нужно указать префикс маски подсети (в данном примере 24). Таблица соответствия маскам подсети префиксов приведена в конце страницы.

Добавление второго внешнего IP ( CentOS):

Необходимо создать конфигурационный файл с алиасом интерфейса для дополнительного IP-адреса. В случае добавления второго адреса алиас именуется eth1:0.

В качестве примера добавим второй IP 192.168.15.58:

В дистрибутивах CentoOS/openSUSE/Fedora текстовый редактор nano отсутствует. Вы можете его установить командой, приведённой ниже, или воспользоваться другим редактором:

#установка nano в CentOS:
yum install nano

#установка nano в openSUSE:
zypper install nano

#установка nano в Fedora:
dnf install nano

Создаём конфигурационный файл:

nano /etc/sysconfig/network-scripts/ifcfg-eth1:0

Внесите строки:

DEVICE=eth1:0
BOOTPROTO=static
TYPE=Ethernet
NM_CONTROLLED=yes
ONBOOT=yes	
IPADDR=192.168.15.58
NETMASK=255.255.255.0

Сохраняем файл, нажав комбинацию ctrl+x, далее Y и enter.

Добавляем IP на интерфейс:

ip addr add 192.168.15.58/24 dev eth1
После IP адреса через символ "/" нужно указать префикс маски подсети (в данном примере 24). Таблица соответствия маскам подсети префиксов приведена в конце страницы.

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

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

Удаление первого внешнего IP (Debian):

Открываем на редактирование конфигурационный файл:

nano /etc/network/interfaces

В примере ниже удалим IP 192.168.15.55.

Необходимо удалить строки с интерфейсом указанного IP, блоки  lo (loopback) и eth0 (локальный интерфейс) оставляем без изменений. Общий вид файла будет примерно следующим:

auto lo                                                                         
iface lo inet loopback                                                          
                                                                                
auto eth0                                                                       
iface eth0 inet static                                                          
    address 10.7.159.164                                                        
    netmask 255.248.0.0                                                         
    broadcast 10.7.255.255

Сохраняем файл, нажав комбинацию ctrl+x, далее Y и enter.

Удаляем IP с интерфейса:

ip addr del 192.168.15.55/24 dev eth1
После IP адреса через символ "/" нужно указать префикс маски подсети (в данном примере 24). Таблица соответствия маскам подсети префиксов приведена в конце страницы.

Удаление первого внешнего IP (CentOS):

В примере ниже удалим IP 192.168.15.58.

Удаляем конфигурационный файл с внешним IP:

rm /etc/sysconfig/network-scripts/ifcfg-eth1

На вопрос отвечаем Y, далее enter.

Удаляем IP с интерфейса:

ip addr del 192.168.15.58/24 dev eth1
После IP адреса через символ "/" нужно указать префикс маски подсети (в данном примере 24). Таблица соответствия маскам подсети префиксов приведена в конце страницы.

Удаление второго внешнего IP (Debian):

В случае, если в выводе команды будет указан шлюз того IP, который необходимо удалить, и оба IP-адреса, принадлежащих серверу, находятся в разных подсетях (имеют разный шлюз), то после удаления IP необходимо назначить новый маршрут по умолчанию  (в противном случае пропускаете соответствующий шаг). В данном примере удаляется IP 194.177.20.125, шлюз которого используется в качестве маршрута по умолчанию. Вывод команды ip r | head -n 1 будет следующим:

default via 194.177.20.1 dev eth1

Видим, что шлюз удаляемого IP назначен в качестве маршрута по умолчанию, а адреса 194.177.20.125 и 185.22.63.14 в разных подсетях (имеют разный шлюз), поэтому в дальнейшем добавим новый маршрут.

Открываем на редактирование конфигурационный файл:

nano /etc/network/interfaces

Необходимо удалить блок с интерфейсом, который содержит IP, подлежащий удалению.

Например, для удаления IP 194.177.20.125 необходимо в файле удалить блок:

auto eth1
iface eth1 inet static
    address 194.177.20.125 
    netmask 255.255.252.0
    broadcast 194.177.23.255
    gateway 194.177.20.1

В этом же файле далее следует отредактировать блок, принадлежащий второму IP 185.22.63.14:

auto eth1:0
iface eth1:0 inet static
    address 185.22.63.14
    netmask 255.255.254.0
    broadcast 185.22.63.255

В блоке, указанном выше, необходимо переименовать интерфейс в eth1 и дописать шлюз (шлюз для IP можно узнать нажав на него в деталях сервера):

auto eth1
iface eth1 inet static
    address 185.22.63.14
    netmask 255.255.254.0
    broadcast 185.22.63.255
    gateway 185.22.62.1

Сохраняем файл, нажав комбинацию ctrl+x, далее Y и enter.

Удаляем  IP с интерфейса:

ip addr del 194.177.20.125/22 dev eth1
После IP адреса через символ "/" нужно указать префикс маски подсети (в данном примере 22). Таблица соответствия маскам подсети префиксов приведена в конце страницы.

Удаляемый и оставшийся адреса находятся в разных подсетях, поэтому заменяем старый маршрут новым, указав шлюз оставшегося IP:

ip route replace default via 185.22.62.1 dev eth1

Удаление второго внешнего IP (CentOS):

Перед удалением необходимо узнать маршрут по умолчанию:

ip r | head -n 1

В случае, если в выводе команды будет указан шлюз того IP, который необходимо удалить, и оба IP-адреса, принадлежащих серверу,  находятся в разных подсетях (имеют разный шлюз), то после удаления IP необходимо назначить новый маршрут по умолчанию  (в противном случае пропускаете соответствующий шаг). В данном примере удаляется IP 176.112.192.28, шлюз которого используется в качестве маршрута по умолчанию. Вывод команды ip r | head -n 1 будет следующим:

default via 176.112.192.1 dev eth1

Видим, что шлюз удаляемого IP назначен в качестве маршрута по умолчанию, а адреса 176.112.192.28 и 194.177.21.90 в разных подсетях (имеют разный шлюз),поэтому в дальнейшем добавим новый маршрут.

Ищем конфигурационный файл с данным IP (в команде ниже после grep необходимо указать IP, который необходимо удалить у виртуального сервера, остальной синтаксис команды оставьте без изменений):

find /etc/sysconfig/network-scripts/ -name ifcfg-eth* | xargs grep 176.112.192.28 | sed -r 's/.{,31}//'

Выводом команды будет строка, в которой видно имя файла (алиаса интерфейса), который следует удалить (в данном случае ifcfg-eth1):

ifcfg-eth1:IPADDR=176.112.192.28

Удаляем соответствующий конфигурационный файл с внешним IP:

rm /etc/sysconfig/network-scripts/ifcfg-eth1

Удаляем IP с интерфейса:

ip addr del 176.112.192.28/19 dev eth1
После IP адреса через символ "/" нужно указать префикс маски подсети (в данном примере 19). Таблица соответствия маскам подсети префиксов приведена в конце страницы.

Далее узнаём  имя интерфейса, который соответствует оставшемуся IP (как видно из скриншота это IP 194.177.21.90):

find /etc/sysconfig/network-scripts/ -name ifcfg-eth* | xargs grep 194.177.21.90| sed -r 's/.{,31}//'

Выводом команды будет строка, в которой видно имя файла (алиаса интерфейса), который остался на виртуальном сервере (в данном случае ifcfg-eth1:0):

ifcfg-eth1:0:IPADDR=194.177.21.90

Переименуем файл (он должен иметь имя ifcfg-eth1):

mv /etc/sysconfig/network-scripts/ifcfg-eth1:0 /etc/sysconfig/network-scripts/ifcfg-eth1

Добавим в него строку с шлюзом, соответствующему данному IP:

nano /etc/sysconfig/network-scripts/ifcfg-eth1

В дистрибутивах CentoOS/openSUSE/Fedora текстовый редактор nano отсутствует. Вы можете его установить командой, приведённой ниже, или воспользоваться другим редактором:

#установка nano в CentOS:
yum install nano

#установка nano в openSUSE:
zypper install nano

#установка nano в Fedora:
dnf install nano

Внесите строку:

GATEWAY=194.177.20.1

Сохраняем файл, нажав комбинацию ctrl+x, далее Y и enter.

Общий вид файла будет следующим:

DEVICE=eth1
BOOTPROTO=static
TYPE=Ethernet
NM_CONTROLLED=yes
ONBOOT=yes	
IPADDR=194.177.21.90
NETMASK=255.255.224.0
GATEWAY=194.177.20.1

Удаляемый и оставшийся адреса находятся в разных подсетях, поэтому заменяем старый маршрут новым:

ip route replace default via 194.177.20.1 dev eth1

Таблица сетевых масок, соответствие длинам префиксов.

Маска подсети				Префикс маски
255.255.0.0                                 /16
255.255.128.0                               /17
255.255.192.0                               /18
255.255.224.0                               /19
255.255.240.0                               /20
255.255.248.0                               /21
255.255.252.0                               /22
255.255.254.0                               /23
255.255.255.0                               /24