Мой сервер выделен (не виртуальный). Я хочу иметь 3 + 1 статических IP. Раньше я использовал псевдонимы (eth0: 0, eth0: 1), но читал, что этот метод устарел. Поэтому я добавил еще один IP-адрес и перенастроил свой интерфейс с помощью ifup / ifdown, пока я нахожусь в i ;, но ifdown сообщает мне, что интерфейс не настроен.
/ etc / network / interfaces выглядит так:
auto lo eth0
iface lo inet loopback
# Main IPs (IPv4 + IPv6)
allow-hotplug eth0
iface eth0 inet static
address 81.x.x.x
netmask 255.255.255.0
broadcast 81.x.x.255
gateway 81.x.x.1
iface eth0 inet6 static
address 2a02:x:x:x::x:x
netmask 64
gateway 2a02:x:x:x::1
# 2nd IP
up ip addr add 81.x.x.x/32 dev eth0
# 3rd IP
up ip addr add 81.x.x.x/32 dev eth0
Обратите внимание, что 2-й и 3-й IP-адреса относятся к разным сетевым диапазонам (не знаю, имеет ли это значение)
Я перезагружаю конфигурацию сети с помощью
nohup sh -c "ifdown eth0 && ifup eth0"
Точный результат (nohup):
ifdown: interface eth0 not configured
SIOCADDRT: File exists
Failed to bring up eth0.
Что я делаю не так?
Изменить: этот квест был задан раньше. Но старый вопрос использует устарел методы. Также решение не работает у меня. Поскольку люди здесь, на serverfault, похоже, не могут мне помочь, а просто закрывают это как дубликат (я сомневаюсь, что вы действительно читали то, что я написал ...), я спросил людей на официальных форумах. Они застряли в этой проблеме и вообще не могут найти решения, но хотя бы попробуйте.
У меня все больше и больше проблем, поэтому я переустановлю сервер. Вы можете оставить этот вопрос закрытым и без ответа.
ifdown считает, что интерфейс уже отключен. Если это не так, потому что он был вызван с помощью какой-то команды, отличной от ifup (например, ifconfig), вам нужно закрыть его таким же образом (ifconfig eth0 down
).
Если ip addr add
команды также были выполнены вручную, возможно, вам придется отменить их с помощью ip addr del
.
ifup и ifdown хрупкие. Они не работают гладко, если не являются единственными используемыми инструментами настройки. Они могут получить текущий статус интерфейса от ядра вместо того, чтобы помнить, на что они его в последний раз изменили, но они этого не делают.
Как только вы добьетесь того, что текущее состояние интерфейса будет соответствовать тому, что думает updown, они начнут работать лучше.