- Два Ip адреса на сетевой карте в Linux
- Первый способ как добавить дополнительный второй IP адрес сетевой карте в Linux
- Второй способ настройки дополнительного IP адреса на сетевой карте в Linux
- Третий способ как назначить дополнительный адрес сетевой карте
- Несколько IP-адресов на одном сетевом адаптере в CentOS
- Принцип настройки
- Разовая настройка (командой)
- Постоянная настройка
- Настройка отвечающего интерфейса
- Как назначить несколько IP-адресов одной сетевой карте в Ubuntu 20.04 LTS
- Временное назначение нескольких IP-адресов одному сетевому адаптеру
- Удалите несколько IP-адресов из сетевой карты
- Назначение нескольких IP-адресов одному сетевому адаптеру на постоянной основе
- Удалите несколько IP-адресов из сетевой карты
Два Ip адреса на сетевой карте в Linux
Иногда возникает необходимость привязать несколько IP адресов к одному сетевому адаптеру. Как оказалось в Linux сделать это очень просто.
В предыдущей статье я писал как настроить сетевую карту используя только консоль в линукс, а конкретно в CentOS. Так вот, настройка дополнительных IP адресов производится теме же командами и способами. С той лишь разницей, что настраивать мы будем уже не саму сетевую карту, а ее подинтерфейс(ы). Иными словами у сетевой карты будет основной адрес и один или несколько дополнительных.
Первый способ как добавить дополнительный второй IP адрес сетевой карте в Linux
Чтобы добавить второй адрес сетевому адаптеру достаточно выполнить команду:
# ifconfig eth0:0 XXX.XXX.XXX.XXX netmask YYY.YYY.YYY.YYY
где YYY.YYY.YYY.YYY — маска сети
XXX.XXX.XXX.XXX — дополнительный IP адрес
а eth0:0 — имя подинтерфейса. Которое состоит из имени сетевого адаптера и номера дополнительного подинтерфейса.
К примеру если мы введем команды:
# ifconfig eth0 172.16.254.33 netmask 255.255.255.0 # ifconfig eth0:0 10.44.225.230 netmask 255.255.255.252
то есть настроим основной адрес и второй дополнительный, то получим примерно следующий результат:
# ifconfig eth0 Link encap:Ethernet HWaddr 00:22:4D:A1:B5:5F inet addr:172.16.254.33 Bcast:172.16.254.255 Mask:255.255.255.0 inet6 addr: fe80::222:4dff:fea1:b55f/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:671877 errors:0 dropped:0 overruns:0 frame:0 TX packets:90532 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:93680865 (89.3 MiB) TX bytes:35292110 (33.6 MiB) Interrupt:16 Memory:80120000-80140000 eth0:0 Link encap:Ethernet HWaddr 00:22:4D:A1:B5:5F inet addr:10.44.225.230 Bcast:10.44.225.231 Mask:255.255.255.252 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 Interrupt:16 Memory:80120000-80140000 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:62211 errors:0 dropped:0 overruns:0 frame:0 TX packets:62211 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:5696370 (5.4 MiB) TX bytes:5696370 (5.4 MiB)
Естественно, что подинтерфейсов может быть несколько, соответственно может быть несколько дополнительных IP адресов на одной сетевой карте.
Второй способ настройки дополнительного IP адреса на сетевой карте в Linux
Второй способ — это редактирование конфигурационных файлов. Но теперь уже не для сетевого адаптера, а для его подинтерфейсов. Система имен которых строится по тем же принципам. То есть для подинтерфейса eth0:0 имя файла будет /etc/sysconfig/network-scripts/igcfg-eth0:0
И в моем случае будет иметь следующее содержание:
# cat /etc/sysconfig/network-scripts/igcfg-eth0:0 DEVICE=eth0:0 BOOTPROTO=none NETMASK=255.255.255.252 TYPE=Ethernet IPADDR=10.44.225.230 IPV6INIT=no USERCTL=no
При необходимости его нужно отредактировать, к примеру так:
# nano /etc/sysconfig/network-scripts/igcfg-eth0:0
После чего перезапустите сетевые службы:
и убедитесь, что все работает:
# ifconfig eth0 Link encap:Ethernet HWaddr 00:22:4D:A1:B5:5F inet addr:172.16.254.33 Bcast:172.16.254.255 Mask:255.255.255.0 inet6 addr: fe80::222:4dff:fea1:b55f/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:673649 errors:0 dropped:0 overruns:0 frame:0 TX packets:90795 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:93846686 (89.4 MiB) TX bytes:35395290 (33.7 MiB) Interrupt:16 Memory:80120000-80140000 eth0:0 Link encap:Ethernet HWaddr 00:22:4D:A1:B5:5F inet addr:10.44.225.230 Bcast:10.44.225.231 Mask:255.255.255.252 UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 Interrupt:16 Memory:80120000-80140000 lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:16436 Metric:1 RX packets:62273 errors:0 dropped:0 overruns:0 frame:0 TX packets:62273 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:5702293 (5.4 MiB) TX bytes:5702293 (5.4 MiB)
Третий способ как назначить дополнительный адрес сетевой карте
Воспользуемся уже знакомой нам утилитой system-config-network-tui
Выбираем пункт настройки адаптеров:
Выбираем необходимый нам подинтерфейс либо выбираем пункт New Device при создании нового:
И настраиваем его по своему усмотрению:
Незабываем сохраняться, после чего перезагружаем сетевую службу:
и проверяем, что все работает:
Несколько IP-адресов на одном сетевом адаптере в CentOS
Опубликовано: 28.02.2019
Назначение 2-х и более адресов на один физический сетевой интерфейс позволяет запуск приложений и служб, которые используют несколько IP или работают на разных сетевых адресах.
Принцип настройки
Для назначения вторичного IP-адреса создается псевдоним (alias) сетевого интерфейса. Название для алиаса задается по принципу : , например, eth0:0 или eth0:1.
Псевдониму можно назначить только статический ip-адрес, нельзя присвоить адрес с помощью DHCP.
Разовая настройка (командой)
Добавить дополнительный адрес можно одной командой:
ip a add 192.168.1.11/24 dev enp2s0:1
* в данном примере мы назначили адрес 192.168.1.11 с маской 255.255.255.0 (/24) для сетевого интерфейса enp2s0. Данный алиас назван enp2s0:1.
Если для управления сетевыми интерфейсами используем утилиту ifconfig:
ifconfig enp2s0:1 192.168.1.11 up
Проверить настройку можно одной из команд:
* обе команды позволяют посмотреть сетевые интерфейсы и узнать IP-адреса, назначенные им.
Необходимо помнить, что данная настройка будет сброшена после перезагрузки сетевой службы или системы.
Постоянная настройка
Чтобы дополнительный адрес назначался при перезагрузках, создаем новый виртуальный адаптер:
DEVICE=enp2s0:1
BOOTPROTO=static
IPADDR=192.168.1.11
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
ONBOOT=yes
Для применения настроек, перезапускаем сетевую службу:
systemctl restart network
Настройка отвечающего интерфейса
Некоторые приложения, которые отвечают на сетевые запросы с интерфейсов-алиасов могут работать некорректно. Это связано с тем, что ответ выполняется не с вторичного IP-адреса, на который пришел запрос, а первичного.
Для настройки сетевых ответов с IP, на который пришел запрос, вносим изменения в таблицу маршрутизации.
Для начала нужно найти незанятую таблицу (по умолчанию, они все пусты, кроме основной):
* в данном примете мы посмотрим на маршруты таблицы с номером 100.
Если маршрутов нет, то добавляем следующие:
ip route add default via 192.168.1.1 src 192.168.1.11 table 100
ip rule add from 192.168.1.0/24 table 100
ip rule add to 192.168.1.0/24 table 100
* в данном примере добавлены маршруты для подсети 192.168.1.0/24
Для постоянного добавления маршрута, создаем файл:
default via 192.168.1.1 src 192.168.1.11 table 100
Также создаем файл для добавления правил:
from 192.168.1.0/24 table 100
systemctl restart network
Как назначить несколько IP-адресов одной сетевой карте в Ubuntu 20.04 LTS
При работе с компьютерными системами иногда вам может потребоваться несколько IP-адресов на вашем физическом компьютере. Одно из решений — установить в вашей системе несколько сетевых адаптеров. Однако нецелесообразно покупать новую сетевую карту и подключать ее к своей системе, если у вас есть возможность назначить несколько IP-адресов одному сетевому адаптеру, что называется псевдонимом IP. Типичным вариантом использования псевдонимов IP является реализация виртуального хостинга на основе IP.
В этом посте мы продемонстрируем вам, как назначить несколько IP-адресов одному сетевому адаптеру в ОС Ubuntu. Мы продемонстрируем эту процедуру на Ubuntu 20.04 (Focal Fossa).
Временное назначение нескольких IP-адресов одному сетевому адаптеру
В следующем разделе мы увидим, как назначить второй IP-адрес сетевой карте. Второй IP-адрес, присвоенный этим методом, является временным. Как только вы перезагрузите систему, она будет удалена автоматически.
Вот шаги для назначения второго IP-адреса сетевой карте.
1. Сначала найдите текущий IP-адрес и имя интерфейса в вашей системе. Для этого введите в Терминале следующую команду:
Следующий вывод показывает, что наш сетевой интерфейс — ens33, а текущий IP-адрес — 192.168.72.157/24, который является динамическим IP-адресом, назначаемым DHCP .
2. Назначим сетевой карте другой IP-адрес. Чтобы назначить дополнительный IP-адрес вашей сетевой карте, введите в Терминале следующую команду:
Замените дополнительным IP-адресом, который вы хотите назначить своей сетевой карте, а — именем вашей сетевой карты. Например, чтобы назначить второй IP-адрес 10.1.1.5/8 вашему сетевому интерфейсу ens33 , команда будет выглядеть так:
$ ip addr add 10.1.1.5/8 dev ens33
3. После выполнения указанной выше команды проверьте, назначен ли второй IP-адрес вашему сетевому интерфейсу. Для этого выполните следующую команду:
Вот результат выполнения указанной выше команды, который показывает два IP-адреса, назначенных сетевому интерфейсу ens33 .
4. Теперь попробуйте пропинговать оба IP-адреса один за другим. Вы можете видеть, что оба IP-адреса доступны.
Удалите несколько IP-адресов из сетевой карты
Чтобы удалить дополнительные IP-адреса, назначенные сетевой карте, выполните следующую команду:
Замените дополнительным IP-адресом, который вы назначили своей сетевой карте, а — именем вашей сетевой карты. Например, чтобы удалить IP-адрес 10.1.1.5/8, назначенный нашему сетевому интерфейсу ens33, команда будет выглядеть так:
$ sudo ip addr del 10.1.1.5/8 dev ens33
Назначение нескольких IP-адресов одному сетевому адаптеру на постоянной основе
В предыдущем разделе мы назначили второй IP-адрес с помощью команды «ip addr add», которая не является постоянным методом. После перезагрузки системы IP-адрес удаляется автоматически. В этом разделе мы увидим, как сделать присвоение IP постоянным.
Чтобы назначить несколько IP-адресов одному сетевому адаптеру на постоянной основе, вам необходимо настроить его в файле конфигурации интерфейсов .
1. Отредактируйте файл конфигурации интерфейсов следующим образом:
sudo nano /etc/network/interfaces
Добавьте в файл следующие строки:
iface inet static address
Замените именем вашего сетевого адаптера, которому вы хотите назначить дополнительный IP-адрес, а — IP-адресом, который вы хотите назначить. Например, чтобы назначить второй IP-адрес 10.1.1.5/8 вашему сетевому интерфейсу ens33 , строки должны быть изменены на:
iface ens33 inet static address 10.1.1.5/8
После того, как вы добавили вышеуказанные строки, сохраните и закройте файл.
Теперь перезапустите сетевую службу, чтобы применить изменения конфигурации, которые вы сделали выше:
$ sudo systemctl restart networking
В качестве альтернативы, опустите и откройте интерфейс, чтобы применить изменения:
$ sudo ifdown ens33 $ sudo ifup ens33
Теперь, чтобы проверить, назначен ли дополнительный IP-адрес сетевому интерфейсу, используйте следующую команду:
Поскольку мы настроили дополнительный IP-адрес в файле конфигурации, он останется постоянным даже после перезагрузки системы.
Удалите несколько IP-адресов из сетевой карты
Вы также можете удалить дополнительный IP-адрес, который вы настроили в файле конфигурации интерфейсов. Для этого просто отредактируйте файл /etc/network/interfaces и удалите запись для дополнительных IP-адресов, которые вы добавили. Затем сохраните и закройте файл и перезапустите сетевые службы:
$ sudo systemctl restart networking
или опустите и откройте интерфейс, чтобы применить изменения
$ sudo ifdown ens33 $ sudo ifup ens33
Вот как вы можете назначить несколько IP-адресов одному сетевому адаптеру в ОС Ubuntu. В этом посте мы обсудили как временные, так и постоянные методы назначения вторичного IP-адреса одной сетевой карте. Следуя тем же методам, вы можете выделить несколько IP-адресов для одной сетевой карты.
Насколько публикация полезна?
Нажмите на звезду, чтобы оценить!
Средняя оценка / 5. Количество оценок:
Оценок пока нет. Поставьте оценку первым.