いろいろ検索してて、いい方法を見つけました。今回のようなパターンには最高の方法です
原理はアクセスの有った ipアドレスからホスト名を引く関数を使う方法です。
名前引きのできないアドレスからの訪問は bbclone を見ている限り国内からのアクセスはほとんどありませんし注意書きを書いておけば、まずは問題なさそうです。
外国からのアクセスで、特に今回のようなアクセス元はほとんどの場合がipアドレスでのアクセスで名前引きができなんですよね。こんなにぴったりの方法は他にありません
問題はプロキシサーバーの場合どうなのかということですが一度試してみます。
プロキシに対応できない場合は htsccess と組み合わせれば怖いもん無しです ・・ たぶん
それよりも一番うれしいのは htaccess の方法のように denny リストの更新が不要なことですよ
これくらいのコードなら今の掲示板にも比較的簡単に組み込めそうですし ・・・ たぶん
$ipaddress = $_SERVER['REMOTE_ADDR'];
$hostname = gethostbyaddr($ipaddress);
if ($ipaddress==$hostname) {
// 書き込みエラー処理に飛ばす
exit;
}
// 書き込みを続行
しばらく使ってみて、また結果報告をしたいと思います。
この方法なら、書き込みのあったアドレスのエラーログも取れそうです。