Задача:
Есть прокси:
Linux Slackware 10
Squid 2.5 Stable6
2 два внешних канала.
Нужно:
Чтобы вся внешка шла через первый канал, а внутренняя сеть второго
провайдера(чат, форум и т. д.) что по второму каналу, причем через
шлюз не принадлежащий моему администрированию.
Так как внешка по трафику (первый провайдер), а внутренняя сетка
второго прова UNLIMITED. Зечем платить дважды.
Предисловие:
Я много искал в инете как это сделать, но вразумительного ответа не
получал, никто не мог мне помочь, так как никогда не сталкивался с
такой проблеммой. Я решил методом научного тыка сомому попробовать
решить проблему.
Решение:
INET_IP_1=1.1.1.1 # eth0 реальный IP первого канала.
INET_IP_2=2.2.2.1 # eth1 соединение через шлюз.
INET_IP_2_GW=2.2.2.100 # IP адрес шлюза
LAN_IP=192.168.0.1 # внутренняя сетьroute add -net 3.3.0.0/16 gw 2.2.2.100 dev eth1 #прописываем маршрут до
сетки второго провайдера.
В настройка сквида надо сделать так:
acl INET2 dst 3.3.0.0/16 # создаем acl для сетки второго провайдера
acl all src 0.0.0.0/0.0.0.0 # по умолчанию acl для всех остальных
tcp_outgoing_address 2.2.2.1 INET2 # если мы идем на сетку второго
провайдера, то исходящий ip будет 2.2.2.1
never_direct deny INET2
never_direct allow allЕсли у вас реальный IP второго провайдера, то роут можно не прописывать.
А вместо tcp_outgoing_address "реальный ip второго канала" INET2.перезапускаем сквид и наслаждаемся инетом.
Если что напутал готов выслушать критику!
>Задача:
> Есть прокси:
> Linux Slackware 10
> Squid 2.5 Stable6
> 2 два внешних канала.
> Нужно:
> Чтобы вся внешка шла через первый канал, а
>внутренняя сеть второго
> провайдера(чат, форум и т. д.) что по второму
>каналу, причем через
> шлюз не принадлежащий моему администрированию.
> Так как внешка по трафику (первый провайдер), а
>внутренняя сетка
> второго прова UNLIMITED. Зечем платить дважды.
> Предисловие:
> Я много искал в инете как это сделать,
>но вразумительного ответа не
> получал, никто не мог мне помочь, так как
>никогда не сталкивался с
> такой проблеммой. Я решил методом научного тыка сомому
>попробовать
> решить проблему.
> Решение:
> INET_IP_1=1.1.1.1 # eth0 реальный IP первого канала.
> INET_IP_2=2.2.2.1 # eth1 соединение через шлюз.
> INET_IP_2_GW=2.2.2.100 # IP адрес шлюза
> LAN_IP=192.168.0.1 # внутренняя сеть
>
>route add -net 3.3.0.0/16 gw 2.2.2.100 dev eth1 #прописываем маршрут до
> сетки второго провайдера.
>В настройка сквида надо сделать так:
> acl INET2 dst 3.3.0.0/16 # создаем acl для сетки второго провайдера
>
> acl all src 0.0.0.0/0.0.0.0 # по умолчанию acl для всех остальных
>
> tcp_outgoing_address 2.2.2.1 INET2 # если мы идем на сетку второго
> провайдера, то исходящий ip будет 2.2.2.1
> never_direct deny INET2
> never_direct allow all
Мои извенения тут надо сделать чуть по другому
always_direct allow INET2
never_direct allow all
>
>Если у вас реальный IP второго провайдера, то роут можно не прописывать.
>
>А вместо tcp_outgoing_address "реальный ip второго канала" INET2.
>
>перезапускаем сквид и наслаждаемся инетом.
>
>Если что напутал готов выслушать критику!