Назад | Перейти на главную страницу

Добавление второго IP на сервер

У меня есть Debian 7, на котором будет размещаться несколько доменов. Я пытаюсь добавить второй IP, но каждый раз пытаюсь /etc/init.d/network stop && /etc/init.d/network start, Я получаю эту ошибку:

RTNETLINK answers: File exists
Failed to bring up eth0:0

Однако новый IP-адрес все еще работает - я могу получить доступ к серверу в моем браузере.

Это мой файл интерфейсов:

allow-hotplug eth0
iface eth0 inet static
        address 111.222.26.38
        netmask 255.255.255.0
        network 111.222.26.0
        broadcast 111.222.26.255
        gateway 111.222.26.1
        # dns-* options are implemented by the resolvconf package, if installed
        dns-nameservers 1.2.3.4 1.2.3.5 1.2.3.6
        dns-search my.tld

auto eth0:0
iface eth0:0 inet static
        address 111.222.26.165
        netmask 255.255.255.0

Моя таблица маршрутизации route -n:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         111.222.26.1    0.0.0.0         UG    0      0        0 eth0
111.222.26.0    0.0.0.0         255.255.255.0   U     0      0        0 eth0

Примерно в 100% подобных проблем, размещенных в Google, проблема устраняется сама собой путем удаления gateway декларация из второй строфы (что я сделал), или просто позвонив ifdown и ifup (который не ведет себя иначе).

Как мне предотвратить появление этой ошибки? Ничего не мешает работать, но все же ...

редактировать

Публикация моей новой конфигурации после внесения изменений, предложенных @ bodhi.zazen:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
allow-hotplug eth0
iface eth0 inet static
        address 111.222.26.38
        netmask 255.255.255.0
        network 111.222.26.0
        broadcast 111.222.26.255
        gateway 111.222.26.1
        # dns-* options are implemented by the resolvconf package, if installed
        dns-nameservers 111.222.3.119 111.222.3.117 111.222.5.233
        dns-search my.tld

iface eth0 inet static
        address 111.222.26.165
        netmask 255.255.255.0

После перезагрузки коробки я получаю сообщение об ошибке: ifup: interface eth0 уже настроен

Вы используете старый (устаревший) синтаксис.

Новый синтаксис намного проще:

auto eth0

allow-hotplug eth0

iface eth0 inet static
    address 111.222.26.38
    netmask 255.255.255.0
    network 111.222.26.0
    broadcast 111.222.26.255
    gateway 111.222.26.1
    # dns-* options are implemented by the resolvconf package, if installed
    dns-nameservers 1.2.3.4 1.2.3.5 1.2.3.6
    dns-search my.tld

iface eth0 inet static
    address 111.222.26.165
    netmask 255.255.255.0

Видеть - https://wiki.debian.org/NetworkConfiguration#iproute2_method

Кроме того, ошибка «Ответы RTNETLINK: файл существует ...» неспецифична.

Другие решения:

редактировать /etc/udev/rules.d/70-persistent-net.rules и удалите запись, относящуюся к eth0

Видеть https://superuser.com/questions/618390/rtnetlink-answers-file-exists-maybe-because-assigned-a-new-mac-adress для подробностей.

Смотрите также http://www.linuxquestions.org/questions/linux-networking-3/rtnetlink-answers-file-exists-error-when-doing-ifup-on-alias-eth1-1-on-rhel5-710766/