YahooBB回線用にFreeBSD機を余剰パーツで組み立てて設定してみました。てことで、下記はやったこと。ちなみに、使ったのは FreeBSD 5.2-RC1 #0 です。
make_resolv_conf() {を入れる。dhclientではアドレスを得たときに勝手に /etc/resolv.conf を書き換えてくれるのですが、書き換えてほしくないときに関数を上書きすることができるので、このタイミングを利用して fetchmail (ダイナミックDNSの更新)と ipfw の外から来る方向の穴あけ。 /etc/dhclient-exit-hooks というのもあるらしいのですが、こちらはアドレスを返却したときに呼ばれるのかと思っていたらそうではなくて、アドレス取得の手続きが完了してから呼ばれるのだそうです。よって ipfw delete はdhclient-enter-hooksの頭で記述。
/usr/local/bin/fetchmail -c >/dev/null
ipfw delete 10100 10200 10300 10500 10600
ipfw add 10100 allow tcp from any to $new_ip_address 25 setup via $interface
ipfw add 10200 allow tcp from any to $new_ip_address 80 setup via $interface
ipfw add 10300 allow tcp from any to $new_ip_address 110 setup via $interface
#ipfw add 10400 allow tcp from any to $new_ip_address 8080 setup via $interface
ipfw add 10500 allow udp from any to any 123 via $interface
#ipfw add 10600 allow udp from any 5000 to $new_ip_address in via $interface
}
□ 関連記事