######

在http协议数据头里面加入选项“x-forward-for”,例如:“x-forward-for:202.204.76.254”,这样发送出去的包,就是一个特殊的包,在收包方看来,这个包的意思是,一个代理服务器发过来的数据包,而这个包的真是ip是“202.204.76.254”,其实还是实现的是三次握手,但是只不过是在发包的同时,对收包方提到了一个第三者。

function get_ip(){
if(getenv(‘HTTP_CLIENT_IP’)) {
$gb_ip = getenv(‘HTTP_CLIENT_IP’);
} elseif(getenv(‘HTTP_X_FORWARDED_FOR’)) {
$gb_ip = getenv(‘HTTP_X_FORWARDED_FOR’);
} elseif(getenv(‘REMOTE_ADDR’)) {
$gb_ip = getenv(‘REMOTE_ADDR’);
} else {
$gb_ip = $_SERVER[‘REMOTE_ADDR’];
}
return $gb_ip;
}

]]>