PHPまとめ - IPアドレス⇔ホスト名

HOME | TOP

■ IPアドレスとホスト名の相互変換

IPアドレスに対応づけられたホスト名を取得したり、ホスト名に割り振られたIPアドレスを取得するための関数が用意されています。

▼ 指定したIPアドレスからホスト名を取得

ウェブサーバにアクセスしてくる時には必ず環境変数「REMOTE_ADDR」がセットされるのを利用して、これをホスト名に変換する例は以下のとおり。



▼ 指定したホスト名からIPアドレスを取得

ウェブサーバにアクセスしてくる時には必ず環境変数「REMOTE_HOST」がセットされているとは限らない(取得しに行かない設定になっていたり、ホスト名自体を持たないものだったり)ので、以下のようにしても取得できない場合があります。


■ 生IPアドレスを取得

プロクシ経由からはアクセス元のIPアドレスを取得できない場合が多くなります。

できるだけアクセス元のIPアドレスを取得するよう努力するコードを書いてみます。

これを使って得たIPアドレスをホスト名に変換すれば、環境変数「REMOTE_HOST」よりも多少はリアルな情報になるかも?

前述したとおり、アクセスしてくる中にはホスト名がないものもあるのでその場合にはIPアドレスを返すような関数を作っておきます。

よくあるアクセス制限では、ホスト名が取得できてなおかつドメインが特定の条件を満たしていなければハネるなどがあります。


2010(C)Mingw