丁度、1年ぶりのバージョンアップになります。bulkfeedsが全く復活する兆しを見せないので、プラグインからbulkfeeds関連の機能を全て削除するなど、細かい改良を行っています。
Nucleus 3.3を利用する場合、同梱のNP_AddSpamCheckEventをインストールする必要はありません。導入していても特に不具合は出ないはずですが、二重チェックになってしまうので、アンインストールをすることをおすすめします。
※利用方法についてはNucleusCMS Japanのplugins:np_blacklist [Nucleus CMS Japan Wiki]にまとめてあります。
動作確認はNucleus 3.31SP1(UTF-8)、PHP 5.2.5環境で行っています。
動作確認報告、バグ報告はこのエントリへ、コメント・トラックバックをお願いします。
† 2008/06/08追記 (v1.3.1)
末尾が127であるIPアドレスからのアクセスを誤判定することがあった問題に対応しました。
† [Added] ログ消去時などに確認ダイアログが出るようにした
ログの消去時にポップアップで確認が出るようにしました。
† [Added] 動作確認フォームを追加
動作確認報告が送信できるようにしました。
† [Fixed] bulkfeedsが消滅したので関連機能を全て削除した
bulkfeeds関連の全ての機能を削除しました。
はじめまして
blacklist_lib.php内のcheck_for_iprbl()についてなのですが、REMOTE_ADDRがxxx.yyy.zzz.127だった場合にスパマーIPとして弾かれてしまいます。
if (strpos(gethostbyname("$d.$c.$b.$a.$rbl"), '127.') === 0) {
の箇所は'127.'ではまずいのではないのでしょうか?
当方の環境は下記になります。
・PHP5.2.0
・Nucleus CMS v3.31SP1
・NP_BlacklistJP v1.2
if (strpos(gethostbyname("$d.$c.$b.$a.$rbl"), '127.') === 0) {
の箇所は'127.'ではまずいのではないのでしょうか?
この部分ですが、gethostbyname()の結果が"127."を含むという意味になりますから、REMOTE_ADDRがxxx.yyy.zzz.127というパターンであったら一律に弾くようになっているわけではないです。
ご存知だと思いますが、DNSBLはリスト該当のIPアドレスが拒否対象として登録されている場合に127.###.###.###というIPアドレスを返すようになっています。
現実問題としてxxx.yyy.zzz.127が弾かれてしまっている場合にはDNSBLにリストされていると思います。下記のようなサービスから本当にxxx.yyy.zzz.127を入力して調べてみてください。
http://www.rbl.jp/check_tbs...
hsur様
DNSBLに登録されていないことを確認しています。
その上での書き込みです。
REMOTE_ADDRがxxx.yyy.zzz.127でniku.2ch.netに問い合わせる場合、gethostbyname("127.zzz.yyy.xxx.niku.2ch.net")となります。
登録されている場合、127.0.0.2を返しますが、登録されていない場合、127.zzz.yyy.xxx.niku.2ch.net(問合せ文字列)が返却され127.を含みます。
DNSBLに登録されていないことを確認しています。
失礼しました。
gethostbyname()の仕様をちょっと勘違いしていて、該当しない場合は空が帰ってくると思っていました。
この部分について修正したいと思いますので、しばらくお待ちください。
修正が完了しましたので、上記のv1.3.1のblacklist_lib.phpをお使いください。
バグのご連絡ありがとうございました。
hsur様
ご対応ありがとうございました。
コメントは承認後の表示となります。
OpenIDでログインすると、即時に公開されます。