ひとりごと

新しい記事:[975]  古い記事:[973] 表示単位 :

ついったー[おとなり日記] かがみさん Y.Kumagaiさん

2003/10/18 (土)

・ Bフレッツ NAT箱の実験

てなわけで、予想をはるかに超える大変さにやる気がなくなってきたのですが(笑)、せっかくなのでもう一息。今度は本番で T20 サーバでの実装です。

                  Bフレッツ       Ethernet
インターネット <----------- T20 ----------- おうちLAN
                        tun0    fxp0        (10.0.0.0/24)
                     x.x.x.x    10.0.0.1
                    (global)
こちらもハマりましたが、とりあえず動くようになったので、忘れてしまう前に下に書いておきます。
  1. /etc/rc.conf
    ppp_enable="YES"
    ppp_nat="NO"
    ppp_mode="ddial"
    ppp_profile="プロファイル名"
    firewall_enable="YES"
    firewall_script="/etc/firewall"
    natd_enable="YES"
    natd_flags="-dynamic -punch_fw 29000:1000"
    natd_interface="tun0"
  2. /etc/firewall というシェルスクリプトを作る。rc.firewallをベースにして作成。
  3. ppp.linkup
    MYADDR:
    ! ipfw add 10100 allow tcp from any to MYADDR 25 setup ←SMTP
    ! ipfw add 10200 allow tcp from any to MYADDR 80 setup ←HTTP
    ! ipfw add 10300 allow tcp from any to MYADDR 110 setup ←POP3
    ! ipfw add 10400 allow tcp from any to MYADDR 8080 setup ←Delegate
    ! ipfw add 10500 allow udp from any to MYADDR 123 ←NTP
    ! ipfw add 10600 allow udp from any 5000 to MYADDR in via tun0 ←vtun
  4. ppp.linkdown
    MYADDR:
    ! ipfw delete 10100 10200 10300 10400 10500 10600
  5. natdの設定ファイルを作って -redirect_port とかを並べる・・・・と思うのだけれど、今回はT20がそのままWWWサーバとかメールサーバとかを兼ねてるので穴を開けるだけで動きました。

ipfwは

というつもりで書いています。意図した通りに動作するかどうかは別問題ですが(笑)。

ということで、簡単に出来ると思ってたのにいざやってみると3日もかかってやれやれなのですが、なんとか動くようになりました。さんざん苦労して前より良くなったのは『必要なICMPが通るようになった』だけ(笑)なのですが、ipfwが常に動いている状態にはなりましたので、よくわからんアタックがあったときにルールを追加して制限をかけることが簡単になりましたし、ひとまずこれで良しとしておきましょう。

# あと、ユーザpppを使わない構成に組み替え可能になったのもぐっど
[つっこみ]

新しい記事:[975]  古い記事:[973] 表示単位 :
※このページへのリンクは自由です。リンクの方法については[つっこみ]で表示されるページの最後をごらんください。
たかたに(takatani@mars.dti.ne.jp)