花井様、リプライありがとうございます。 On Sat, Jan 15, 2005 at 11:48:09AM +0900, K Hanai wrote: > From: "K.Tahara" <taharak@xxxxxxxxxxxxxxx> > > iptables -t nat -A OUTPUT -p tcp --dport 80 > > -m owner ! --uid-owner 23 -j REDIRECT --to-port 3128 > > TransparentProxy (mini HOWTO) によると、この時のコマンドは、 > iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 > -j REDIRECT --to-port 3128 > を使うとしています。こうしてみるとどうでしょうか? 私のネットワークの構成は、 [LinuxBox=1台のMac] -> [ADSLモデム(NTTのMN4)] -> [インターネット] となっています。 natテーブルのPREROUTINGチェインは利用できないと思っています。 念のためご指摘の設定で、w3mからsquidを経由してインターネットにつながるか 試してみましたが、だめでした(/var/log/squid/access.logが更新されず)。 > なお、Packet Filtering HOWTO によると、チェーン OUTPUT > の出力先は POSTROUTING かネットワークインターフェース > そのものですから、OUTPUT にルールを設定しても、その > ルールを通ったパケットは、squid などマシン内部で動いて > いるプロセスには渡されない、と思うのですが。 私も以前はそのように思っていました。 しかしVine2.6では、同一マシン内でwebブラウザ(w3m、mozilla、dillo等)から、 私の提示した方法でsquidにパケットを渡すことが可能でした。 (実は今も主に用いている2.6ではこのように運用しています。 3.1は試験用のパーティションで試している段階です) ただし、<http://www.google.co.jp/>で検索しても、nat-OUTPUTチェインを利用する方法は 探せませんでしたので、iptablesの本来の動作ではないのかもしれません。 いずれにしろ、natテーブルのOUTPUTチェインが、書き込み可能だが機能しない状況と考えていますので、 何らかの情報があればお願いします。 -- K.Tahara