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

Не удалось вызвать eth1 в решении с двойным IPS в ubuntu

Я использую ubuntu 12.04.

Я попытался назначить два IP-адреса двум картам Ethernet на моем сервере.

Содержание /etc/network/interfaces вот так:

auto lo
iface lo inet loopback

auto eth0
iface eth0 inet static
address 114.80.156.a
netmask 255.255.255.224
gateway 114.80.156.b

auto eth1
iface eth1 inet static
address 114.80.156.c
netmask 255.255.255.240
gateway 114.80.156.d

a b c d имеют разные значения, что означает, что два IP-адреса находятся в разных vlan.

Но я могу вызвать eth0 только с помощью этой команды:

$ /etc/init.d/networking restart
RTNETLINK answers: File exists
Failed to bring up eth1.
...done.

Я проверил вопрос здесь, который показывает ту же проблему, что и та, с которой я столкнулся: Может вызвать только один из двух интерфейсов

Но, похоже, это не совсем решено. И в моей ситуации мне нужно 2 ips, чтобы использовать 2 разных шлюза.

Итак, как исправить эту проблему?


Edit1 изменил пример конфигурации ip с подсети 192.168.0.0/16 на другую «реальную» подсеть.


Edit2, цель этого довольно проста. Поскольку в предыдущем диапазоне IP-адресов не осталось места для новых серверов, и мне нужно перейти на другой диапазон IP-адресов. Поэтому я хочу привязать общедоступные серверы к 2 ips на переходный период.

У меня очень ограниченные знания о маршрутизации и подсети. @BillThor @rackandboneman, не могли бы вы дать мне несколько ключевых слов или ссылок о том, как настроить маршрут для 2 ips?

и @Mike Pennington, откуда ты знаешь, что я говорю по-китайски?

«RTNETLINK отвечает: файл существует» означает, что он пытается настроить статический маршрут, конфликтующий с другим.

Если исходная идея, лежащая в основе вопроса, заключается в QoSing-трафике двух разных интерфейсов в одной подсети: это действительно быстро продвигается. Следующее, что вы обнаружите, - это то, как поведение ARP по умолчанию в Linux саботирует проект :)

Вы пытаетесь создать два шлюза по умолчанию на разных адресах. Если вам нужно только выполнить маршрутизацию к vlan, пропустите запись шлюза. Если вам нужны маршруты от vlan к ограниченным адресам, используйте команды post-up, чтобы добавить требуемые маршруты для этого интерфейса.

Я вообще стараюсь, чтобы у eth0 был интерфейс со шлюзом по умолчанию. Другие интерфейсы используются для связи в сети, к которой они подключены, и в ограниченных случаях имеют правила маршрутизации к сетям, подключенным через эту подсеть.

Существуют методы, которые можно использовать для маршрутизации определенного трафика через разные интерфейсы. Однако это не то, что мне нужно было делать и у меня нет опыта в этом. Я видел документацию по Shorewall сайт. Скорее всего, это не то, что вы хотите делать.

Вы уверены, что IP-адреса не находятся в одной подсети. Поскольку подсеть 192.168.0.0/16 является частной, вы можете указать правильные значения. Также могут помочь добавление параметров трансляции и сети.