将php页面的执行限制为从某个ip-range发出的请求

Joh*_*son 2 php security ip-address access-control

我有一个PHP页面,我需要限制只有我们的防火墙内的客户端的执行访问.

我怎么会写一个PHP脚本,可以查找客户端的IP地址和与之相匹配的IP范围(如10 ..*或200.10.10.*).

Pau*_*xon 6

您可以使用ip2long将点状四边形转换为长值,然后执行一些算术来检查给定的网络/掩码组合:

$network=ip2long("200.10.10.0");
$mask=ip2long("255.255.255.0");

$remote=ip2long($_SERVER['REMOTE_ADDR']);

if (($remote & $mask) == $network)
{
   //match!
}
else
{
   //does not match!
}
Run Code Online (Sandbox Code Playgroud)