お手軽 NAT TX-ERROR 対策
いろんなサイトに書かれてるこれ(NAT TX-ERROR hogehoge....)は、NATテーブルが溢れてしまうために起こるもの。
良く分からない人のために書いておくと、、インターネット上の相手と通信するためにはグローバルアドレスじゃないとだめなんす。で、このグローバルアドレスってのはプロバイダ等から割り当てられるもので、家庭なんかだとIP 1つってのが普通。
IPが1つじゃパソコンが1台しかつなげないので、プライベートに勝手にIPを割り当てておいて、インターネット上に出るときだけグローバルアドレスに変換してあげましょう、というのがこのNATというもの。そしてその機能を担うのが、よくあるブロードバンドルーターという装置。
ルーターを境界に、上流はグローバルアドレス、下流はプライベートアドレスになっているわけですね。
で、このローカルIP,portと通信相手のIP,port の対応表を保持しているのがNATテーブルと呼ばれるものです。これが溢れてしまって、新しいエントリを登録できなくなる(新しい通信が開始できなくなる)ことを、NATテーブルの溢れと呼んでいます。
うちでも起きてます
うちも安物のへっぽこルーターなので、この問題は相当昔から発生していました。
発生するとその後一切の通信ができなくなるわけではなく、有効期限が切れてテーブルが開放されればまた通信できるようになるんですよね。
発生頻度もそう多くはありませんでしたので、有効期限を短めに設定することでしのいでいました。
現在3分持ちません^^
詳しくは述べませんが、逆引きして相手の素性を調べるような仕掛けを突っ込んであります。
なんだかこのところいろんなところからのアクセスが多くて(主にメール...)、どばば~っと逆引きが走り、あっという間に NAT TX-ERROR が出るようになってしまいました(汗)。
ルーター再起動後、3分持ちません。
解決法
要は、NATテーブルに負担をかけずに名前が引ければよいと、いうことです。
ほとんどのルーターにはキャッシュサーバーな機能を積んでいますので、それを利用して名前解決を行えば、NATを経由せずに名前解決が行えると、そういう理屈。
今まで ローカルにあるキャッシュサーバーや、プロバイダのdnsサーバを指定していたネームサーバーの設定のところに、ブロードバンドルーターのIPを指定します。
実際にこのやり方で NAT TX-ERROR が解消しました。ルーターには負担をかけますが、今のところルーターが落ちる,おかしな情報を返すなどの問題は発生していません。
うちは内部にもう1つキャッシュサーバ(dnscache)がいるので、dnscache をFORWARDONLYに設定し、その向きをブロードバンドルーターにしています。そして内部にある全てのPCは、このキャッシュサーバーを見るようにしてあります。
具体的には次のように設定。(ルーターのIPが192.168.1.1の場合)
# echo 1 > /service/dnscache/env/FORWARDONLY
# 192.168.1.1 > /service/dnscache/root/servers/@
内部にもう1つキャッシュサーバーを作る意味があんのかよ?ってあたりについては、あるのです。
外部に公開してるサーバーがローカルな環境にある場合、内部からの問い合わせならプライベートIPを返さないと不便でしょ。普通にブロードバンドルーターでそういうものの名前を引くと、グローバルアドレスを返すわけで。
内部環境の逆引きもブロードバンドルーターのキャッシュサーバーではできませんが、もう1段キャッシュサーバーを入れてちゃんと設定しておけば、内部環境の逆引きもできるようになります。
ついでにキャッシュサイズをでかくしておくとトラフィックを減らすのにも貢献します。
へぼルーターで頑張ろう
そろそろまともなルーターを買わないとダメかなぁ~とあきらめかけたのですが、どうにかなるものですね。
同様の問題で悩んでいる人がいたらぜひ試してみてください。
トピック
- FreeNASでファイルサーバーを作る
- 自宅サーバーを安定稼動させるテクニック
- お手軽software raid(ミラー) [FreeBSD gmirror]
- gmirrorのリビルド[FreeBSD]
- muninでWindows機を監視しよう
- 低価格ハードウェアRAID ARAID2000
- おうちサーバーの監視 その2(雷で切れまくるADSL)
- ホームサーバーに最適なPCとは
- 雷さまとUPS(落雷で停電する理由)
- 怪現象が起きる場合は湿度を疑え
- お手軽 NAT TX-ERROR 対策
- 情報漏洩を防ぐには
- 発想を変えて... 『古河の中学校で個人情報流出』
- PacketiX Desktop VPN インストールの種類
- PacketiX Desktop VPN は、Home Edition 以外のOS必須
- PacketiX Desktop の仕組み(概要のみ)
- Desktop VPN のインストール
- もう1つのDesktop VPN:Teratermのポートフォワード(ssh) + リモートデスクトップ
- スタイルシート
- その他
トラックバック
このエントリーのトラックバックURL: