ipfw fwd
Чтобы понедельник вам был добрым!
Столкнулся с следующей задачей: требуется построить инет на проксе через второй канал инета.
Дано:
2 внешних ИП от прова в разных сетях
1 внутр. ИП в лок сети
есть дефалтовый роутер, вторая сетевуха в нешний инет доступ имеет
squid, непрозрачный
Сделать:
Разделение трафика по 2-м каналам: 1 канал используется почтой(MX завязян), 2 канал читсо под инет.
Решение:
Прикинув как работает squid c http, решил сделать форвардинг 80 порта 2-го канала на 1-й канал, т.к. squid по умолчанию идет на дефаултроутер, при этом запретив обращения исходящие с 1-го канала на 80 порт:
net.inet.ip.forwarding: 1
net.inet.ip.fastforwarding: 0
deny tcp from 169.255.3.233 to any dst-port 80 out
fwd 169.255.3.233,80 tcp from 89.189.XXX.XXX to any dst-port 80
где 169.255.3.233 1-й канал (проброс портов)
89.189.XXX.XXX -соответственно второй канал, где и надо повесить инет
squid.conf:
tcp_outgoing_address 89.189.XXX.XXX our_network
НО при любым обращениях на проксю - трафик все равно идет по первому каналу, смотрел маны,форумы,доки - че-то никак не получается...
Подскажите как реализовать эту фигню...
P.S.: есть возможность поставить отдельный сервак и повесить на него squid, тем самым проблема будет решена, но мы не ищем легких путей! :-)
=======
ipfw:
----
${ipfw} add 100 check-state
${ipfw} add 101 allow icmp from any to any
${ipfw} add 102 deny icmp from any to any in icmptype 5,9,13,14,15,16,17
${ipfw} add 103 allow ip from any to any via lo0
${ipfw} add 110 allow tcp from 169.255.3.233 to any
${ipfw} add 112 allow udp from 169.255.3.233 to any
${ipfw} add 114 allow tcp from any to 169.255.3.233
${ipfw} add 116 allow udp from any to 169.255.3.233
${ipfw} add 120 allow tcp from 169.255.2.233 22,23,25,53,110,8080 to any
${ipfw} add 122 allow udp from 169.255.2.233 22,23,25,53,110,8080 to any
${ipfw} add 124 allow tcp from any to 169.255.2.233 22,23,25,53,110,8080
${ipfw} add 126 allow udp from any to 169.255.2.233 22,23,25,53,110,8080
${ipfw} add 130 allow tcp from 169.255.1.50 to any
${ipfw} add 132 allow udp from 169.255.1.50 to any
${ipfw} add 134 allow tcp from any to 169.255.1.50
${ipfw} add 136 allow udp from any to 169.255.1.50
${ipfw} add 140 allow tcp from 89.189.XXX.XXX to any
${ipfw} add 142 allow udp from 89.189.XXX.XXX to any
${ipfw} add 144 allow tcp from any to 89.189.XXX.XXX
${ipfw} add 146 allow udp from any to 89.189.XXX.XXX
##### UDP
${ipfw} add 150 allow udp from any to any
##### 25 PORT BLOCKED + Trojan
${ipfw} add 500 allow tcp from 169.255.1.0/24 to 169.255.2.233 25
${ipfw} add 502 allow tcp from 169.255.2.0/24 to 169.255.1.50 25
${ipfw} add 504 allow tcp from 169.255.2.0/24 to 169.255.2.233 25
${ipfw} add 506 deny tcp from 169.255.2.0/24 to any 25,80,81,1033,5000
${ipfw} add 508 deny tcp from 169.255.1.0/24 to any 25,80,81,1033,5000
##### LAN =>
${ipfw} add 550 allow tcp from 169.255.2.0/24 to any
${ipfw} add 552 allow tcp from any to 169.255.2.0/24
${ipfw} add 553 deny tcp from 169.255.3.233 to any 80 out
${ipfw} add 554 fwd 169.255.3.233,80 tcp from 89.189.XXX.XXX to any 80,8080