LINUX.ORG.RU
решено ФорумAdmin

Переброс пакетов со шлюза на шлюз


0

1

Сначала вопрос: Как организовать переадресацию пакетов с одного шлюза на другой? Подручные средства: iptables, route, squid.

Теперь суть. У нас имеется шлюз, который в данный момент обрабатывает весь внешний обмен: интернет и ipsec. Чтобы не загружать особо ipsec решили подключить второй интернет и поставили роутер, который находится в локальной сети. В настоящий момент есть идеи по переносу второго роутера на один свитч с первым и балансировка канала по двум провайдерам. Правда, ето может занять довольно много времени и не без глюков для начала (в то время, как важно качество работы в ущерб правильной архитектуре) и как план B я хочу просто перебрасывать некоторые пакеты со шлюза на второй роутер, который во внутренней сети. Так вот, как ето сделать, чтобы пакет мог обработать squid, а потом перекинуть на второй шлюз?

В линуксе можно маршрутизировать трафик на основании правил. Гугли routing policy. Роутить трафик по имени локальной программы, его порождающей, вроде как нельзя. Поправьте если отстал от жизни.

Yur4eg ★★
()
Ответ на: комментарий от Yur4eg

А про какую локальную программу вы говорите? Мне надо просто, чтобы на шлюзе локальный трафик резался SQUID-ом и при наличии некоторых адресов в dst отправлялся не через основной канал на другой сетевой карте шлюза, а обратно через локалку на роутер. Надеюсь, понятно мысль выразил..

abr_linux
() автор топика

Поставь два сквида и заверни один в другой.

thesis ★★★★★
()
Ответ на: комментарий от Yur4eg

В линуксе можно маршрутизировать трафик на основании правил. Гугли routing policy. Роутить трафик по имени локальной программы, его порождающей, вроде как нельзя. Поправьте если отстал от жизни.

Есть одна хитрость. Если есть два процесса, которые отправляют данные, то можно запустить их от разных пользователей и через iptables -m owner отсортировать трафик.

iron ★★★★★
()
Ответ на: комментарий от iron

Давно есть, модуль owner:

   owner
       This  module  attempts to match various characteristics of the packet creator, for locally-gener-
       ated packets.  It is only valid in the OUTPUT chain, and even this some  packets  (such  as  ICMP
       ping responses) may have no owner, and hence never match.

       --uid-owner userid
              Matches if the packet was created by a process with the given effective user id.

       --gid-owner groupid
              Matches if the packet was created by a process with the given effective group id.

       --pid-owner processid
              Matches if the packet was created by a process with the given process id.

       --sid-owner sessionid
              Matches if the packet was created by a process in the given session group.

       --cmd-owner name
              Matches  if the packet was created by a process with the given command name.  (this option
              is present only if iptables was compiled under a kernel supporting this feature)

       NOTE: pid, sid and command matching are broken on SMP

berrywizard ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.