本ページは広告が含まれています。気になる広告をクリック頂けますと、サーバ運営費になります(^^
大量のIPアドレス情報があります。
会社で提供しているカタログにアクセスしてもらっていますが、アクセス解析をしたいとの事。スマートフォンからアクセスされているのが多いのが分かっているのですが、その環境はWiFiなのか、キャリア回線を使っているのか。それによってコンテンツの重さなども検討したいとの事です。
うちのサーバアクセスログは、ダウンロード時のIPアドレスや端末名は出ているのですが、残念ながらホスト名は出ていないので、何経由でアクセスされているのかイマイチ分かりません。アクセス回線が分かれば、キャリアの通信回線を利用しているのか、WiFiを利用しているのか見当がつくので大量のIPアドレスをホスト名に変更したいという事です。
○IPアドレスリストを作成する
IPアドレスリストを作成します。
6?.215.190.***
15?.177.0.***
18?.48.171.***
…
こんな感じのテキストファイルです。ファイル名をiplistとしました。
○使い捨てシェルスクリプトを作成
IPアドレスから、ホスト名に変換するシェルスクリプトを作成します。
# vi ip2host.sh #!/bin/bash #引数で与えられたファイルから1行ずつlineを読み込む cat $1 | while read line do /usr/bin/host ${line} done exit 0
実行権限を与えます。
# chmod 755 ip2host.sh
○使い捨てシェルスクリプトを実行
./ip2host.sh ./iplist > hostlist
iplistファイルを読み込ませ、1行ずつホスト名を返します。それをhostlistファイルにリダイレクトします。
○余計な行を排除
aliasなどが含まれていると、2行返される事があったり
# host 60.*.*.* *.*.32.6.in-addr.arpa is an alias for *.*.119.32.60.in-addr.arpa. *.*.*.32.60.in-addr.arpa domain name pointer hana.hanako.or.jp.
名前が解決できず
Host 121.23.*.*.in-addr.arpa. not found: 3(NXDOMAIN)
と返る事があるので、domain name pointer が含まれる行のみ抽出します。
egrep ‘ domain name pointer ‘
○ .で区切って後ろから3列目までを取得すればだいたいドメインが分かる
後ろからn列目をawkする
awk ‘{print $(NF-n)}’
後ろから3列目までをawkしてドメインを見る
awk -F. ‘{print $(NF-3)”.”$(NF-2)”.”$(NF-1)}’
○多い順に並び替えまで含むとこんな感じ
# egrep 'domain name pointer' hostlist |awk '{print $(NF)}' |awk -F. '{print $(NF-3)"."$(NF-2)"."$(NF-1)}' |sort |uniq -c |sort -r
私はcsvファイルにしてグラフ化したかったので、さらに余計な空白を取り除いてカンマ区切りにしました。
# egrep 'domain name pointer' hostlist |awk '{print $(NF)}' |awk -F. '{print $(NF-3)"."$(NF-2)"."$(NF-1)}' |sort |uniq -c |awk '{print $(NF-1)","$(NF)}'
○出てきた結果を構成してグラフ化
ドコモ系別名
air.mopera.net
ソフトバンク系別名
panda-world.ne.jp
openmobile.ne.jp
格安SIM系
ap.mvno.net
rev.vmobile.jp
mesh.ad.jp
分かる範囲で値を集計し調整した上でグラフ化するとこんな感じです。
やはりキャリア回線でのダウンロードが60%近くを占めています。
○雑学 panda-world.ne.jp
解析していく中で、panda-world.ne.jp というドメインが全体の5%程度を占めていました。panda-worldって何なんだろうと疑問に思いました。pandaと連想するのは中国で、中国のハッカー集団とか優秀だと聞くので、なんかちょっと良くないものなのかなとも思い調べてみると、ソフトバンクの持ち物である事が分かりました。
ソフトバンクのiPhoneでアクセスすると、このIPアドレス体系になるようです。softbankさんは名前が微妙だなって思います。panda-worldだといろいろな憶測を呼ぶと思います。いかにも中華系って感じるし。softbankという名称をどこかに入れるべきかと。でなくても、bbmobileとかにしてくれた方がいいかと。ネットワーク系で中国につながっていると思うとちょっと引きます。情報が洩れていってしまうイメージです。(あくまでイメージの話ですが。)最近softbankの契約数がドコモやauに比べて減っていますが、やっぱり思想的なところに危険性を感じるからでしょうか。単純に電波が入らないとか、対応が悪いという声も聞きますが、せめてドメイン名なども誤解を生まないような名前にしていただきたいです。
[ JPRS database provides information on network administration. Its use is ] [ restricted to network administration purposes. For further information, ] [ use 'whois -h whois.jprs.jp help'. To suppress Japanese output, add'/e' ] [ at the end of command, e.g. 'whois -h whois.jprs.jp xxx/e'. ] Contact Information: [担当者情報] a. [JPNICハンドル] MK46371JP b. [氏名] 釜江 正人 c. [Last, First] Kamae, Masato d. [電子メイル] sbmmb-ipr-domain-admin@g.softbank.co.jp f. [組織名] ソフトバンク株式会社 g. [Organization] SoftBank Corp. o. [電話番号] p. [FAX番号] y. [通知アドレス] domain@thomsonbrandy.jp [最終更新] 2016/11/18 18:01:30 (JST) form@dom.jprs.jp [ JPRS database provides information on network administration. Its use is ] [ restricted to network administration purposes. For further information, ] [ use 'whois -h whois.jprs.jp help'. To suppress Japanese output, add'/e' ] [ at the end of command, e.g. 'whois -h whois.jprs.jp xxx/e'. ] Contact Information: [担当者情報] a. [JPNICハンドル] YA17121JP b. [氏名] 足立 泰明 c. [Last, First] Adachi, Yoshiaki d. [電子メイル] SBMMB-IPR-domain-admin@g.softbank.co.jp f. [組織名] ソフトバンク株式会社 g. [Organization] SoftBank Corp. o. [電話番号] 03-6889-6435 p. [FAX番号] 03-6889-6672 y. [通知アドレス] domain@thomsonbrandy.jp [最終更新] 2015/08/05 17:08:19 (JST) form@dom.jprs.jp