masahiro akiyama
akiya****@techb*****
2008年 9月 24日 (水) 09:23:33 JST
竹林様 秋山です。 投稿させていただいてから、こちらでも原因の究明を行っていたので 分かった範囲で報告させていただきます。 ■X-Forwarded-For が設定されている場合とされない場合の傾向 access_logを見ていて気になったのが、連続したアクセスの場合に 最初のアクセスにはX-Forwarded-Forが設定されているが、 2件目以降はX-Forwarded-Forが設定されていない場合が多い。 1,2秒程度の間隔があるとX-Forwarded-Forが設定されている。 ■原因と思われるもの apacheが受け取るパケットをキャプチャーとaccess_logを見ていて 判ったのが、keep-alive の指定があると最初のリクエストについては X-Forwarded-For が設定されてるが、2件目以降のリクエストには X-Forwarded-For が設定されていませんでした。TCP/IPの コネクションが切れてから、再度のリクエストでは X-Forwarded-For が設定されていました。 このことから、最初のリクエストついては、Ultramonkey の cinsertモジュールが X-Forwarded-For を設定しているが、 2件目以降のリクエストは keep-alive の効果で 最初のリクエストが利用したTCP/IPのコネクションを 継続して利用しているので、 Ultramonkey を経由していない。 そのために、X-Forwarded-For を設定できない。 この判断は妥当なものでしょうか? ■今後の展望 今回は、access_logへクライアントのIPアドレスを記録して欲しいので mod_rpaf (http://stderr.net/apache/rpaf/) を導入しようと考えています。 以上 Shinya TAKEBAYASHI さんは書きました: > 秋山 さま > > > 竹林です. > 初めまして. > > 実家に帰省していたため返信が遅れました. > ご質問の件について,こちらでも挙動を確認してみます. > > 確認の結果と本来の挙動についてまとめたものを,後ほどお送り致しますので > 少し時間を頂けますか. > > よろしくお願い致します. > > ----------------------------------------------------------- > Shinya TAKEBAYASHI > > E-mail: takeb****@oss***** > GPG ID: 395EFCE8 > GPG FP: 58B2 B5D0 A692 1BD8 328B E31E E027 AC35 395E FCE8 > ----------------------------------------------------------- > > masahiro akiyama <akiya****@techb*****> wrote in message <48D34****@techb***** > *** Subject: [Ultramonkey-l7-users 135] cinsertモジュールの--forwarded-forオプシ > ョン > *** Date: 2008/09/19 15:56:40 >> はじめまして。秋山と申します。 >> >> さっそくですが、cinsertモジュールの--forwarded-forオプションの >> 挙動について教えてください。 >> >> リアルサーバにapacheを用いていて、apacheのaccess_logにクライアントの >> IPアドレスを記録させたいと思っています。 >> >> >> l7directord.cf には >> module=cinsert --cookie-name 'moneky' --reschedule --forwarded-for >> >> リアルサーバのapacheのログフォーマットの指定を >> LogFormat "%{X-Forwarded-For}i %l %u %t \"%r\" %>s %b \"%{Referer}i\" >> \"%{User-Agent}i\"" combined >> >> としています。 >> >> クライアントからアクセスしてみると、クライアントのIPアドレスが >> apacheのaccess_logに出る場合と"-"の場合があります。PHPのページに >> アクセスした場合にはIPアドレスが出ることが多いのですが、 >> 出ないこともあります。PHPの中でx-forwarded-forの値をダンプしてみると >> アクセスログの出方と一致していました。 >> 一方、cssや画像ファイルなどの静的ファイルへのアクセスでは >> "-"の場合が多く、稀にIPアドレスが出ています。 >> >> クライアントからのアクセスについては、PHPページと静的ファイル共に >> アクセスログにはIPアドレスを記録することはできませんでしょうか。 >> >> インストールには ultramonkey-l7-2.0.0-0-rpm.tar.gz を用いました。 >> >> よろしくお願いします。 >> >> -- >> >> ---------+---------+---------+---------+---------+---------+---------+-------- > -+ >> 株式会社 テックビート >> 秋山 昌宏 >> akiyama masahiro >> >> mailto:akiya****@techb***** >> >> _______________________________________________ >> Ultramonkey-l7-users mailing list >> Ultra****@lists***** >> http://lists.sourceforge.jp/mailman/listinfo/ultramonkey-l7-users > > > -- ---------+---------+---------+---------+---------+---------+---------+---------+ 株式会社 テックビート 秋山 昌宏 akiyama masahiro mailto:akiya****@techb***** PHS:070-6653-9769 〒113-0034 東京都文京区湯島3-2-14-222 TEL:03-5817-0366 FAX:03-5817-0367