- Мини-HOWTO, описывающее, как настроить IP-алиасинг на машине с Linux
- GNU Copyleft 1996/1997 Harish Pillay (h.pillay@ieee.org)
- Перевод: Станислав Рогин, SWSoft Pte Ltd.
- Главный сайт: http://home.pacific.net.sg/
- Авторские права
- CentOS 8 add second IP-address / alias
- Adding an alias with ifconfig
- CentOS 8 add second IP through the configuration file
- Несколько IP-адресов на одном сетевом адаптере в CentOS
- Принцип настройки
- Разовая настройка (командой)
- Постоянная настройка
- Настройка отвечающего интерфейса
- Дополнительный ip для интерфейса (IP alias) в Linux
- Устанавливаем несколько ip адресов на один интерфейс Debian/Ubuntu
- Установка алиас на сетевой интерфейс enp0s3 с использованием утилиты ifconfig.
- Удалить alias ip-адреса в Linux через утилиту ifconfig
- Установка алиас на сетевой интерфейс enp0s3 с использованием файла конфигурации.
- Linux Creating or Adding New Network Alias To a Network Card (NIC)
- ifconfig command line
- Debian / Ubuntu Linux Instructions
- Red Hat / RHEL / CentOS / Fedora Linux Instructions
- Red Hat / CentOS / Fedora Multiple IP address range
- See also:
Мини-HOWTO, описывающее, как настроить IP-алиасинг на машине с Linux
GNU Copyleft 1996/1997 Harish Pillay (h.pillay@ieee.org)
Перевод: Станислав Рогин, SWSoft Pte Ltd.
Главный сайт: http://home.pacific.net.sg/
Это книга рецептов того, как настроить и запустить IP-алиасинг на Linux-машине. Дополнительно к этому, здесь находятся инструкции, как получать электронную почту по этим IP-адресам.
- Самое последнее ядро (версия 2.0.27 — с сайта ftp.funet.fi:/pub/Linux/kernel/src/v2.0 ) — работало после версии 1.3.7x.
- IP-алиасинг, собранный в виде загружаемого модуля. Во время исполнения команды «make config» вам будет необходимо при сборке ядра указать, что вы хотите, чтобы IP-маскарадинг был собран в виде модуля. См. Modules HOW-TO (если таковой существует) или прочитайте файл /usr/src/linux/Documentation/modules.txt.
- Мне надо поддерживать 2 дополнительных IP-адреса помимо того, который я уже имею.
- Сетевой адаптер DE-620 фирмы D-Link (это не очень важно, все это работает с любым поддерживаемым Linux-ом сетевым адаптером).
- Во-первых, загрузите модуль IP-алиасинга (вы можете пропустить этот шаг, если у вас это встроено внутрь ядра):
- Во-вторых, настройте зацикленный адрес (loopback), eth0 и все IP-адреса, начиная с главного для интерфейса eth0 IP-адреса:
172.16.3.1 — это главный IP-адрес, а 172.16.3.10 and 172.16.3 .100 — алиасы. Фокус, как вы уже заметили, состоит во фразе «eth0:x», где x=0,1,2. n для различных IP-адресов. Главный IP-адрес не должен подвергаться алиасингу .
- В-третьих, настроим маршрутизацию. Первым маршрутизируем зацикленный адрес (loopback), затем сеть и, в конце концов, IP-адреса, начиная с главного:
В вышеприведенном примере я использовал личные IP-адреса ( RFC 1918 ), в целях иллюстрации. Замените их на ваши официальные или личные адреса.
В примере выше показаны только 3 IP-адреса. Максимум, заданный в /usr/include/linux/net_alias.h, равен 256. 256 IP-адресов — для ОДНОЙ карты это много! 🙂
Вот что выдает моя команда /sbin/ifconfig:
А вот что содержит /proc/net/aliases:
И, в свою очередь, /proc/net/alias_types:
Конечно, все, что в /proc/net, создано ifconfig-ом, а не вручную!
Вопрос: Как сохранить настройки в процессе перезагрузки?
Ответ: Если вы используете загрузку в стиле BSD или SysV (напр. Redhat), то всегда можно добавить эти команды в /etc/rc.d/rc.local. Вот что записано у меня в системе с загрузкой в стиле SysV (Redhat 3.0.3 and 4.0):
- Мой файл /etc/rc.d/rc.local: (только интересующая нас часть)
Вопрос: Как настроить машину с IP-алиасингом для получения почты, идущей по различным IP-адресам (на машине, использующей sendmail)?
- Ответ: Создайте (если еще не создали) файл с именем, например /etc/mynames.cw. Он не обязательно должен называться именно так и не обязательно должен находиться в каталоге /etc.
- В этом файле напишите официальные имена доменов для этих IP-адресов. Если у них нет имен, то поместите туда просто сами IP-адреса.
- В файле sendmail.cf, где определяется макрос класса файлов Fw, добавьте следующее:
- Это должно сработать. Проверьте новые настройки в тестовом режиме sendmail, в соответствии с примером:
Заметьте, что, когда я тестировал me@4.5.6.7, почта доставлена на локальную машину, а me@4.5.6.8 была передана smtp-mailer-у. Так и должно быть.
Надеюсь, все вышесказанное кому-нибудь пригодится.
Спасибо всем, кто провел титаническую работу над Linux-ом и IP-алиасингом. И особенно Juan Jose Ciarlante за ответы на мои вопросы.
Честь и слава программистам-асам!
Если вам пригодился этот документ, или у вас есть предложения или дополнения, пишите мне по адресу h.pillay@ieee.org.
Авторские права
Авторские права на русский перевод этого текста принадлежат © 2000 SWSoft Pte Ltd. Все права зарезервированы.
Этот документ является частью проекта Linux HOWTO.
Авторские права на документы Linux HOWTO принадлежат их авторам, если явно не указано иное. Документы Linux HOWTO, а также их переводы, могут быть воспроизведены и распространены полностью или частично на любом носителе, физическом или электронном, при условии сохранения этой заметки об авторских правах на всех копиях. Коммерческое распространение разрешается и поощряется; но, так или иначе, автор текста и автор перевода желали бы знать о таких дистрибутивах.
Все переводы и производные работы, выполненные по документам Linux HOWTO, должны сопровождаться этой заметкой об авторских правах. Это делается в целях предотвращения случаев наложения дополнительных ограничений на распространение документов HOWTO. Исключения могут составить случаи получения специального разрешения у координатора Linux HOWTO, с которым можно связаться по адресу приведенному ниже.
Мы бы хотели распространить эту информацию по всем возможным каналам. Но при этом сохранить авторские права и быть уведомленными о всех планах распространения HOWTO. Если у вас возникли вопросы, пожалуйста, обратитесь к координатору проекта Linux HOWTO по электронной почте: или к координатору русского перевода Linux HOWTO компании SWSoft Pte Ltd. по адресу
Источник
CentOS 8 add second IP-address / alias
Sometimes you need to add an alias on the interface. In CentOS 8 add second IP can be done in several ways.
Adding an alias with ifconfig
To get started, let’s look at the available interfaces in the system using ifconfig:
In the example, this is eth0. To add a second IP address to CentOS 8 via ifconfig, just run the command:
where eth0 – interface
:0 – number of alias
192.168.88.150 – IP
255.255.255.0 – mask
Check with ifconfig:
To remove an alias, just down the interface (not eth0, but eth0: 0!):
It should be noted that with this you may in CentOS 8 add second IP address, but it is not saved and after the system reboot the alias will disappear. To avoid this, we will use the second method.
CentOS 8 add second IP through the configuration file
By analogy with the main interface, we create a configuration file for the alias:
And configure the settings:
In order to raise the alias, you must run the command:
Yes, it is the main interface. When trying to run ifup eth0: 0 we get an error:
By executing ifconfig eth0 up and ifconfig eth0 down && ifconfig eth0 up you can control / reload the interfaces. But I couldn’t manage separately eth0:0. If anyone knows how – write in the comments.
Источник
Несколько IP-адресов на одном сетевом адаптере в CentOS
Назначение 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, на который пришел запрос, вносим изменения в таблицу маршрутизации.
Для начала нужно найти незанятую таблицу (по умолчанию, они все пусты, кроме основной):
ip route show table 100
* в данном примете мы посмотрим на маршруты таблицы с номером 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
Источник
Дополнительный ip для интерфейса (IP alias) в Linux
Сегодня рассмотрим как привязать несколько ip-адресов к одному сетевому интерфейсу, без использования vlan, т.е. создать несколько виртуальных интерфейсов, еще их называют IP alias.
Данная задача решается в ОС Linux (Linux Mint, Debian, Ubuntu, xUbuntu) двумя способами: использованием утилиты ifconfig и редактированием файла etc/network/interfaces .
Устанавливаем несколько ip адресов на один интерфейс Debian/Ubuntu
Установка алиас на сетевой интерфейс enp0s3 с использованием утилиты ifconfig.
Для добавления алиаса на наш интерфейс в терминале вводим команду:
либо с дефолтной маской
Помните: после перезагрузки добавленные виртуальные alias ip-адреса через команду ifconfig слетят.
Удалить alias ip-адреса в Linux через утилиту ifconfig
Для удаления ранее созданного алиас интерфейса enp0s3:0 воспользуемся следующей командой:
Установка алиас на сетевой интерфейс enp0s3 с использованием файла конфигурации.
Для добавления алиас IP-адресов с использованием файла конфигурации, откроем файл interfaces
Внесём наши дополнительные IP-адреса для интерфейса enp0s3
Теперь при загрузке системы интерфейсы enp0s3:0 и enp0s3:1 будут автоматически добавлены.
Вот и все. Аналогичным образом можно добавить и другие виртуальные ip-адреса на сетевую карту в ОС Linux Mint, Debian, Ubuntu.
Если есть вопросы, то пишем в комментариях.
Также можете вступить в Телеграм канал, ВК или подписаться на Twitter. Ссылки в шапки страницы.
Заранее всем спасибо.
Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.
Источник
Linux Creating or Adding New Network Alias To a Network Card (NIC)
Q. I would like to create alias for my network card (NIC). How do I setup 2 IP address on One NIC? How do I add alias under Centos / Fedora / Debian / Ubuntu Linux?
A. Linux allows you to add additional network address using alias feature. Please note that all additional network IP address must be in same subnet. For example if your eth0 using 192.168.1.5 IP address then alias must be setup using 192.168.1.0/24 subnet.
ifconfig command line
You can use ifconfig command to configure a network interface and alias. For example:
- eth0 NIC IP 192.168.1.5
- eth0:0 first NIC alias: 192.168.1.6
To setup eth0:0 alias type the following command as the root user:
# ifconfig eth0:0 192.168.1.6 up
Verify alias is up and running using following command:
# ifconfig -a
# ping 192.168.1.6
However, if you reboot the system you will lost all your alias. To make it permanent you need to add it network configuration file.
Debian / Ubuntu Linux Instructions
You can configure the additional IP addresses automatically at boot with another iface statement in /etc/network/interfaces:
# vi /etc/network/interfaces
Append text as follows:
Save and close the file. Restart the network:
# /etc/init.d/networking restart
Red Hat / RHEL / CentOS / Fedora Linux Instructions
Copy etc/sysconfig/network-scripts/ifcfg-eth0 file as /etc/sysconfig/network-scripts/ifcfg-eth0:0
# cp /etc/sysconfig/network-scripts/ifcfg-eth0 /etc/sysconfig/network-scripts/ifcfg-eth0:0
Open file /etc/sysconfig/network-scripts/ifcfg-eth0:0 using vi text editor:
# vi /etc/sysconfig/network-scripts/ifcfg-eth0:0
Find entry that read as follows:
Find entry that read as follows:
Replace it with your actual IP address:
At the end your file should like as follows:
Open file /etc/sysconfig/network-scripts/ifcfg-eth0 and make sure file does not have a GATEWAY= entry:
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
Find the entry that read as follows:
Remove or comment it out by prefixing # (hash) :
Save the file. Add the GATEWAY= to your /etc/sysconfig/network:
Append or modify GATEWAY entry:
Save the file. Reboot the system or run the following command:
- No ads and tracking
- In-depth guides for developers and sysadmins at Opensourceflare✨
- Join my Patreon to support independent content creators and start reading latest guides:
- How to set up Redis sentinel cluster on Ubuntu or Debian Linux
- How To Set Up SSH Keys With YubiKey as two-factor authentication (U2F/FIDO2)
- How to set up Mariadb Galera cluster on Ubuntu or Debian Linux
- A podman tutorial for beginners – part I (run Linux containers without Docker and in daemonless mode)
- How to protect Linux against rogue USB devices using USBGuard
Join Patreon ➔
Red Hat / CentOS / Fedora Multiple IP address range
You can assign multiple ip address range as follows to eth0:
vi /etc/sysconfig/network-scripts/ifcfg-eth0-range0
Append following code from 202.54.112.120 to 202.54.112.140:
Save and close the file.
See also:
🐧 Get the latest tutorials on Linux, Open Source & DevOps via
Category | List of Unix and Linux commands |
---|---|
Documentation | help • mandb • man • pinfo |
Disk space analyzers | df • duf • ncdu • pydf |
File Management | cat • cp • less • mkdir • more • tree |
Firewall | Alpine Awall • CentOS 8 • OpenSUSE • RHEL 8 • Ubuntu 16.04 • Ubuntu 18.04 • Ubuntu 20.04 |
Linux Desktop Apps | Skype • Spotify • VLC 3 |
Modern utilities | bat • exa |
Network Utilities | NetHogs • dig • host • ip • nmap |
OpenVPN | CentOS 7 • CentOS 8 • Debian 10 • Debian 8/9 • Ubuntu 18.04 • Ubuntu 20.04 |
Package Manager | apk • apt |
Processes Management | bg • chroot • cron • disown • fg • glances • gtop • jobs • killall • kill • pidof • pstree • pwdx • time • vtop |
Searching | ag • grep • whereis • which |
Shell builtins | compgen • echo • printf |
Text processing | cut • rev |
User Information | groups • id • lastcomm • last • lid/libuser-lid • logname • members • users • whoami • who • w |
WireGuard VPN | Alpine • CentOS 8 • Debian 10 • Firewall • Ubuntu 20.04 |
Comments on this entry are closed.
Hello there
I am using Linux enterprise 4 on my Toshipa Laptop but it didn’t recognizing my NIC so I had to ask for the NIC installation file so I get and this is the name of the file install_8_37[1].tar but I dont know what to do after that ,so i need any help to do this but just please make simple and much details as much as you can because I am not quite expert.
This blog explains how to create an aliased interface using a C program.
Link
Might be useful for some of you I guess.
Hello, I am very new to Linux. Currently using Ubuntu and was wondering what the following line means.
“name Ethernet alias LAN card”
Any help on this would be great thanks!
thanks . will try to ad failover ip’s on my ovh box 🙂
Hi sir
If I have several additional IPs, will creating eth0:1, eth0:2 and so on.
work’s ?
thanks 😀
According to the documentation in /usr/share/doc/initscripts-*/sysconfig.txt, the file defining the eth0:0 device on RedHat/RHEL/CentOS/Fedora systems should only contain the information that is different from the parent eth0 device.
I agree with Michael Leahy.
/usr/share/doc/initscripts-*/sysconfig.txt says that the alias interfaces should not duplicate the information contained in the parent device.
/etc/sysconfig/network-scripts/ifcfg- and
/etc/sysconfig/network-scripts/ifcfg-::
The first defines an interface, and the second contains
only the parts of the definition that are different in a
“alias” (or alternative) interface. For example, the
network numbers might be different, but everything else
might be the same, so only the network numbers would be
in the alias file, but all the device information would
be in the base ifcfg file.
Since when does an alias have to be on the same subnet? I use aliases all the time at work to create private “dev” VLANS with servers I SSH to directly (with a simple switch in between).
The ONBOOT parameter is not appropriate for a Virtual IP / IP Alias – you need to use the ONPARENT param instead.
HTH,
Steve Harper
Thanks I just managed to add a new network alias to my server. 🙂 I also followed Steve’s advice about the onboot parameter.
For my centos5 this information was not sufficient. I’ve added a IP alias eth1:1 on a different subnet than eth1 with this ifcfg-eth1:1 file:
GATEWAY=194.xxx.xxx.xxx
TYPE=Ethernet
DEVICE=eth1:1
BOOTPROTO=none
NETMASK=255.255.255.0
IPADDR=194.xxx.xxx.xxx
USERCTL=no
IPV6INIT=no
ONPARENT=yes
PEERDNS=yes
This works fine with a:
service network restart
how many ip alias I can create in rhel 5, till now i have 64 alias of eth0 interface. I’m able to ping till 63th alias but not on 64 why’s that. I have found that in ubuntu we can create till 254 alias from one particular interface card.
any idea all the configuration are perfect and from sitting on the machine i’m able to ping myself on 64 alias.
but not from other machine which is in netwrok
thanks this help to my configure my network
Is there any limit for network aliases?
can i configure i.e. 512 ip addreses to one network card?
Stop taking all the ipv4 addresses for no reason!
Источник