Ответ 1
Bittorrent DHT можно загружать по-разному. Ему просто нужен IP и порт любого другого доступного DHT node.
Текущие клиенты обычно используют несколько следующих стратегий:
- bootstrap из кеша долгоживущих узлов из предыдущего сеанса
- используйте сопоставление записей DNS A/AAAA с известным node (например, router.bittorrent.com или dht.transmissionbt.com) с известным портом
- используйте node встроенный в .torrent файл
- получить DHT-порт от клиента bittorrent через соединение bittorrent, установленное другими способами, например. обычный трекер.
- Если одноранговое соединение встроено в ссылку на магнит, можно также связать DHT-загрузку с сообщением порта
- обнаружение многоадресной сотовой сети через LSD
- перекрестная передача от IPv4 к DHT IPv6 и наоборот (при необходимости)
Другие способы, такие как настраиваемые пользователем списки начальной загрузки, DNS SRV записывают циклическое сопоставление в живые узлы или - если все остальное не удается - добавление IP-адресов ваших друзей вручную выполняется.
Как только a node присоединится к сети, первая стратегия, упомянутая выше, начнет работать, и маловероятно, что ей придется снова загрузиться.
Таким образом, хотя большинство реализаций полагаются на одно/несколько точек входа в сеть для удобства, сам протокол достаточно гибкий, чтобы децентрализовать точки входа.
Просто для акцента: любой, любой node в DHT может использоваться для подключения к сети. Выделенные узлы бутстрапов являются деталями реализации, а не частью протокола, и при необходимости могут быть заменены другими механизмами обнаружения.