Google 以外の巡回を許容するか拒否するか? 日本国外からのアクセスを許容するか拒否するか? メリットとデメリットを考えてアクセス制御する方法

Webサービスへのアクセスを広く許容することは良いことです。その一方で、日本国内のみで、現在の Webサービスを活用し、なるべく安全で安く ECサイトを運営するなどを考えるときは、最小限のクローラと日本国内からのアクセスにしぼることで負荷軽減につながります。
robots.txt、 (http://ftp.apnic.net/stats/から取得できる) 日本国内で使用されるIPアドレスのリストを .htaccess に記載することで、このようなアクセス範囲の絞り込みが可能です。本記事ではアクセスをコントロールするための具体的例についても説明します。

Google 以外の巡回を拒否するか許容するか

拒否する

日本国内で商売をする限りにおいて、
日本国内検索エンジンのシェアのおよそ
9割をしめる Google の影響力は圧倒的です。

※Yahoo! Japan は内部的に Google を使用しています。
 ここでは、これも Google のシェアと考えます。

そのため、クローラに関しては
Google 以外の全てを排除したとしても
商売的に (売上や露出は) ほとんど変わらないと考えられます。
そこで、Google 以外のクローラからのアクセスを排除することで
・サーバの負荷を減らしてランニングコスト削減につなげる
・サーバの負荷を減らしてユーザへの応答性を高める
などが可能になります。

許容する

現在のところ Bing や Baidu (百度)
からの流入はほとんどないと思います。
でも未来についてはわかりません。
多種多様なクローラを許容することは
検索サービスのシェア変動へのリスク管理になることでしょう。

日本国内では Yahoo! Japan が根強く利用されているように、
それぞれの国毎に大きなシェアを持つポータルや検索サービスがあります。
もし日本国外に進出する可能性があるのならば、
それらの人々からも検索可能な方が良いでしょう。

Google が検索サービスを始めたころ
世界には既に十分に有用な検索サービスや
ポータルサイトがひしめきあっていました。
つまり、Google が有害無益で、クローラを受け入れても
商業的には何の価値もないという時代もありました。

Google 以外のクローラからのアクセスを許容することは
新しい商売や、新しい技術のための研究・開発に
多少の協力をするということに繋がるかと思います。

日本国外からのアクセスを許容するか拒否するか

拒否する

日本国内のみで、現在の Webサービスを活用し、
なるべく安全で安く ECサイトを運営しようと考えたとき、
日本国外からのアクセスを排除などすれば
これもまたサーバの負荷軽減につながります。
スパムやマルウェアと遭遇する可能性を抑えることもできます。

許容する

商業的に、あるいは発信する情報に、
外国の人 (日本国外に住む日本人を含む) にとっての価値があるなら
日本国外からのアクセスを許容する価値があります。
そうでなければ、サーバ資源や管理コストの無駄になります。

クローラや国内外からのアクセスをコントロールする

将来的に日本国外への進出はないものとし、
日本国内のみで、現在の Webサービスを活用し、
なるべく安全で安く ECサイトを運営しよう
というようなこと考えたとき、
Google 以外のクローラのアクセスを全て排除し、
日本国外からのアクセスも全て排除するというのは
賢明な方針の一つだと思います。

日本国外への進出もないとはいいきれず、
サーバ資源や管理コストに余裕があり、
アクセスしてきているクローラも節度があるならば、
Google 以外のクローラのアクセスを
許容することにも価値があります。

クローラからのアクセスをコントロール

さて、Webサービスへのアクセスを制限しようという場合、
まっとうなクローラに対しては robots.txt を書けば OK です。
robots.txt というファイルをドキュメントルートに置き、以下のように記述します。

User-agent: *
Disallow: /
User-agent: Googlebot
Disallow:

上記の内容は以下の通りです。
・クローラはくるな。
・でも Google だけはいいよ。

以下のサイトに robots.txt の書き方が説明されています。
The Web Robots Pages

Disallow が許さない、Allow が許すという意味なので、
何となく以下のように書きたい気持ちになりますが、
robots.txt の仕様から外れてしまうので良くありません。

User-agent: *
Disallow: /
User-agent: Googlebot
Allow: /


ただし、Googlebot は Allow を解釈してくれるようなので、
意図通りの動作にはなるかと思います。

robots.txt はクローラを従わせるのではく、
あくまでもお願いをする仕組みです。
robots.txt に従う義務はクローラにはありません。
お願いが通じない場合は .htaccess でアクセス拒否をするのが簡単です。

日本国外からのアクセスをコントロール

日本国外からのアクセス拒否は色々とやり方がありますが、
これは .htaccess が簡単確実で融通がききます。
以下のように書けば OK です。

order deny,allow
deny from all
allow from 日本国内のIP1
allow from 日本国内のIP2
allow from 日本国内のIP3

フィルタリングのための処理を行うため
サーバの応答がちょっとだけ遅くなります。
日本国内で使用されるIPアドレスのリストは長大になるので、
どの程度影響するのかを簡単にテストしてみました。
目安として、Core i3、4GB メモリ、500GB HDD、Apache で
試してみたところ、 index.html を返すのに必要な
サーバ内での処理時間が 24ミリ秒から 34ミリ秒となりました。
このケースでは 10ミリ秒くらい応答が遅くなりました。

あとは日本国内で使用できる IPアドレスですが、
これは基本的に Japan Network Information Center (日本ネットワーク インフォメーション センター) が管理しています。

iana

おおむね上図のように、IANAを上位とした
階層的な組織で IPアドレスが管理されています。
原則的には JPNIC が日本国内で使う IPアドレスを管理していますが
それ以外からの IPアドレスが割り当てられている場合もあります。

ですから、http://ftp.apnic.net/stats/ で IPアドレスの使用状況を確認し、
JP に割当てられている全ての IPアドレスを抽出すれば
日本国内で使用されている IPアドレスのリストができます。
これを .htaccess に記載すれば OK です。

下記のサイトで、日本人限定のウェブページのための
.htaccess ファイルが配布されています。
毎日最新版になるように更新されているとの記述もありました。
とても素晴らしいのでご紹介しておきます。
AKI ON WEB: 日本人限定のウェブページ

余談ですが、IP (IPv4) アドレスはすでに枯渇状態にあります。
つまり、割当てできる在庫がない状態です。
IPv4 と IPv6 には互換性がないので、
そうとうな期間は IPv6 への移行というよりは併存になります。
Webサービスを提供する人は、そろそろ
IPv6 との併存状態に慣れておくと良いかもしれません。

お問い合わせについて

業務として技術コンサルティングやシステム設計・開発を行っております。
気になることがありましたらご相談下さい。
ご相談のみで完結する場合、コンサルティング費用の目安は
内容によりますが1時間で5千円〜1万円ていどです。
コンサルティングや開発を検討されるその前に、
まずはお気軽にコメントやメールでご連絡下さい。
ご契約前のコメントやメールでのやりとりは無料です。

お問い合わせフォーム

お急ぎの場合など、ただちに業務対応が必要な場合は、こちらのお問い合わせフォームをご利用ください。かきしちカンパニーお客様窓口が直ちに対応いたします。
※窓口へのお問い合わせ、お見積もりは無料です。


お名前 (必須)

メールアドレス (必須)

題名

メッセージ本文 (必須)

Share

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

*