У меня есть 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 для подробностей.