リクエストを送信元IPを指定して送信したい

指定のREMOTE_ADDRの値でリクエストを送信してくれと言われたときにやり方がわからなかったので、その時調べたまとめ。

REMOTE_ADDRとは?

REMOTE_ADDRとはアクセス元のIPアドレスを表す環境変数。 ちなみに、REMOTE_ADDRで取得したIPアドレスDNSで逆引きしたホスト名を表す環境変数はREMOTE_HOST。

つまり、送信元IPアドレスを指示されたものに変えてリクエストを送信すれば良いということになる。 送信元IPを指定するヘッダについて調べると下のものになった。

X-Forwarded-Forヘッダ

X-Forwarded-For(XFF)ヘッダーは、HTTPプロキシまたはロードバランサを通過してWebサーバへ接続したクライアントの送信元IPアドレスを特定するために事実上の標準となっているヘッダ。

このヘッダを使用して書き換えの指示があったIPを指定して上げれば解決する。

詳しいリファレンスは以下のURLから。 https://developer.mozilla.org/ja/docs/Web/HTTP/Headers/X-Forwarded-For

リクエストヘッダ

送信する際に以下のX.X.X.Xの部分にIPアドレスを指定してリクエストを送信すればOK。

X-Forwarded-For: X.X.X.X