Web ログファイルに多くのアクセス情報が記録されているが、高速処理のため、クライアントのホスト名ではなく、その IP アドレスが書き込まれているのがふつう。
しかし、IP アドレスのままだとわれわれ人間には理解しにくいので、本 Perl スクリプトは IP アドレスを本来のホスト名 (bal4u.dip.jp のようなもの)に変換表示してくれる。
スクリプト名 ip2host.pl ソース
使い方 perl ip2host.pl < access_log
変換結果が標準出力に出てくるので、リダイレクトしてファイルに落とすことも可能。
ホスト名の逆引きができない場合は、IP アドレスのままとなる。また、変換の対象は行先頭の IP アドレスのみ、ほかのフィールド(内容)はそのまま残る。
実際の1例 (ログファイルの1行)、行先頭の IP がホスト名に変わる。
220.12.28.59 - - [22/Aug/2004:04:49:35 +0900] "GET / HTTP/1.1" 304 - "-" "Mozill
a/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.0.3705; .NET CLR 1.1.432
2; MSIECrawler)"
↓
YahooBB220012028059.bbtec.net - - [22/Aug/2004:04:49:35 +0900] "GET / HTTP/1.1"
304 - "-" "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; .NET CLR 1.0.3705;
.NET CLR 1.1.4322; MSIECrawler)"