HTTPレスポンスはどうやって返ってくるのか


HTTPリクエストにはヘッダに宛先のアドレスがありますが、HTTPレスポンスには宛先は書いてないようです。  
HTTPレスポンスはどうやって返ってくるのでしょうか？




HTTPが使用するTCP/IPは双方向通信です。Webサーバーとしてはリクエストを受信した通信に対してそのままレスポンスを返すことができます。  
HTTP/3ではTCP/IPを使用しなくなりましたが、QUICという別の双方向通信プロトコルを使用しています。

> HTTPリクエストにはヘッダに宛先のアドレスがありますが

リクエストヘッダにある `Host`
はクライアント側が自己申告している接続先ホストであり、実際の接続先と一致しているとは限りません。ごく稀に、`Host`に記載した接続先とは別のWebサーバーに接続させることもあります。




HTTPが使用するTCP/IPは双方向通信です。Webサーバーとしてはリクエストを受信した通信に対してそのままレスポンスを返すことができます。  
HTTP/3ではTCP/IPを使用しなくなりましたが、QUICという別の双方向通信プロトコルを使用しています。

> HTTPリクエストにはヘッダに宛先のアドレスがありますが

リクエストヘッダにある `Host`
はクライアント側が自己申告している接続先ホストであり、実際の接続先と一致しているとは限りません。ごく稀に、`Host`に記載した接続先とは別のWebサーバーに接続させることもあります。

