REMOTE_ADDR
не подделать, но то в теории, потому что всякая кака на твоей стороне любит его подменять для удобства. Например нередко можно встретить глубоко в чужом коде подобную дыру:if(isset($_SERVER['HTTP_X_FORWARDED_FOR'])) {
$xffaddrs = explode(',',$_SERVER['HTTP_X_FORWARDED_FOR']);
$_SERVER['REMOTE_ADDR'] = $xffaddrs[0];
}