В первую очередь надо разобраться, задействовал ли Network Manager в управлении.
Оценка ситуации
Ещё с дремучих времён все мы приучены привычно набирать ifconfig
, чтобы узнать о состоянии интерфейсов. Однако, для CentOS/RHEL 7, это не подходит, необходимо использовать новомодный инструмент ip
, например:
# ip a | grep 'inet' inet 127.0.0.1/8 scope host lo inet 10.4.0.10/24 brd 10.4.2.255 scope global dynamic eth0 inet 62.148.144.166/24 brd 172.28.128.255 scope global dynamic eth1
Синтаксис намекает нам на то, что мы имеем дело с каким-то роутером или свитчем, можно использовать grep с параметрами inet и inet6 для IPv4 и IPv6.
$ ip a | grep 'inet6 ' inet6 ::1/128 scope host inet6 08:62:66:9d:8a:9f/64 scope link inet6 08:62:66:9d:8a:9b/64 scope link
Если Вам не нравится ip
, можно установить через yum старый ifconfig
, но он потащит за собой миллион дополнительных пакетов.
Используется Network Manager
Проверим, используется ли Network Manager для нашего интерфейса, которому мы хотим сопоставить дополнительный адрес.
$ grep 'NM_CONTROLLED' /etc/sysconfig/network-scripts/ifcfg-enp3s0 NM_CONTROLLED="yes"
Если видим yes, Network Manager используется.
В таком случае при попытке добавить новый IP-адрес в файл network-scripts, который располагается /etc/sysconfig/network-scripts/
, нас ждёт неудача в RHEL 7 / CentOS 7. Раньше в CentOS 6 или 6.5 всё было просто: создали новый файл и готово!
$ cat ifcfg-enp3s0:0 NAME="enp3s0:0" ONBOOT="yes" BOOTPROTO="static" IPADDR="10.4.0.10" NETMASK="255.255.255.0"
Но при таком подходе в RHEL 7 / CentOS 7 после перезагрузки сети, основной IP-адрес будет удалён, а псевдоним займёт его место – так понимает наши действия «Network Manager».
Придётся воспользоваться великолепным инструментом nmtui
( Network Manager Text User Interface).
# nmtui
Выбираем Edit a network connection и указываем интерфейс, к которому надо добавить псевдоним.
Обратите внимание на кнопочку Add.
Сохраняем изменения.
Можно проверить конфигурационные файлы в /etc/sysconfig/network-scripts/
, чтобы разобраться, как псевдоним добавляется через nmtui
.
$ cat /etc/sysconfig/network-scripts/ifcfg-ens192 ... # Alias on the interface IPADDR1="10.4.0.10" PREFIX1="32"
Теперь эти файлы можно редактировать вручную, а можно через nmtui
.
Ручная конфигурация
Этот способ придётся испоьзовать, если Network Manager не управлет интерфейсом.
# grep 'NM_CONTROLLED' /etc/sysconfig/network-scripts/ifcfg-enp3s0 NM_CONTROLLED="no"
В принципе, в этом случае придётся вести себя так, как будто бы у нас CentOS 5/6.
# cat ifcfg-enp3s0:0 NM_CONTROLLED="no" DEVICE="enp3s0:0" ONBOOT="yes" BOOTPROTO="static" IPADDR="10.50.10.5" NETMASK="255.255.255.0"
Теперь поднимаем интерфейс и всё работает.
# ifup enp3s0:0
Добавление временного IP-адреса
Чтобы добавить IP-адрес на короткое время, можно пользоваться командой ip
. Изменения просуществуют до перезагрузки сервера или до перезагрузки службы network service.
# ip a add 192.168.1.1/24 dev eth0
Успехов!
Дискуссия
Написал Rocky 9
Опубликовано в: Установка nginx c PHP-FPM под CentOS 7.0 in LinuxНаписал Константин
Опубликовано в: Докеризация стека LEMP под Ubuntu c помощью Compose in LinuxНаписал bammbr
Опубликовано в: Шлюз для маленького отдела на Red Hat 9 in LinuxНаписал Федор
Опубликовано в: Установка и конфигурация Samba на CentOS 7 in LinuxНаписал Evgenytrl
Опубликовано в: Загрузка файлов с помощью Wget in Linux