Intereting Posts
Как подключиться к беспроводной сети 802.1x через nmcli Как «grep» для длины строки в заданном диапазоне? Где я могу найти RPM для mailfromd для CentOS 6? Команда Bash для закрытия всех отдельных запущенных программ с помощью экрана GNU? Как перенаправить и использовать фреймбуфер? rsync для удаленного сервера без пароля Установка devtoolset-1.1 завершается неудачно с док-контейнером Centos 7 после нескольких месяцев работы Остановка вывода из программы, выполняемой в сеансе SSH СЕЙЧАС На лету сжатие читаемой и записываемой папки (например, Windows EFS)? Восстановить часть пакета, который был случайно удален Невозможно монтировать разделы! Применение NAT для трафика из туннеля GRE в OpenBSD PF Ограничьте / proc / mounts, чтобы избежать воздействия / run / user / Я уничтожил данные на диске? Какой инструмент вы используете для монтирования гибкого USB-накопителя с плиткой wm

как установить, какой маршрут будет добавлен при подключении интерфейса вверх

У меня есть два интерфейса на одной машине, одна – это интернет-соединение, которое получает свой IP-адрес от DHCP, без проблем.

Другой интерфейс (eth1) относится к локальным машинам, и он имеет gateway 192.168.3.1 , установленный в его файле конфигурации (дистрибутив на основе Ubuntu).

Проблема в том, что когда я привожу интерфейс eth1 , он автоматически добавляет маршрут по умолчанию (0.0.0.0) к таблице маршрутов (как и должен делать), и я не могу подключиться к Интернету, так как он пытается отправьте пакеты в локальную сеть. До сих пор мне приходилось делать это вручную, удаляя маршрут по умолчанию с помощью шлюза 192.168.3.1 .

Есть ли способ установить, что он не добавит маршрут по умолчанию, как только я открою интерфейс? Мне все еще нужен gateway 192.168.3.1 чтобы оставаться в файле конфигурации, так как у меня должен быть определенный маршрут к сети 3.x

Вот моя таблица маршрутов:

 192.168.3.0 * 255.255.255.0 U 0 0 0 eth1 192.168.1.0 * 255.255.255.0 U 0 0 0 eth0 default 192.168.3.1 0.0.0.0 UG 100 0 0 eth1 default DD-WRT 0.0.0.0 UG 100 0 0 eth0 

Не объявляйте 192.168.3.1 в качестве шлюза. Шлюз в значительной степени означает «маршрут по умолчанию». Если адрес интерфейса находится в сети 192.168.3.1/24, то netmask 255.255.255.0 – это все, что вам нужно.

Если это не так, добавьте любой маршрут, который вам нужен, как часть скрипта настройки интерфейса. В Debian / Ubuntu поместите предложение up в /etc/network/interfaces или добавьте скрипт в /etc/network/if-up.d . Командой для запуска является route add 192.168.3.1 eth1 && route add -net 192.168.3.0/24 gw 192.168.3.1

Сначала ip route list а затем снова проверьте их на интерфейсе eth1. Поместите то же самое в файл /etc/sysconfig/network-scripts/route-eth1 чтобы каждый раз при перезапуске интерфейса настраивалась конфигурация маршрута из файла интерфейса. С другой стороны, если вы хотите выполнить что-то специально для этого, вы можете поместить в /etc/rc.d/init.dnetwork скрипт, чтобы сделать это для вас каждый раз, когда сеть перезапускается, он также прочитал бы route-eth1 файл и применить конфигурацию маршрута.