質問: webサーバーなどにおいて、サーバー側はポート開放をしていますが、 クライアント側はポート開放していないのにもかかわらず、なぜサーバーとの通信が可能なのでしょうか?? どなたか教えてくださいませんか??
回答: 「ポート開放」は俗語なので,正しい用語である**「ポート転送」**を用いることにします. ルータの内部から外部へのアクセスがあった場合,**一時的に**以下のような対応づけが行われます.外部からLAN内の端末が持つプライベートIPアドレス`192.168.x.x`は見えません.そのため,ルータが**ポート番号とLAN内端末のプライベートIPアドレスを結びつけ**,対応関係に基づいてパケットを中継する役割を担います.ポート番号に基づいてパケットを転送するため,ポート転送と呼ばれます. 9-3 : NAT/FW トラバーサルの仕組み‐NATとは‐ !イメージ説明 逆に外部からの能動的な内部へのアクセスを許すには,この対応関係を**恒久的に**作っておかなければなりません.俗にいうポート開放というと,基本的にはこちらの方を指します. なお,サーバ側のポートはHTTPは80番などとして決まっていますが,クライアント側はあいている任意のポートを使うことができます.50000/60000番台がランダムに使われることが多い気がします.