SWG(SASE)でのHTTP/3(QUIC)対応状況

こんにちは。ネットワークソリューション特集 編集部です。
今回は、SWG(SASE)でのHTTP/3(QUIC)対応状況についてご紹介します。

HTTP/3(QUIC)とは

Chrome、Microsoft Edge、FirefoxなどHTTP/3対応のクライアントがHTTP/3対応サーバにアクセスするとUDPベースのHTTP/3で動作します。

シーケンス

HTTP/3では、今までのHTTP/2以前とは違いUDPベースのためTCP 3way ハンドシェイクが不要となっています。

  • HTTP/2までのシーケンス

  • HTTP/3のシーケンス

WebサーバがHTTP/3対応を検知していない場合はHTTP/2までと同じくTCPで通信を開始します。

DNSのHTTPSレコードで初回からHTTP/3でリクエストする方式あります。

HTTP/3暗号化

QUICでの暗号化は必須となっており、ヘッダとデータ部分で違う暗号化がされています。

HTTP/3(QUIC)のSWG対応状況

現在のところ多くのSWGやUTM機器はHTTP/3(QUIC)のTLSインスペクションに対応しておりません。

UDP/80,443(その他のポートも利用される可能性あり)をブロックしてHTTP/2 or 1.1にフォールバックさせる動作になります。

SWGアクセスタイプ別動作

社内からのアクセス(エージェントなし)

社内からアクセスするSWG構成の場合はFWでUDPをブロックすればHTTP/3に移行せずHTTP/2 or 1.1を利用します。

社外からのエージェントアクセス(フル転送型)

社外からのエージェントアクセス(フル転送型)の場合はSWG内でQUICプロトコルをブロックするればHTTP/3に移行せずHTTP/2 or 1.1を利用します。

ブロックする時はDropのみではタイムアウト待ちで遅延するため、Drop/ICMPのように拒否パケットを送信するようにすればタイムアウトまで待たずにフォールバックされます。

社外からのエージェントアクセス(HTTP,HTTPS転送型)

社外からのエージェントアクセス(HTTP,HTTPS転送型)の場合はUDP通信がSWG経由ではなくダイレクト接続になります。

そのため、ブラウザでQUIC無効化かPCのパーソナルFWでQUICをブロックすればHTTP/3に移行せずHTTP/2 or 1.1を利用します。

ブラウザでのHTTP/3無効化

ブラウザ側でHTTP/3を無効化する設定です。

Chrome、Microsoft Edge

  1. Chromeの場合は「chrome://flags」、Microsoft Edgeの場合は「edge://flags/」とアドレスバーに入力
  2. 「Experimental QUIC protocol」を「disable」にする

Firefox

  1. 「about:config」とアドレスバーに入力
  2. 「network.http.http3.enabled」を「disable」にする

まとめ

  • HTTP/3(QUIC)はUDPベースのプロトコル
  • 多くのSWG、UTMはHTTP/3(QUIC)に対応していないためHTTP/2 or 1.1にフォールバックする必要がある
  • 導入方式によりフォールバックさせる設定が異なる

今回はSWGでのHTTP/3(QUIC)対応状況についてご紹介しました。