Author

Topic: По какому TCP/IP адресу конектится биткоин (Read 1572 times)

giv
sr. member
Activity: 254
Merit: 251
от irc совсем отказались?
До версии 0.8.1 код для работы с irc был, но по умолчанию был отключен. Включался опцией при запуске. Где-то читал, что в 0.8.2 убрали совсем, но сам код еще не смотрел подробно.
Lis
sr. member
Activity: 293
Merit: 251
Spice must flow!
Code:
    {"bitcoin.sipa.be", "seed.bitcoin.sipa.be"},
    {"bluematt.me", "dnsseed.bluematt.me"},
    {"dashjr.org", "dnsseed.bitcoin.dashjr.org"},
    {"xf2.org", "bitseed.xf2.org"},
от irc совсем отказались?
giv
sr. member
Activity: 254
Merit: 251
Основной механизм на сегодняшний день - это dns-seed.
Заключается он в том, что у биткоин-кошелька жестко вшиты в код несколько доменных имен. Разрешая эти имена, клиент получает список адресов (довольно внушительный). Эти адреса и есть адреса биткоин-нод (естественно, это не все доступные адреса, а только "базовые"), уже от них он получает адреса других участников сети. Таким образом можно поддерживать список узлов актуальным, не изменяя при этом исходный код программы.
Вот эти доменные имена в коде:
Code:
// DNS seeds
// Each pair gives a source name and a seed name.
// The first name is used as information source for addrman.
// The second name should resolve to a list of seed addresses.
static const char *strMainNetDNSSeed[][2] = {
    {"bitcoin.sipa.be", "seed.bitcoin.sipa.be"},
    {"bluematt.me", "dnsseed.bluematt.me"},
    {"dashjr.org", "dnsseed.bitcoin.dashjr.org"},
    {"xf2.org", "bitseed.xf2.org"},
Вы сами можете проверить во что они резолвятся, выполнив команду nslookup:
Code:
nslookup seed.bitcoin.sipa.be

Кроме того, если по каким-то причинам dns-seed не сработал или отключен, то в исходники вшиты адреса биткоин-нод. Очевидно, предполагается, что хотя бы несколько из них будут онлайн.
legendary
Activity: 1120
Merit: 1069
А что будет, если по этим адресам жестко прописанным в коде не будет другого клиента хотя бы потому что у него сменился адрес? Куда в этом случае будут конектяться новые кошельки?
никуда, но пользователь может самостоятельно добавить ноды своих друзей/знакомых/пула в конфиге или командной строки
newbie
Activity: 19
Merit: 0
А что будет, если по этим адресам жестко прописанным в коде не будет другого клиента хотя бы потому что у него сменился адрес? Куда в этом случае будут конектяться новые кошельки?
Xtc
legendary
Activity: 1973
Merit: 1028
;u
Пересылаются другим клиентам с которыми установлено подключение, таким образом распространяются по сети.


hero member
Activity: 798
Merit: 1000
Куда отправляются сетевые пакеты с транзакциями?
В настройках ничего не сказано, написано просто "Сеть", но сеть сама по себе состоит из конкретных адресов, пакет пожет быть широковещательный UDP, а может быть на конкретный TCP/IP адрес. (На физическом уровне пакеты передаются от мак-адреса к другому мак-адресу).
Так вот мне непонятно по какому адресу и по какому протоколу биткоин отправляет свои транзакции !
Может кто-нибудь объяснить?
Кошелек соединяется с другими кошельками, адреса которых жестко прописаны в коде, от которых получает еще IP-адреса других кошельков... Все это он сохраняет в файлике и потом использует. Протокол TCP.
Насчет широковещательных пакетов - они зарубятся на первом же маршрутизаторе.
Насчет физических MAC-адресов - не обязательно, физический уровень не обязан быть Ethernet.
newbie
Activity: 19
Merit: 0
Куда отправляются сетевые пакеты с транзакциями?
В настройках ничего не сказано, написано просто "Сеть", но сеть сама по себе состоит из конкретных адресов, пакет пожет быть широковещательный UDP, а может быть на конкретный TCP/IP адрес. (На физическом уровне пакеты передаются от мак-адреса к другому мак-адресу).
Так вот мне непонятно по какому адресу и по какому протоколу биткоин отправляет свои транзакции !
Может кто-нибудь объяснить?
Jump to: