HTTP情報について
X-Forwarded-Forとは?接続元IPの見方と信頼の境界
複数IPの並び、Forwardedとの優先関係、偽装可能な値の扱いを解説します。
更新日: 2026年10月9日
X-Forwarded-Forは、HTTP ProxyやLoad Balancerが元の接続元IP候補を後段へ伝えるために広く使われる非標準ヘッダーです。
何が分かるのか
値はカンマ区切りのIP列になることがあり、通常は中継を通るたびに情報が追加されます。ただし、どの位置まで信頼できるかはProxy構成と上書きルール次第です。
NetKarteでの見方
HTTP情報カードの「転送ヘッダー」でX-Forwarded-For行を確認します。入力は不要で、受信値を自動表示します。IPが複数あればカンマの区切りごとに読み、先頭の値だけで表示対象IPと決めつけないでください。表示対象IPを決める処理では、管理下リバースプロキシからの転送情報だけを信頼対象として扱います。
誤解されやすい点
先頭の値が常に本当の利用者IPとは限りません。Internetから届いた値をそのまま信用すると偽装されるため、アクセス制御や監査では信頼Proxyの範囲と解析順を明確にする必要があります。
複数のIPが並ぶ例
説明用の 192.0.2.20, 198.51.100.8 は、元の接続側と中継側を順に追記した構成で見られる形です。ただし、利用者が送った先頭値を中継が残していれば、その先頭は偽装できます。「一番左だから本物」という読み方はできません。
NetKarteは管理下の中継が値を整えることを前提とし、転送情報を信頼する設定のときに有効な候補を使います。Forwardedに採用可能な値がある場合はそちらが優先されます。任意の多段Proxyから信頼できる区間を自動発見する機能ではありません。
IPが予想と違うときの確認順
まずネットワーク診断上部IPカードの「取得元」を見て、このヘッダーが採用されたか確認します。次に同じ診断で表示するIPv4・IPv6や事業者を比較します。中継設定の確認が必要なら管理者へ依頼してください。
複数の値だけでVPNや不正アクセスを断定せず、アクセス制御用の根拠にする場合は受信経路と上書き設定を別途検証します。
参考資料
- IETF / RFC Editor: RFC 7239: Forwarded HTTP Extension (外部サイト)確認日: 2026-10-09
- MDN Web Docs: X-Forwarded-For (外部サイト)確認日: 2026-10-09
- nginx: Module ngx_http_proxy_module (外部サイト)確認日: 2026-10-09