web-dev-qa-db-ja.com

wgetのmanページで参照されている「自動検索プログラム」をブロックするための「2001年の記事」とは何ですか?

wgetのマニュアルページには、--random-waitパラメータのセクションの下に次のように記載されています。

    Some web sites may perform log analysis to identify retrieval
    programs such as Wget by looking for statistically significant
    similarities in the time between requests. [...]

    A 2001 article in a publication devoted to development on a popular
    consumer platform provided code to perform this analysis on the
    fly.  Its author suggested blocking at the class C address level to
    ensure automated retrieval programs were blocked despite changing
    DHCP-supplied addresses.

この記事のコピーを読んでもらいたいのですが、インターネットで何度も検索して記事を見つけました。ただし、これらの検索で見つけることができるのは、さまざまなWebサイトでホストされているwgetのマニュアルページだけです。そして、このトピックとはまったく関係のない他のいくつかの研究論文。

どの記事が参照されているのか、どこでコピーを入手できるのか誰か知っていますか?

11
user2064000

直接的な答えではありませんが、git blameおよびgit logこのセクションがcommitで導入されたことを明らかにします 2c41d78hniksicというコミッターによってHrvojeNiksicであることが判明しました。彼のメールアドレスはwgetのChangeLogファイルにあります(明らかな理由でここでは公開しません)。彼がより適切な答えを与えるのに最適かもしれないので、私は彼に直接尋ねることを提案します。その間、それに応じてマンページを更新してもよいかどうかを尋ねることを検討してください。 ;)

15
Andreas Wiese

私はそれがこの記事かもしれないと思います:

ベースSASを使用してWebログから意味のあるデータを作成する

クラスC範囲のブロックについて説明している段落があります。

IPアドレスがそのコンポーネントに分離されると、IPアドレスの範囲のフィルタリングは簡単になります。クラスBフィルターは、最初の2つのオクテットに対して実行されます。 168.126.xx.xx。これは、上記のコード例の変数Onetwoです。クラスCの範囲は、サーバー全体を対象とし、4つのオクテットのうち3つを使用するため、より一般的に使用されます。 168.126.56.xx。上記のコードサンプルでは、​​UsrhostがWebログのTCP/IPアドレス値である場合、これはフィールド3です。

そして、ユーザーエージェントの文字列ベースのブロッキングでwgetに言及しているもの:

ユーザーエージェントの文字列を識別するための推奨される方法は、インデックスパターンマッチング機能を利用します。例えば:

if index(lowcase(agentstr), 'keynote') or
index(lowcase(agentstr), 'sureseeker') or
index(lowcase(agentstr), 'wget') or

2001年の「loganalysiswget」のグーグル で5番目の結果でした。

4
muru