[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

(DTPtechNote:97) 接続されているグローバルIPアドレス



ASUGにもポストしたけど、ここにも書いておきましょう。

「Mac OS X環境で、接続されているグローバルIPアドレスを取得する方法はないか?」というポストがあり「ifconfigコマンドの返値を利用すればいい」という回答がなされてふと考えた。
それだと、ウチみたいにルータ経由だとローカルIPしかわかんないじゃん。
あ、そだ。一旦ネットに出てそこから返してもらえばだいじょうぶ。ヘンな串さえ通してなければ(笑)

ちょっとテストしてみよう。

#!/usr/bin/perl -w
$rhost = $ENV{REMOTE_ADDR};
print "Content-Type: text/html\n\n";
print "<HTML>\n<HEAD>\n<TITLE>$rhost</title>\n</head>\n";
print "<body bgcolor=\"white\">\n";
print "$rhost";
print "</body></html>\n";
exit;

つうのをどこか外部のサーバーにおいて
AS側から

tell application "Internet Explorer"
	OpenURL "http://61.125.210.65/cgi-bin/address.cgi"; toWindow 0
	delay 2--なんかスクリプトが早くて(^^;;;;;
	set ipaddress to item 2 of (GetWindowInfo -1)
	ipaddress
end tell

と呼んでやれば大丈夫。