令和元年秋期試験問題 午前問34
問34解説へ
クライアントAがポート番号8080のHTTPプロキシサーバBを経由してポート番号80のWebサーバCにアクセスしているとき,宛先ポート番号が常に8080になるTCPパケットはどれか。
- AからBへのHTTP要求及びCからBへのHTTP応答
- AからBへのHTTP要求だけ
- BからAへのHTTP応答だけ
- BからCへのHTTP要求及びCからBへのHTTP応答
広告
解説
ポート番号とは、コンピュータがデータ通信を行う際に通信先のプログラムを特定するための番号のことです。ネットワーク上で相手コンピュータにデータを送信する場合、通信相手のコンピュータはIPアドレスで指定しますが、そのコンピュータで動いているどのプログラムにデータを送るかを指定する情報がポート番号です。IPアドレスを建物の住所に例えるなら、ポート番号は部屋番号に相当します。
クライアントがサーバに対してサービスを要求するパケットを送信する際には、ポート番号にサービスを意味する番号を指定します。HTTPであればTCP80番、SMTPであればTCP25番、DNSクエリであればUDP53番といった具合です。通常、HTTPではポート80番(HTTPSは443番)を使用して通信を行いますが、ポート8080番は代替HTTPポートと呼ばれ、大抵のプロキシサーバは8080番でサービスを待ち受けています。
TCPやUDPのヘッダーには、宛先ポート番号と送信元ポート番号というフィールドがあります。宛先ポート番号は、原則としてクライアントがサービスを要求する場合には「当該サービスを受け付けている番号」、サーバがクライアントに応答する場合には「サービスを要求してきたクライアントのポート番号」が設定されることになります。この問題ではパケットのポート番号に注目しながら通信の様子を確認します。
クライアントがサーバに対してサービスを要求するパケットを送信する際には、ポート番号にサービスを意味する番号を指定します。HTTPであればTCP80番、SMTPであればTCP25番、DNSクエリであればUDP53番といった具合です。通常、HTTPではポート80番(HTTPSは443番)を使用して通信を行いますが、ポート8080番は代替HTTPポートと呼ばれ、大抵のプロキシサーバは8080番でサービスを待ち受けています。
TCPやUDPのヘッダーには、宛先ポート番号と送信元ポート番号というフィールドがあります。宛先ポート番号は、原則としてクライアントがサービスを要求する場合には「当該サービスを受け付けている番号」、サーバがクライアントに応答する場合には「サービスを要求してきたクライアントのポート番号」が設定されることになります。この問題ではパケットのポート番号に注目しながら通信の様子を確認します。
- プロキシサーバは8080番でサービスを待ち受けているので、クライアントは宛先ポート番号に8080、送信元ポート番号に任意の番号(p1)を設定してプロキシサーバに送信する。
- クライアントからHTTP代理要求を受けたプロキシサーバは、宛先ポート番号に80、送信元ポート番号に任意の番号(p2)を設定してWebサーバに送信する。
- プロキシサーバからHTTP要求を受けたWebサーバは、宛先ポート番号にp2、送信元ポート番号に80を設定してWebサーバに送信する。
- WebサーバからHTTP応答を受け取ったプロキシサーバは、宛先ポート番号にp1、送信元ポート番号に8080を設定してクライアントに送信する。
広告