[PHP-users 32103] Re: CLI で IP アドレスを取得

Takeshi KOMIYAMA moomin @ moominfamily.com
2007年 5月 10日 (木) 17:51:11 JST


小宮山です。

On Thu, 10 May 2007 15:03:12 +0900
Ryuzo KOSAKI <kosaki @ fip.fujitsu.com> wrote:

> こさきです。
> 
> "[PHP-users 32095]CLIでIPアドレスを取得" の記事において 
> moomin @ moominfamily.comさん は書きました。
> 
> >で、ホスト名は取得できるのですが、これに対してgethostbynameを実行させ
> >ると、127.0.0.1 が返却されてしまいます。(gethostbynamelでも同様)
> 
> 127.0.0.1は確かにスクリプトが動作しているサーバのIPアドレスですが、
> それではダメなのですか?たとえばスクリプトを実行しているホストに
> あるDBサーバに接続するのであれば、それで問題ないし。

スクリプトを実行することができるサーバを制限させたいと思っています。

データベースにスクリプトが実行可能なサーバが登録されており、実行時に
その情報を確認し、自身のサーバが登録されていない場合には、実行できな
いようにしたいのです。

ですので、127.0.0.1では問題があります。

> 
> そうでなければ、たいていのホストはIPアドレスが2個以上あるので、
> どれを取得させるかをまず決めておかないといけませんね。

はい。
複数のIPを持つ場合、可能であればすべてのIPを取得して、そのいずれかが
上記のデータベース内のエントリと一致すればOKとできればベストです。

> 
> 取得したいアドレスを決めて、実行時の環境変数にそのアドレスを設定
> しておけばいいでしょう。
> たとえば MY_IPADDRに192.168.168.168と設定して、$_SERVER("MY_IPADDR")
> でとりだし。

環境変数に設定するとなると実行時に自由に変えることができてしまうので、
制限目的としては好ましくないと考えています。

よろしくお願いいたします。

> 
> _______________________________________________
> PHP-users mailing list  PHP-users @ php.gr.jp
> http://ml.php.gr.jp/mailman/listinfo/php-users
> PHP初心者のためのページ - 質問する前にはこちらをお読みください
> http://www.php.gr.jp/php/novice.php3

-- 
Takeshi KOMIYAMA <moomin @ moominfamily.com>



PHP-users メーリングリストの案内