Gents,<br>
<br>
one of interfaces of my computer looks into the outside world. I protect it with<br>
'src not "${UNROUTEABLE_IPS}"' clause.<br>
<br>
Transparent proxy configured with "transparent_squid 3128 proxy" helper.<br>
<br>
When I "telnet <a href="http://sf.net">sf.net</a> 80" from the firewall I've got the following in firewall's syslog:<br>
Jan 14 12:15:42 blues kernel: 'OUT-unknown:'IN= OUT=world
SRC=<a href="http://85.202.141.172">85.202.141.172</a> DST=<a href="http://127.0.0.1">127.0.0.1</a> LEN=60 TOS=0x10 PREC=0x00 TTL=64
ID=17371 DF PROTO=TCP SPT=52401 DPT=3128 WINDOW=5840 RES=0x00 SYN URGP=0<br>
<br>
Why does it happen?<br>
<br>
When locally generated packet originates to <a href="http://sf.net">sf.net</a> it gets redirected by the following<br>
rule in NAT table (produced by transparent proxy helper):<br>
0 0 REDIRECT tcp  --  any any anywhere anywhere redir ports 3128<br>
<br>
Redirection means that destination is simply changed to <a href="http://127.0.0.1">127.0.0.1</a> so the<br>
packet gets the following attributes: OUT=world SRC='world address' DST=<a href="http://127.0.0.1">127.0.0.1</a> .<br>
<br>
After NAT table processing packet is ruled to the OUTGOING chain.<br>
<br>
OUTGOING chain has a jump to user-defined chain for world interface.<br>
And world interface chain itself has "0 0 RETURN all -- any any anywhere <a href="http://96.0.0.0/3">96.0.0.0/3</a>"<br>
rule (remember unroutable ips protection?).<br>
<br>
Thus, every packet outgoing to world interface with DST=<a href="http://127.0.0.1">127.0.0.1</a> gets returned<br>
to the OUTPUT chain and gets dropped at the end of it.<br>
<br>
If I remove unrouteable ips protection everything gets processed fine.<br>
<br>
How could I use transparent proxy with unrouteable ips protection on?<br>
<br>
It would help if REDIRECT changed interface to 'lo' as well as DST address.<br>
Unfortunately this is not the case here.<br>
<br>
-- Max<br>
<br>