@ Дэвид Шварц прав. Но вы также должны убедиться, что маски подсети установлены правильно. В приведенном выше случае вы хотите установить для масок подсетей обоих интерфейсов значение 255.255.255.0.
В исходном вопросе говорилось, что за обоими интерфейсами есть ЛВС (а не "Интернет"), поэтому вышеприведенное верно для этой ситуации.
Если вы хотите, чтобы машина перенаправляла трафик между подсетями (подсеть = LAN для целей этого), вам нужно убедиться, что вы echo 1
в /proc/sys/net/ipv4/ip_forward
а также убедиться, что ваш iptables
не установлен фильтровать что угодно. Если вы этого не сделаете, машины за обеими локальными сетями могут получить доступ к Linux, но не к другой локальной сети.
Теперь вы, кажется, хотите, чтобы интерфейс был доступен как в Интернете, так и в локальной сети. Это можно сделать, если в рассматриваемой ЛВС есть маршрутизатор, и вы знаете IP-адрес этого маршрутизатора. Вы должны установить шлюз Linux по умолчанию на IP-адрес и подсеть маршрутизатора. (Если в какой-либо локальной сети нет маршрутизатора к Интернету, то вы вообще не устанавливаете шлюз по умолчанию.)
То, что происходит, когда вы "перезапускаете eth1", вероятно, что eth1 получает IP через DHCP от маршрутизатора, и ваши IP-адреса и назначения маршрутов по умолчанию фактически меняются, когда вы делаете это.
Если ваш DHCP правильно настроен в локальной сети с маршрутизатором, с резервированием IP или подобным, вы, вероятно, можете просто позволить DHCP позаботиться об этом.