added code to find ip address of peers
This commit is contained in:
parent
4149a03354
commit
47e4baee15
20
ip.js
Normal file
20
ip.js
Normal file
@ -0,0 +1,20 @@
|
||||
var DHT = require('bittorrent-dht')
|
||||
var magnet = require('magnet-uri')
|
||||
|
||||
var uri = 'magnet:?xt=urn:btih:4a7b842632ca42cdd3c8d54017a8da756839b84d&dn=D0112-Chacha.Choudhary.Sabu.Kaale.Tapu.Mein.pdf&tr=udp%3A%2F%2Fexplodie.org%3A6969&tr=udp%3A%2F%2Ftracker.coppersurfer.tk%3A6969&tr=udp%3A%2F%2Ftracker.empire-js.us%3A1337&tr=udp%3A%2F%2Ftracker.leechers-paradise.org%3A6969&tr=udp%3A%2F%2Ftracker.opentrackr.org%3A1337&tr=wss%3A%2F%2Ftracker.btorrent.xyz&tr=wss%3A%2F%2Ftracker.fastcast.nz&tr=wss%3A%2F%2Ftracker.openwebtorrent.com'
|
||||
var parsed = magnet(uri)
|
||||
|
||||
console.log(parsed.infoHash) // 'e3811b9539cacff680e418124272177c47477157'
|
||||
|
||||
var dht = new DHT()
|
||||
|
||||
dht.listen(20000, function () {
|
||||
console.log('now listening')
|
||||
})
|
||||
|
||||
dht.on('peer', function (peer, infoHash, from) {
|
||||
console.log('found potential peer ' + peer.host + ':' + peer.port + ' through ' + from.address + ':' + from.port)
|
||||
})
|
||||
|
||||
// find peers for the given torrent info hash
|
||||
dht.lookup(parsed.infoHash)
|
||||
86
package-lock.json
generated
86
package-lock.json
generated
@ -395,15 +395,15 @@
|
||||
"integrity": "sha512-4xM4DYejOHQ/qWBfeqBXNA4mJ12PwcOibFYnH1kYh5U9BHciCqEJBqGNVnMJXUhm8mflujNRLSv7IiVQxovgjw=="
|
||||
},
|
||||
"bittorrent-dht": {
|
||||
"version": "8.4.0",
|
||||
"resolved": "https://registry.npmjs.org/bittorrent-dht/-/bittorrent-dht-8.4.0.tgz",
|
||||
"integrity": "sha512-FRe/+MYBePev7Yb+BXSclkVuDxb/w+gUbao6nVHYQRaKO7aXE+ARRlL3phqm6Rdhw5CRVoLMbLd49nxmCuUhUQ==",
|
||||
"version": "9.0.0",
|
||||
"resolved": "https://registry.npmjs.org/bittorrent-dht/-/bittorrent-dht-9.0.0.tgz",
|
||||
"integrity": "sha512-X5ax4G/PLtEPfqOUjqDZ2nmPENndWRMK4sT2jcQ4sXor904zhR40r4KqTyTvWYAljh5/hPPqM9DCUUtqWzRXoQ==",
|
||||
"requires": {
|
||||
"bencode": "^2.0.0",
|
||||
"buffer-equals": "^1.0.3",
|
||||
"debug": "^3.1.0",
|
||||
"inherits": "^2.0.1",
|
||||
"k-bucket": "^4.0.0",
|
||||
"k-bucket": "^5.0.0",
|
||||
"k-rpc": "^5.0.0",
|
||||
"last-one-wins": "^1.0.4",
|
||||
"lru": "^3.1.0",
|
||||
@ -3466,11 +3466,10 @@
|
||||
"integrity": "sha1-9DG0t/By3FAKXxDOf07HGTDnATQ="
|
||||
},
|
||||
"k-bucket": {
|
||||
"version": "4.0.1",
|
||||
"resolved": "https://registry.npmjs.org/k-bucket/-/k-bucket-4.0.1.tgz",
|
||||
"integrity": "sha512-YvDpmY3waI999h1zZoW1rJ04fZrgZ+5PAlVmvwDHT6YO/Q1AOhdel07xsKy9eAvJjQ9xZV1wz3rXKqEfaWvlcQ==",
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/k-bucket/-/k-bucket-5.0.0.tgz",
|
||||
"integrity": "sha512-r/q+wV/Kde62/tk+rqyttEJn6h0jR7x+incdMVSYTqK73zVxVrzJa70kJL49cIKen8XjIgUZKSvk8ktnrQbK4w==",
|
||||
"requires": {
|
||||
"inherits": "^2.0.1",
|
||||
"randombytes": "^2.0.3"
|
||||
}
|
||||
},
|
||||
@ -3484,6 +3483,17 @@
|
||||
"k-rpc-socket": "^1.7.2",
|
||||
"randombytes": "^2.0.5",
|
||||
"safe-buffer": "^5.1.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"k-bucket": {
|
||||
"version": "4.0.1",
|
||||
"resolved": "https://registry.npmjs.org/k-bucket/-/k-bucket-4.0.1.tgz",
|
||||
"integrity": "sha512-YvDpmY3waI999h1zZoW1rJ04fZrgZ+5PAlVmvwDHT6YO/Q1AOhdel07xsKy9eAvJjQ9xZV1wz3rXKqEfaWvlcQ==",
|
||||
"requires": {
|
||||
"inherits": "^2.0.1",
|
||||
"randombytes": "^2.0.3"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"k-rpc-socket": {
|
||||
@ -9006,6 +9016,36 @@
|
||||
"debug": "^3.1.0",
|
||||
"run-parallel": "^1.1.2",
|
||||
"xtend": "^4.0.1"
|
||||
},
|
||||
"dependencies": {
|
||||
"bittorrent-dht": {
|
||||
"version": "8.4.0",
|
||||
"resolved": "https://registry.npmjs.org/bittorrent-dht/-/bittorrent-dht-8.4.0.tgz",
|
||||
"integrity": "sha512-FRe/+MYBePev7Yb+BXSclkVuDxb/w+gUbao6nVHYQRaKO7aXE+ARRlL3phqm6Rdhw5CRVoLMbLd49nxmCuUhUQ==",
|
||||
"requires": {
|
||||
"bencode": "^2.0.0",
|
||||
"buffer-equals": "^1.0.3",
|
||||
"debug": "^3.1.0",
|
||||
"inherits": "^2.0.1",
|
||||
"k-bucket": "^4.0.0",
|
||||
"k-rpc": "^5.0.0",
|
||||
"last-one-wins": "^1.0.4",
|
||||
"lru": "^3.1.0",
|
||||
"randombytes": "^2.0.5",
|
||||
"record-cache": "^1.0.2",
|
||||
"safe-buffer": "^5.0.1",
|
||||
"simple-sha1": "^2.1.0"
|
||||
}
|
||||
},
|
||||
"k-bucket": {
|
||||
"version": "4.0.1",
|
||||
"resolved": "https://registry.npmjs.org/k-bucket/-/k-bucket-4.0.1.tgz",
|
||||
"integrity": "sha512-YvDpmY3waI999h1zZoW1rJ04fZrgZ+5PAlVmvwDHT6YO/Q1AOhdel07xsKy9eAvJjQ9xZV1wz3rXKqEfaWvlcQ==",
|
||||
"requires": {
|
||||
"inherits": "^2.0.1",
|
||||
"randombytes": "^2.0.3"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"torrent-piece": {
|
||||
@ -9523,6 +9563,36 @@
|
||||
"ut_pex": "^1.1.1",
|
||||
"xtend": "^4.0.1",
|
||||
"zero-fill": "^2.2.3"
|
||||
},
|
||||
"dependencies": {
|
||||
"bittorrent-dht": {
|
||||
"version": "8.4.0",
|
||||
"resolved": "https://registry.npmjs.org/bittorrent-dht/-/bittorrent-dht-8.4.0.tgz",
|
||||
"integrity": "sha512-FRe/+MYBePev7Yb+BXSclkVuDxb/w+gUbao6nVHYQRaKO7aXE+ARRlL3phqm6Rdhw5CRVoLMbLd49nxmCuUhUQ==",
|
||||
"requires": {
|
||||
"bencode": "^2.0.0",
|
||||
"buffer-equals": "^1.0.3",
|
||||
"debug": "^3.1.0",
|
||||
"inherits": "^2.0.1",
|
||||
"k-bucket": "^4.0.0",
|
||||
"k-rpc": "^5.0.0",
|
||||
"last-one-wins": "^1.0.4",
|
||||
"lru": "^3.1.0",
|
||||
"randombytes": "^2.0.5",
|
||||
"record-cache": "^1.0.2",
|
||||
"safe-buffer": "^5.0.1",
|
||||
"simple-sha1": "^2.1.0"
|
||||
}
|
||||
},
|
||||
"k-bucket": {
|
||||
"version": "4.0.1",
|
||||
"resolved": "https://registry.npmjs.org/k-bucket/-/k-bucket-4.0.1.tgz",
|
||||
"integrity": "sha512-YvDpmY3waI999h1zZoW1rJ04fZrgZ+5PAlVmvwDHT6YO/Q1AOhdel07xsKy9eAvJjQ9xZV1wz3rXKqEfaWvlcQ==",
|
||||
"requires": {
|
||||
"inherits": "^2.0.1",
|
||||
"randombytes": "^2.0.3"
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
"webtorrent-cli": {
|
||||
|
||||
@ -5,6 +5,7 @@
|
||||
"main": "index.js",
|
||||
"dependencies": {
|
||||
"bitcoin-core": "^2.0.0",
|
||||
"bittorrent-dht": "^9.0.0",
|
||||
"bittorrent-tracker": "^9.10.1",
|
||||
"body-parser": "^1.18.3",
|
||||
"bootstrap": "^4.1.3",
|
||||
|
||||
11
seed.js
11
seed.js
@ -1,11 +0,0 @@
|
||||
var dragDrop = require('drag-drop')
|
||||
var WebTorrent = require('webtorrent')
|
||||
|
||||
var client = new WebTorrent()
|
||||
|
||||
// When user drops files on the browser, create a new torrent and start seeding it!
|
||||
dragDrop('body', function (files) {
|
||||
client.seed(files, function (torrent) {
|
||||
console.log('Client is seeding:', torrent.infoHash)
|
||||
})
|
||||
})
|
||||
Loading…
Reference in New Issue
Block a user