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

проблема маршрутизации Linux

У меня есть 2 маршрутизатора Linksys, на которых работает Linux и используется микропрограмма томата .. у обоих подключены интернет-линии, но только 1 действует как DHCP-сервер (маршрутизатор 1). Мне нужно добиться того, чтобы все пакеты поступали на маршрутизатор 1 из внутреннего IP-адреса, которые хотят получить доступ к Интернету, будут выходить на эту интернет-линию, но с 1 определенного порта, если маршрутизатор 1 обнаруживает пакеты с определенного исходного порта (например, http-порт: 80), он перенаправит этот пакет на маршрутизатор 2 и выйдет на Интернет оттуда ... Я нашел некоторые документы, которые дают решение, что мне понадобятся серверы Linux с 2-мя картами Ethernet, а затем мы подключаем обе интернет-линии на этом сервере и базу маршрутизации на нем, но я не хочу этого делать, потому что мой босс не хочет дополнительной работы по обслуживанию этого сервера, кроме того, он говорит, что сам маршрутизатор уже является Linux-сервером, так почему ... Я склонен соглашаться с его мнениями .. Может ли это быть сделано или отдельный Linux-сервер действует как маршрутизатор является обязательным? Заранее благодарю вас и с нетерпением жду ваших ответов .. Я новичок в сети Linux, и мне кажется, что я не в силах решить эту проблему :(

Искренне Ваш! Дык К

Из вашего описания (пакеты с исходным портом 80 почти всегда будут ответами на HTTP-запросы), похоже, что у вас есть HTTP-сервер, который, по вашему мнению, должен находиться за router2. Другими словами, пакеты приходят через router2 (или, возможно, router1, но это было бы ошибкой) на сервер, и сервер отвечал через router2. Вы хотите, чтобы весь остальной ваш интернет-трафик проходил через router1.

Я предлагаю внести небольшое изменение в маршрутизацию на сервере:

  • Измените маршрут по умолчанию для сервера на router2.
  • Создайте статический маршрут для вашей внутренней сети для маршрута к router1. (примечание: вы можете пропустить этот шаг, если ваш сервер находится в вашей внутренней сети; IP-стек будет обрабатывать это по умолчанию)

Вы можете сделать это только с одной сетевой картой на сервере, если это вас беспокоит, при условии, что у router1 и router2 есть интерфейсы во внутренней сети.

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

Это сложная установка. Возможно, вам будет проще переместить два подключения к Интернету на один маршрутизатор и добавить дополнительную VLAN и зону для второго подключения к Интернету.

Я бы посмотрел документацию для несколько ISPS на Shorewall сайт. Я считаю, что Tomato должен запустить Shorewall-lite (для этого потребуется другой сервер, способный создавать правила. Если нет, я считаю, что документация объясняет устанавливаемые правила. Вы можете запустить разделенное соединение, используя два маршрутизатора, используя адрес шлюза второго маршрутизатора в качестве второго пункта назначения маршрутизации. Если я понимаю ваши требования, я думаю, вам нужно только настроить маршрутизатор 1.

Не зная прошивки или других ограничений, сложно дать хороший ответ. Это, безусловно, можно сделать с использованием полной системы Linux, но это сложная настройка маршрутизации, которая может содержать интересные ошибки. Если возможно, я бы рекомендовал избегать такой настройки.

Пока ваше ядро ​​поддерживает маршрутизацию политики, вы должны иметь возможность более или менее следовать инструкциям Вот. Более полные инструкции можно найти Вот.

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