Domanda

Sto cercando di ottenere un elenco di indirizzi IP che servono o il download di un file. Quello che ho fatto è stato quello di contattare un tracker come openbittorrent.com ottenere la seguente (come parte del file raschiare):

B%00%00%0C%5F%B1%B1l%CAGa%84S%CB%B0%9BG%84%3BE:0:1

Ora, la lunga serie in principio è l'informazioni hash. Come passo successivo, ho fatto questo:

http://tracker.sometracker.com/announce?info_hash=B%00%00%0C%5F%B1%B1l%CAGa%84S%CB%B0%9BG%84%3BE

Ha dato Me Back quanto segue. Fin qui tutto bene. Il messaggio conteneva questo:

d8:completei0e10:downloadedi0e10:incompletei2e8:intervali1931e12:min intervali965e5:peers12:U���ٿ��ӣǣ^@^@e

qualcuno può dirmi cosa dovrei fare dopo questo per ottenere gli indirizzi IP attualmente in servizio il file o scaricarlo?

È stato utile?

Soluzione

Questo non è un file torrent, che è una risposta annunciano. Sono entrambi bencode (uso bencode per decodificare loro), ma la risposta contiene annunciare solo sbirciare informazioni. Questo non è abbastanza informazioni per essere in grado di scaricare i contenuti del torrente:. Per farlo è necessario il file torrent in sé

Il membro peers del dizionario bencoded contiene gruppi di 6 byte che si può disfare con struct. Primi quattro byte sono l'indirizzo IP, seguita da due byte per la porta. Questo è un compatto annunciare risposta, che è comune (ma solo IPv4, ovviamente). Si può anche vedere le risposte non compatti che vi danno un dizionario trasparente.

Molti inseguitori oggi non voglio parlare a voi con la non-specifico raschiare annunciare che si sta inviando, o l'iniziale richiesta di annunciare che non include compact, port o event. Probabilmente si dovrebbe leggere oltre il protocollo un po 'prima di andare avanti.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top