Пытаюсь настроить eth0 и eth1, но не удалось вызвать eth1

Пытаюсь сделать это ниже в Ubuntu 12.04.

Пытаясь настроить eth0 и eth1, eth0 работает нормально, но не удалось вывести eth1.

Ниже приведены настройки /etc/network/interfaces:

auto eth0 eth1iface eth0 inet staticaddress 172.19.20.186netmask 255.255.255.252network 172.19.20.184broadcast 172.19.20.187gateway 172.19.20.185iface eth1 inet staticaddress 172.18.182.55netmask 255.255.254.0gateway 172.18.182.1up route add -net 172.19.26.0/23 gw 172.19.20.185 dev eth0up route add -net 172.19.24.0/23  gw 172.19.20.185 dev eth0up route add default  gw 172.18.182.1 dev eth1

Когда /etc/init.d/networking restart выполняется, выдавая приведенную ниже ошибку:

$ /etc/init.d/networking restartRTNETLINK answers: File existsFailed to bring up eth1

Даже ifdown eth1 и ifup eth1 выдает вышеуказанную ошибку.

Кто-нибудь может помочь, как это решить?

Я думаю, вам нужен только один шлюз по умолчанию. Вы настроили 3: gateway 172.19.20.185, gateway 172.18.182.1 и up route add default gw 172.18.182.1 dev eth1.

Попробуйте использовать следующий файл интерфейсов:

auto eth0 eth1iface eth0 inet static  address 172.19.20.186  netmask 255.255.255.252iface eth1 inet static  address 172.18.182.55  netmask 255.255.254.0  gateway 172.18.182.1  up route add -net 172.19.26.0/23 gw 172.19.20.185 dev eth0  up route add -net 172.19.24.0/23 gw 172.19.20.185 dev eth0

РЕДАКТИРОВАТЬ: Попробуйте сделать это, чтобы вручную настроить интерфейсы, чтобы мы могли увидеть, в чем ошибка.

  1. Выключите все интерфейсы: ifconfig eth0 down; ifconfig eth1 down; ifconfig eth2 down; ifconfig eth3 down
  2. Настройка eth0: ifconfig eth0 172.19.20.186 netmask 255.255.255.252 up
  3. Настройка eth1: ifconfig eth1 172.18.182.55 netmask 255.255.254.0 up
  4. Настройка шлюза по умолчанию: route add default gw 172.18.182.1
  5. Настройка первого статического маршрута: route add -net 172.19.26.0/23 gw 172.19.20.185 dev eth0
  6. Настройка второго статического маршрута: route add -net 172.19.24.0/23 gw 172.19.20.185 dev eth0

Иногда очистка интерфейса перед его запуском работает:

ip addr flush dev enp2s0

Скорее всего, ваш NetworkManager находится в конфликте с /etc/network/interfaces. Я не уверен в случае dhcp, но если вы настроили статические IP-адреса с помощью графического интерфейса NetworkManager, то эти интерфейсы были бы определены в двух отдельных местах, отсюда и конфликт.

Попробуйте отключить сетевой менеджер, используя следующие команды.

exec sudo -isystemctl stop NetworkManager.servicesystemctl disable NetworkManager.servicemv /lib/systemd/system/NetworkManager.service NetworkManager.service.res

вы можете снова включить свой сетевой менеджер, выполнив

exec sudo -imv /lib/systemd/system/NetworkManager.service.res  NetworkManager.servicesystemctl enable NetworkManager.servicesystemctl start NetworkManager.service

после этого ваша конфигурация из /etc/network/interfaces будет взята при перезагрузке.

Две вещи, которые вы, возможно, захотите проверить 1. Может быть опечатка ethI, а не eth1
2. Вероятно, вы не добавили сетевой интерфейс на виртуальную машину