ルーターの設定とは?
外部ネットワークにサーバーを公開する場合に、ルータの設定を変更する
必要があります。通常ルータでは、LAN側から出たパケットを見てテーブルに
登録して、返信パケットもそのテーブルを元に転送しています。
つまり、インターネット側からきたパケットは、テーブルに設定されていませんので
必要ないパケットとして捨ててしまうことになります。
これではせっかくサーバーを設置しても、インターネットに公開できませんね。
そこで、以下のようなテーブルを手動で設定してやる必要があるのです。
我が家のルーターを例に設定方法をご紹介します。
ポートマッピング設定
ルータの管理画面で、ポートマッピング設定もしくはIPフィルタやNATテーブル設定
などと言った項目があるはずです。
(我が家のルータではポートマッピング設定でした)
・設定方法
通過させるポート番号と転送先(LAN内のIPアドレス)を指定します。
WWWサーバーであればポート番号:80、宛先にWWWサーバーの
ローカルIPアドレスを設定します。
・テーブルを設定する理由
通常、WWWサーバーなどは相手から来るパケットを待ち受けています。
※自分から通信を開始しないはずです。(する場合もあるかも?)
ここで、先に設定したテーブルが生きてきます。インターネット側からルータの
グローバルIPアドレスにきたポート番号:80のパケットはWWWサーバーに転送
されるのです。(テーブルに設定されているので捨てられません)
これで、パケットを待ち受けているWWWサーバーに無事にパケットが届きますね。
WWW以外も同様にポート番号と転送先IPアドレスを登録すれば公開できるのです。
※セキュリティを考慮して、必要なポートのみ設定しましょう。
ポートが開いているということは、あなたのマシンが外部(インターネット)から
見えていることになります。
通信サービスとポート番号について
Linuxの場合、通信サービスとポート番号は「/etc/services」ファイルに記述されています。
新たにサービスを開始する際は、対応するサービスとポート番号を確認しましょう。
以下が主なポート番号と通信サービスです。(特に指定がない限り)
プロトコル |
ポート番号 |
HTTP(WWW) |
TCP/80 |
HTTPS |
TCP/443 |
SMTP |
TCP/25 |
POP |
TCP/110 |
FTP |
TCP/20 (データ)
TCP/21 (制御コマンド) |
SSH |
TCP/22 |
TELNET |
TCP/23 |
DNS |
TCP/53
UDP/53 |
Copyright(c) 2005, All Rights Reserved.