Query DHT Server - PullRequest
       6

Query DHT Server

1 голос
/ 18 февраля 2012

Я пытаюсь сделать простой запрос к серверу DHT.

Я пытаюсь сделать простой простой пример для тестирования запросов к серверам, но я не получаю ответ отсервер в любой форме ...

Маленький пример:

$socket = fsockopen("udp://router.bittorrent.com", 6881, $errno, $errstr, 3);
fwrite($socket, 'p'); $Head = fread($socket, 4);
$CheckStatus = socket_get_status($socket);      
if($CheckStatus["unread_bytes"] == 0)
{
    return 0;
}   
$do = 1;
while($do)
{
    $str = fread($socket,1);
    $stats .= $str;
    $status = socket_get_status($socket);
    if($status["unread_bytes"] == 0)
    {
        $do = 0;
    }
}
fclose($socket);

Информация о запросах на сервере DHT находится здесь: http://www.bittorrent.org/beps/bep_0005.html#dht-queries

Но я непонять, как сделать это с помощью PHP.Это возможно?В чем проблема с моим кодом?

1 Ответ

1 голос
/ 20 августа 2012

Как упоминается в 8472, ваш клиент отправляет p, что не является допустимым запросом. Чтобы увидеть действительные форматы запросов, посмотрите здесь: bep 005

...