ポートフォワーディングとは何か、何に使うのか
ポートフォワーディングについては、いろいろな質問がありますが、ポートフォワーディングとは何か、何に使うのかを明確に書いているものはないようです。そこで:
- ポート転送とは何ですか?何に使うのか、なぜ必要なのか?
ポートフォワーディングについては、いろいろな質問がありますが、ポートフォワーディングとは何か、何に使うのかを明確に書いているものはないようです。そこで:
ポートフォワーディングの説明をするには、まず ルーター が何をしているのかをもう少し理解しておく必要があります。インターネットサービスプロバイダは、インターネット接続に1つのIPアドレスを割り当てています。インターネット上のすべてのコンピュータは、一意のIPアドレスを必要としますが、あなたはあなたの家で複数のコンピュータを持っていると1つのアドレスだけです。では、これはどのような仕組みになっているのでしょうか?
それが何であるかを知っていて、それを行う方法を知りたいだけなのであれば . http://portforward.com/ は、文字通り何百もの異なるルーターのためのスクリーンショットとハウツーを持っています。ドキュメントは、彼らの自動ポート設定ツールの広告ページの後ろに隠されています。(少しクリックすれば見つかります。)
ご家庭のルーターには、ネットワークアドレス変換(NAT)と呼ばれる機能が内蔵されています。ネットワークの中では、192.168.1.100のようなアドレスを持っています。192.168.1.100のようなアドレスがありますが、192.168.1.100の範囲(または10.*の範囲)にあるアドレスは、全て_ プライベート“または 予約済み”のアドレスです。これらのアドレスは、プライベートネットワーク内で使用するためにIANAによって公式に割り当てられています。ルータは、DHCPを介して接続された各コンピュータに自動的にそのようなアドレスを割り当てます。このアドレスは、ネットワーク内のコンピュータがルータや他のコンピュータと通信する方法を示しています。このインターフェイスは、ISPによって割り当てられた非常に異なるアドレスを持っています。これは前に述べたアドレスで、ルータはこのアドレスを使ってインターネット上の他のコンピュータと通信します。あなたのネットワーク内のコンピュータは _non-routable private IPアドレスを持っています。つまり、インターネットに直接パケットを送信すると、パケットは自動的にドロップされます(プライベートアドレスを持つパケットは安定性の理由からインターネットを通過することは許されていません)。しかし、あなたのルータはroutableアドレスを持っています。ネットワークアドレス変換は、その名が示すように、この2種類のアドレスの間を翻訳し、ネットワーク内の複数のコンピュータが1つのアドレスを持つ1つのコンピュータとしてインターネット上に表示されるようにします。ネットワーク内のコンピュータがインターネット上のコンピュータに接続するたびに、ルータに接続要求を送信します(そのDefault Gatewayパラメータがルータのアドレスに設定されているので、ルータに送信することを知っています)。ルータは、その後、その接続要求(TCP/IPの “SYN要求")を取り、ソースアドレス( "返信 "またはリターンアドレス)を変更し、応答がルータに送信されるように、コンピュータのプライベートIPからルータのパブリックIPにそれを変更します。ルータは、接続が開始されたことをデータベース(NATテーブル_と呼ばれる)に記録し、後でそれを記憶するようにします。このようにして、パケットはネットワーク間を行ったり来たりしながら、ルータが透過的にアドレスを変更して動作するようにして、転送を続けることができます。接続が終了すると、ルータはNATテーブルからそれを削除します。彼らは米国内の多くの顧客に荷物を送る必要がありますが、税関やペーパーワークの都合上、一箇所にしか荷物を送ることができません。そのため、中国の顧客(この例ではプライベートネットワーク)から、米国のどこか(インターネット)に実際の宛先があるパッケージがあなたのところに来たとします。箱に貼られている宛名ラベルをアメリカ(パブリック)の住所に変更し、返送先を自分のパブリックアドレスに変更して(顧客に迷惑をかけずにそのまま中国に返送することはできないので)、郵便局に手渡します。お客さんが返品してきた場合は、あなたのところに来ます。あなたはそれをあなたの記録で調べて中国のどこの会社から来たのかを確認し、宛先をその会社(その会社のプライベートアドレス)に、返送先をあなたのプライベートアドレスに変更して、あなたを通して交換品を送り返すことができるようにします
これはとてもうまくいきますが、少し問題があります。顧客が会社に何かを送る必要がある場合、例えば何かの支払いで為替を送るとしましょうか?または、インターネット上のコンピュータは、ルータ(SYN要求)との接続を開始することを言いましょう, ネットワーク内にあるWebサーバーに言う. 手紙/パケットはその上にルータのパブリックアドレスを持っているだけなので, ルータは実際にそれを送信する場所を知りません! ネットワークに電話をかけるとき、またはそのどれにも電話をかけないときに、この問題を経験したことがあるかもしれません。誰かの家の電話に電話をかけるときにこの問題を経験したことがあるかもしれません - 彼らがあなたに電話をかけるときには問題ありませんが、あなたが彼らに電話をかけるときには、彼らが誰のための電話かを知る方法がないので、間違った人が答えるかもしれません。
使用例を見てみましょう。多くの多人数参加型ビデオゲーム(例:カウンターストライク)では、自分のコンピュータ上でゲームサーバーを実行し、他の人が接続して一緒にプレイすることができます。ルーターに何も設定していなければ、接続要求を受信しても、ネットワーク内のどのコンピューターがゲームサーバーを持っているかわからないので、無視してしまいます(もっと言えば、接続できないことを示すパケットを送り返してきます)。幸いなことに, あなたはゲームサーバーの接続要求になりますポート番号を知っている. ルータでは、ゲームサーバが期待するポート番号(例えば、27015)とゲームサーバのあるコンピュータのIPアドレス(例えば、192.168.1.105)でポートフォワードを設定します。 ルータは、ネットワーク内の192.168.1.105に接続要求を転送し、外部のコンピュータは接続できるようになります。そのため、ルータはこのマシンにポート80のリクエストを転送しなければなりません。ポート転送を使用して, 両方のマシンが同時に同じネットワーク内で実行することができます.
ビデオゲームは、おそらく日常のユーザーがポート転送に遭遇する最も一般的な場所です, ほとんどの近代的なゲームはUPnPを使用しているので、手動でこれを行う必要はありませんが (代わりに, それは完全に自動です). しかし、ネットワーク内の何かに直接接続できるようにしたい場合は、いつでもこれを行う必要があります(インターネット上の仲介者を経由するのではなく)。これには、あなた自身のウェブサーバーを実行したり、リモートデスクトッププロトコルを使ってコンピュータに接続したりすることが含まれます。
NATの良い点の一つは、手間のかからない組み込みのセキュリティを提供することです。多くの人が脆弱なマシンを探してインターネットを徘徊していますが、彼らは様々なポートを使って接続を開こうとします。これらは着信接続なので、上で述べたように、ルータはそれらを落とします。これは、NAT構成では、ルータ自体だけが着信接続を含む攻撃に対して脆弱であることを意味します。ルータは、ソフトウェアの多くを持つ完全なオペレーティングシステムを実行しているコンピュータよりもはるかに単純であるため、これは良いことです, (したがって、脆弱である可能性が低い). ネットワーク内のコンピュータをDMZにする(DMZ先として設定する)ことで、そのコンピュータのセキュリティの層を失うことを覚えておく必要があります。はインターネットからの着信に対して完全にオープンになっているので、直接接続されているかのようにセキュリティを確保する必要があります。もちろん、ポートを転送すると、受信側のコンピュータはその特定のポートに対して脆弱になります。そのため、しっかりと設定された最新のソフトウェアを実行するようにしましょう。