MWAVEのずらずららblog

女優やグラビア系などのアイドルが好きな、半端に映画好きです。カメラとかも好きだったり。基本ものぐさです

squid×ipnat×dhcp

今日も、FreeBSDでだいぶ苦労してました。今日やったのは、ipnatとsquidを使って透過プロキシを実現することと、isc-dhcpによるDHCPです。



ipnatで、以下のようにしてポートフォワーディングをします。

rdr (LANインターフェース名) (squidサーバのIP)/32 port 80 -> (squidサーバのIP) port 80 tcp
rdr (LANインターフェース名) 0.0.0.0/0 port 80 -> (squidサーバのIP) port 8080 tcp

それで、squid.confに以下のことを書き加えます。

http_port 8080
httpd_accel_host virtual
httpd_accel_port 80
httpd_accel_with_proxy on
httpd_accel_uses_host_header on

これで、クライアント側でプロキシの設定をしなくても、HTTPについてはsquidによるプロキシが実現できました。でも、このやり方だけだとFTPなどでプロキシが使えないので、本当は、自動プロキシにした方が良いんでしょうけどね。



DHCPは、isc-dhcp3-server を使いました。ルータの設定で勘違いをしてしまって、手間取ってしまいましたが、あとは簡単でした。


ただ、今のところ、解決していない問題があります。

  • squid の設定をいくら変えても、refererを隠すことが出来ない
  • bind9と、dhcpdのログが出力できない。

前者は、プロキシの設定を確かめるサイト『���Ǥ���』では Referer を隠せているのですが、アクセスカウンターにはちゃんと Referer が出てしまっているんですよ。ただ、この件について調べているうちに、『Find browser extensions for Chrome, Firefox, Opera and Safari』という、Mozilla Firefoxリファラの送信の有無を選択できるツールを見つけました。これが結構便利なので、OKって事にしちゃいます。僕は別に、あってもなくても良い機能なので。
後者は、あれこれ調べてやってはいるんですけど、なぜか出来ないんですよ〜。どうしたものかなぁ。