サーキットレベルゲートウェイ【circuit-level gateway】
サーキットレベルゲートウェイとは?

組織内ネットワークにおいて、内部の機器が外部サーバと通信しようとすると、サーキットレベルゲートウェイが代わりに接続を確立し、その後は双方のセッションを個別に中継する。外部からはゲートウェイのIPアドレスだけが見え、内部ネットワークのアドレスや構成は隠蔽される。
通信の可否は、接続元・接続先のアドレスやポート番号、接続状態などをもとに判断される。TCPの3ウェイハンドシェイクが正規の手順で行われているかを確認するため、不正なシーケンス番号や異常なフラグを持つパケットを弾くことができ、単純なパケットフィルタリングよりも偽装された通信への対処能力が高い。
一方、パケットのペイロード(アプリケーション間で伝送されるデータの内容)は検査しない。正常な手順で確立されたセッションを通じて悪意のあるデータが送り込まれても、通信形式に問題がなければ検知できない。アプリケーション層の内容を解析する「アプリケーションゲートウェイ」と比べると、検査の深度は浅い。ただし、データの中身を見ない分だけ処理負荷が小さく、多数の通信を高速に中継しやすい。
代表的な実装に「SOCKS」がある。クライアントとサーバの間で通信を代理し、許可された接続だけを中継する汎用的な仕組みで、HTTP以外のプロトコルにも対応できる。インターネット普及期には、内部ネットワークを外部に直接公開しない手段として広く使われた。現在では単独での利用は少なく、アプリケーション層までカバーする中継機器の仕様の一部に吸収されている例が多い。