特定IPアドレスの所属しているIPアドレスの範囲を調べる

2013-12-04

特定IPアドレスの所属しているIPアドレスの範囲を調べる

クローリングとかされて困った時に、使えるかも。 所用で調べる機会があったので。メモ。  

IPアドレスを調べる

Apacheのアクセスログで、下記みたいな方法でクローラーっぽいアクセスのIPアドレスを抽出

1
$ cat access.log | awk '{print $1}' | sort | uniq -c | sort -n

   

IPアドレスの範囲を調べる

ここで言う範囲というのは、そのIPアドレスを所持しているプロバイダのIPアドレス範囲・・・だと思う。

1
2
3
$ whois {ipアドレス} | grep -i netrange
NetRange:       192.168.0.0 - 192.168.255.255
※このNetRangeはサンプルです。

  あとは、Apacheのアクセスログで上記NetRangeのIPアドレスを抽出してやれば、クローラーを見つけられるかも。 抽出は、grepで正規表現でやれば捗るであろう。

1
$ cat access.log | awk '{print $1}' | grep -E "192¥.168¥.[0-9]{1,3}¥.[0-9]{1,3}" | sort | uniq -c | sort -n