Logo

Несколько IP адресов на одном интерфейсе

В этой статье рассмотрим, как в популярных дистрибутивах linux привязать несколько IP адресов на одну сетевую карту. Делается это путем создания виртуальных интерфейсов вида eth0:0 где идет базовый интерфейс eth0 и после двоеточия идет порядковый номер алиаса.

Настойка в Debian/Ubuntu

Откроем файл /etc/network/interfaces и пишем туда:

# the loopback interface
auto lo
iface lo inet loopback

#
auto eth0
allow-hotplug eth0
iface eth0 inet static
address 192.168.1.42
netmask 255.255.255.0

gateway 192.168.1.1

auto eth0:0
allow-hotplug eth0:0
iface eth0:0 inet static
address 192.168.1.43
netmask 255.255.255.0

auto eth0:1
allow-hotplug eth0:1
iface eth0:1 inet static
address 192.168.1.44
netmask 255.255.255.0

Чтобы применить изменения перезапускаем сетевую службу:

/etc/init.d/networking restart

В результате получим три IP адреса на одной сетевой карте.

Настройка в RHEL/CentOS/Fedora

Чтобы назначить второй IP адрес на интерфейс, нужно создать файл /etc/sysconfig/network-scripts/ifcfg-eth0:0 следующего содержания:

DEVICE=eth0:0
BOOTPROTO=static
BROADCAST=192.168.0.255
IPADDR=192.168.0.11
NETMASK=255.255.255.0
NETWORK=192.168.0.0
ONBOOT=yes

Если необходимо создать группу сетевых алиасов, то можно создать файл /etc/sysconfig/network-scripts/ifcfg-eth0-range0 следующего содержания:

IPADDR_START=192.168.0.11
IPADDR_END=192.168.0.21
CLONENUM_START=5

Будут созданы 10 сетевых алиасов от eth0:5 — eth0:15 и ip адресами от 192.168.0.11 до 192.168.0.21

И применяем изменения:

/etc/init.d/networking restart

Теперь если набрать команду:

ifconfig

То увидим новые интерфейсы с IP адресами.

4 комментария

  1. Роман:

    fedora19

    после добавления em1:0 ifconfig показывает это

    em1: flags=4163 mtu 1500
    inet x.x.x.90 netmask 255.255.255.0 broadcast x.x.x.255
    inet6 xxx::xxx:xxx:xxx:c3f5 prefixlen 64 scopeid 0x20
    ether xx:xx:xx:xx:xx:xx txqueuelen 1000 (Ethernet)
    RX packets 23011 bytes 14772354 (14.0 MiB)
    RX errors 0 dropped 0 overruns 0 frame 0
    TX packets 9914 bytes 1317663 (1.2 MiB)
    TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
    device interrupt 19

    lo: flags=73 mtu 65536
    inet 127.0.0.1 netmask 255.0.0.0
    inet6 ::1 prefixlen 128 scopeid 0x10
    loop txqueuelen 0 (Local Loopback)
    RX packets 1130 bytes 90384 (88.2 KiB)
    RX errors 0 dropped 0 overruns 0 frame 0
    TX packets 1130 bytes 90384 (88.2 KiB)
    TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0

    т.е. тоже самое что и до добавления, единственно что поменялось — появилась возможность включать вручную через сетевого менеджера вторую настройку em1:0

    ifconfig после переключения показывает всё тоже самое только с другим ip указанным в файле em1:0 — x.x.x.91

    ВОПРОС как одновременно включить эти сети на одной сетевой карте, что ещё нужно сделать для этого, потому что сейчас они работают только по очереди и на одном интерфейсе em1, хотя в файле строчка DEVICE=em1:0 присутствует

    цитата:
    »
    Теперь если набрать команду:

    ifconfig
    То увидим новые интерфейсы с IP адресами.

    »
    вот что показывает… ip никакого нет только mac:

    [root@localhost roma]# ifconfig em1:0
    em1:0: flags=4163 mtu 1500
    ether xx:xx:xx:xx:xx:xx txqueuelen 1000 (Ethernet)
    device interrupt 19

    • Проверьте ещё раз имена файлов с настройками они должны начинаться с ifcfg-* и получиться примерно так:
      /etc/sysconfig/network-scripts/ifcfg-em1
      DEVICE=em1
      BOOTPROTO=none
      ONBOOT=yes
      IPADDR=192.168.0.90
      NETMASK=255.255.255.0

      /etc/sysconfig/network-scripts/ifcfg-em1:0
      DEVICE=em1:0
      BOOTPROTO=none
      ONBOOT=yes
      IPADDR=192.168.0.91
      NETMASK=255.255.255.0

  2. тупилка:

    перезапускать наверно нужно сервер — а то говорят на дебиане может все зависнуть и вообще вот так
    service MySQL stop
    reboot
    а то у меня было дело тяжелая таблица крякнула при просто перезагрузке.

    • Если через SSH сидеть тогда да сеть отвалится и сама не поднимиться и тут проще ребут делать. А если локально настраивать то можно просто демона сети перезапустить это быстрее. Debian при нормальном ребуте должен сам останавливать всех демонов включая MySQL, обычно базы ломаются при отключении электричества или когда винчестер начинает сыпаться. Хотя если база очень важная тогда да лучше перестраховаться сделать резервную копию и вручную остановить. При любой перезагрузке есть вероятность что что то сломается программно или железно.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *