在php中更改ip地址

问题描述 投票:-5回答:1

有没有办法在PHP中更改我的IP地址?任何api或一些图书馆?就像ZENMATE,Hotspot shield或IP VANISH一样?任何人都可以帮助我这件事是否可行?我得到这个代码形式谷歌搜索但这不帮助我,我也不知道它是如何工作的。任何来自你的帮助将不胜感激!

function routerDoConnect( $post )
{
$ip = "192.118.1.2";
$path = "/st_pptp.cgi";
$cleanPost = array();
$headers = "POST {$path} HTTP/1.1\r\n";
$headers .= "Host: {$ip}\r\n";
$headers .= "User-Agent: Mozilla/5.0 (Macintosh; U; Intel Mac OS X 10.5; en-US; rv:1.9.0.11) Gecko/
2009060214 Firefox/3.0.11\r\n";
$headers .= "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\n";
$headers .= "Accept-Language: en-us,en;q=0.5\r\n";
$headers .= "Accept-Encoding: gzip,deflate\r\n";
$headers .= "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7\r\n";
$headers .= "Referer: http://192.168.1.1/RST_st_pptp.htm\r\n";
$headers .= "Authorization: Basic " . base64_encode( "admin:secret" ) . "\r\n";
$headers .= "Content-Type: application/x-www-form-urlencoded\r\n";
foreach ( $post as $k => $v )
{
if ( is_array( $v ) )
{
$v = implode( "", $v );
}
$k = urlencode( $k );
$v = stripslashes( $v );
$v = urlencode( $v );
$cleanPost[] = "{$k}={$v}";
}
$postHeader = implode( "&", $cleanPost ) . "\r\n";
$headers .= "Content-Length: " . ( strlen( $postHeader ) - 2 ). "\r\n\r\n";
$headers .= $postHeader;
//echo nl2br( $headers );die();
$open = fsockopen( $ip, 80, $errno, $errstr, 60 );
if ( ! $open )
{echo( 'There was a problem connecting to the source.' );
die();
}
fputs( $open, $headers );
fgets( $open, 4096 );
fclose( $open );
}
echo "Disconnecting from ISP...";
routerDoConnect( array( 'disconnect' => "Disconnect" ) );
echo " Disconnected.<br />";
echo "Establishing new connection to ISP...";
routerDoConnect( array( 'connect' => " Connect " ) );
echo " Connected.<br /><br />Please allow 5 - 10 seconds for network to initiate.";
php dns ip
1个回答
1
投票

试试这个(如果我理解正确的话)

function curlbrowse($url,$proxy_ip,$proxy_port,$loginpassw)
{
    $loginpassw = 'username:password';
    $proxy_ip = 'proxy ip';
    $proxy_port = 'proxy port';
    $url = 'http://www.domain.com';

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_HEADER, 0);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_PROXYPORT, $proxy_port);
    curl_setopt($ch, CURLOPT_PROXYTYPE, 'HTTP');
    curl_setopt($ch, CURLOPT_PROXY, $proxy_ip);
    curl_setopt($ch, CURLOPT_PROXYUSERPWD, $loginpassw);
    $data = curl_exec($ch);
    curl_close($ch);

    return $data;
}
© www.soinside.com 2019 - 2024. All rights reserved.