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

Два сетевых адаптера на Ubuntu Server 9.10 - не могут оба работать одновременно?

Я пытаюсь настроить два сетевых адаптера в Ubuntu (серверная версия) 9.10. Один для общедоступного Интернета, другой для частной локальной сети.

Во время установки меня попросили выбрать основной сетевой адаптер (eth0 или eth1). Я выбрал eth0, дал установщику детали, перечисленные ниже в содержании /etc/network/interfaces, и продолжил. Я использую этот адаптер с этими настройками последние несколько дней, и все было в порядке.

Сегодня я решил, что пора настроить локальный адаптер. Я редактирую /etc/network/interfaces чтобы добавить детали для eth1 (см. ниже), и перезапустите сеть с помощью sudo /etc/init.d/networking restart.

После этого попытка проверить связь с машиной, используя ее внешний IP-адрес, не удалась, но я могу проверить связь с ее локальным IP-адресом.

Если я отключу eth1 с помощью sudo ifdown eth1, Я снова могу успешно пропинговать машину через внешний IP-адрес (но, очевидно, не через внутренний IP-адрес). Резервное копирование eth1 возвращает нас к исходному состоянию проблемы: внешний IP-адрес не работает, внутренний IP-адрес работает.

Вот мой /etc/network/interfaces (Я удалил информацию о внешнем IP-адресе, но эти настройки не изменились с того момента, когда он работал)

rob@rhea:~$ cat /etc/network/interfaces
# 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 (public) network interface
auto eth0
iface eth0 inet static
        address xxx.167.218.118
        netmask 255.255.255.240
        network xxx.167.218.112
        broadcast xxx.167.218.127
        gateway xxx.167.218.126

# The secondary (private) network interface
auto eth1
iface eth1 inet static
        address 192.168.99.4
        netmask 255.255.255.0
        network 192.168.99.0
        broadcast 192.168.99.255
        gateway 192.168.99.254

Затем я делаю это:

rob@rhea:~$ sudo /etc/init.d/networking restart
 * Reconfiguring network interfaces...                                   [ OK ]
rob@rhea:~$ sudo ifup eth0
ifup: interface eth0 already configured
rob@rhea:~$ sudo ifup eth1
ifup: interface eth1 already configured

Затем с другой машины:

C:\Documents and Settings\Rob>ping xxx.167.218.118

Pinging xxx.167.218.118 with 32 bytes of data:

Request timed out.
Request timed out.
Request timed out.
Request timed out.

Ping statistics for xxx.167.218.118:
    Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),

Вернемся к рассматриваемому серверу Ubuntu:

rob@rhea:~$ sudo ifdown eth1

... и снова на другой машине:

C:\Documents and Settings\Rob>ping xxx.167.218.118

Pinging xxx.167.218.118 with 32 bytes of data:

Reply from xxx.167.218.118: bytes=32 time<1ms TTL=63
Reply from xxx.167.218.118: bytes=32 time<1ms TTL=63
Reply from xxx.167.218.118: bytes=32 time<1ms TTL=63
Reply from xxx.167.218.118: bytes=32 time<1ms TTL=63

Ping statistics for xxx.167.218.118:
    Packets: Sent = 4, Received = 4, Lost = 0 (0% loss),
Approximate round trip times in milli-seconds:
    Minimum = 0ms, Maximum = 0ms, Average = 0ms

Итак ... что я делаю не так?

Решено Исправление сначала для удаления информации о шлюзе из раздела eth1 (как предложил MikeyB), а затем удаления маршрута для сетевого адреса eth1 из таблицы маршрутизации как такового:

sudo route del -net 192.168.99.0 netmask 255.255.255.0 dev eth1

У вас почти наверняка не должно быть двух шлюзов по умолчанию.

Попробуйте удалить шлюз по умолчанию из раздела eth1 и посмотрите, поможет ли это.