无法获取php脚本来ping特定端口和IP

时间:2012-10-03 19:12:28

标签: php ping

我一直在尝试ping特定的IP和端口,以检查它是在线还是离线。如果我将端口设置为80,它可以工作,但任何其他端口,它说它不起作用。我可以通过游戏,telnet等连接到端口

//Connection Info
$ip = "*******"; //IP
$port = "2302"; //Port

//Connection
$sock = @fsockopen( $ip, $port, $num, $error, 2 ); //2 is the ping time, you can sub what you need

//Check Status

if( !$sock ){

//Closed
        echo( "It appears to be closed" );

}

if( $sock ){

//Open
        echo( "It appears to be open" );
        fclose($sock);

}

这是我得到的错误

Warning: fsockopen() [function.fsockopen]: unable to connect to *******:2302 (No connection could be made because the target machine actively refused it. )

1 个答案:

答案 0 :(得分:0)

  

如果我将端口设置为80,它可以正常工作,但任何其他端口都认为它不起作用。

这使它看起来非常像防火墙问题(无论是在生成端还是在接收端)。

除了限制范围的端口外,您确定运行此代码的服务器是否允许任何通信?端口25,81,110,443和8080怎么样?