Как два биткойн-клиента узнают друг друга?
Меня интересует, как два одноранговых клиента могут соединяться друг с другом в ячеистой сети, как это делают клиенты биткойнов.
Итак, когда я запускаю Биткойн, как мой клиент присоединяется ко всем остальным? Как он находит самого первого пира (который, вероятно, знает, где находятся другие)?
Спасибо!
1 ответ
Клиенты Bitcoin используют несколько методов для поиска других клиентов. Основной метод - это список узлов из предыдущего подключения к сети. Работает очень хорошо для всего, кроме вашего первого подключения или подключения после очень длительного периода отключения.
Для случая, когда у вас нет предыдущих известных IP-адресов или они не могут быть использованы, основным резервным методом является использование начальных значений DNS. Поддерживаются несколько имен хостов (например, dnsseed.bluematt.me), которые разрешают список IP-адресов, о которых известно, что они работают. В случае сбоя клиент имеет список IP-адресов, которые, как считается, указывают на жестко запрограммированные в нем стабильные узлы.
Один метод, который раньше использовался, но с тех пор был заброшен, заключался в том, чтобы клиенты находили друг друга с помощью сервера IRC. Это работает аналогично BitTorrent-трекеру.
Как только вы подключитесь к сети, вы начнете получать списки IP-адресов и портов известных клиентов.
Источник: https://bitcoin.stackexchange.com/questions/3536/how-bitcoin-clients-find-each-other