絶品ゆどうふのタレ

ふと気づいたことを綴るだけのメモ

PEAR::Net_IPv4が便利な件

IP帯域で制限するのってわりと面倒。

Allow,Denyを.htaccessで設定する方式だと極めて手軽ではあるが、エラーを返してしまうので公開サイトとしてはあまりよろしくない。
mod_rewriteで、っていう話もあるけど、それも正規表現マッチだからx.x.x.x/26とか言われたら正しく制限するのは辛い。

結局アプリケーション側でごりごりやるのかなーとか思ってたけど、派手に便利なのがあった。

PEAR::Net_IPv4
http://pear.php.net/package/Net_IPv4/

以下引用:

例 50-1IP アドレスがネットワークに含まれるかどうかチェックする

<?php

require 'Net/IPv4.php';

$ip   = '10.11.12.13';
$net1 = '10.0.0.1/8';
$net2 = '127.0.0.1/8';

echo Net_IPv4::ipInNetwork($ip, $net1) // bool(true)
echo Net_IPv4::ipInNetwork($ip, $net2) // bool(false)
?>

これは便利すぐる。
しかもこいつ、PEAR.php以外includeしない一枚物のスクリプトだから、あれこれ揃えたりせず手軽さもかなり高い感じ。

それにしてもまだまだ知らないライブラリはいっぱいあるね。