How does DHT in the Bittorent client get bootable?

If I have a torrent without any trackers in it, and I just started a bitorent client, so I don’t have a single one yet ... how do I know with whom to connect to DHT first? It looks like I would need to find out at least ONE node in DHT to get started ...

+63
dht bittorrent
Jul 25 '09 at 5:38
source share
8 answers

When a BitTorrent client connects to DHT, there is an initial place it goes to to find peers. With the original BitTorrent client, a bitorrent.com URL has appeared to help get you started. I tried to find the link, but I could not find it. Once you have established connections with other clients, you can make announce on the DHT network to find peers for the torrent you are looking for.

Here is a link to the BitTorrent Specifications that DHT discusses.

A dictionary without a torrent tracker does not have an “announcement” key. Instead, a tracker without a tracker has a key "nodes". This key must be set to the K nearest nodes in the stream generating a client routing table. Alternatively, the key can be installed on a known good node, for example, one by the person generating the stream. Do not automatically add "router.bittorrent.com" for torrent files or automatically add this node for client routing tables.

+34
Jul 25 '09 at 6:28
source share

DHL bootstrap nodes of the main line router.utorrent.com and CNAME for it, router.bittorrent.com . Port 6881 .

+35
Jul 25 '09 at 8:05
source share

the graph at the bottom of this DHT monitoring project shows

  • dht.transmissionbt.com
  • router.utorrent.com
  • router.bittorrent.com

as a bootstrap

+21
Apr 16 2018-12-12T00:
source share

In BiTTorrent, you have three main options:

  • Torrent File: some torrent files can embed nodes so that you can link to DHT (actually recommended when creating a torrent file).
  • Hardcoding: Some torrent clients hardcode several bootstrap nodes (for example, those specified in stk). They are usually managed by companies and organizations with multi-year servers.
  • PEX / Peer Conversations . Usually you can request DHT nodes from people from whom you download other torrents (if your clients understand each other, that is, some versions are incompatible).
+14
Aug 03 2018-12-12T00:
source share

Transmission uses a hardcoded bootstrap node for dht if there is no other way to get peers:

 bootstrap_from_name( "dht.transmissionbt.com", 6881, bootstrap_af(session) ); 

I think every torrent client uses its own bootstrap node.

+8
Sep 25
source share

The client can learn about other peers supporting DHT through this interaction with them. Approved DHT support is advertised in it by Handshake. Once a customer discovers at least one good, well-connected peer of DHT, he can move around DHT to find more and more peers of DHT. He will remember these peers, called nodes in DHT-talk, between software restarts and constantly maintain / update the list during his work. In the worst case scenario, when a client does not know good peers supporting DHT, you will need to download a torrent torrent so that he can hope to contact several good peers supporting DHT that he recognizes through the tracker.

Update: For this initial DHT peer list, as @Seppo points out, a torrent client can use one or more hard-coded DNS names to look up addresses for known peers, and it can also contain a hard-coded peer list as a final reserve. One limitation of DNS, however, is that port information is not provided, so the default port is usually 6881, while other tools support peers running on different ports.

+3
Mar 30 '11 at 1:27
source share

Hard-coded buffering nodes are also used to record Deluge :

  self.session.add_dht_router("router.bittorrent.com", 6881) self.session.add_dht_router("router.utorrent.com", 6881) self.session.add_dht_router("router.bitcomet.com", 6881) 
+3
Dec 11 '15 at 5:21
source share

You need peers from some other torrent to talk. As you stated, you do not have them, you have nothing to do ....

0
Jul 25 '09 at 6:00
source share



All Articles