clonación de bitcoin cómo bitcoin encuentra nuevos nodos

Estoy estudiando blockchain, cpp y crypto, así que cloné bitcoin y creé una nueva altcoin.

todo funciona bien como esperaba, pero tengo algunas preguntas para las que no pude encontrar una respuesta.

la pregunta es sobre nodos, déjame explicarte mi caso.

Ahora tengo 3 máquinas virtuales que ejecutan las billeteras de clones de bitcoin, que ahora es una moneda nueva.

vm 1 = está conectado al nodo 100.00.00.0

nombremoneda.conf

agregar nodo = 100.00.00.0

vm 2 = es el servidor que proporciona la ip: 100.00.00.0 para la vm 1

vm 3 = billetera aleatoria también conectada a la ip 100.00.00.0 para la vm2.

nombremoneda.conf

agregar nodo = 100.00.00.0

Eliminé los nodos y dns de net.cpp para hacer este experimento, ¿de acuerdo?

strMainNetDNSSeed[][2]

pnSeed[]

así que comencé a experimentar, apagando la VM 2 que proporciona la ip para conectar las billeteras.

después de esto, la VM1 y la VM3 perdieron la conexión, bien, lo esperaba.

Entonces, mi pregunta es, ¿cómo la billetera VM 1 y VM 3 se conectarán por sí mismas y mantendrán la red en funcionamiento si la VM 2 si el servidor está fuera de línea? y tambien si los 2 usuarios no saben la ip esta compartiendo los nodos?

Busqué estos temas a continuación, pero no pude encontrar lo que estoy buscando.

¿Cómo encuentra bitcoin a sus pares?

¿Cómo encuentran inicialmente los nodos de bitcoin sus pares?

https://en.bitcoin.it/wiki/Satoshi_Client_Node_Discovery

EDITAR: el usuario a continuación tenía razón, después, mientras que las otras billeteras obtienen los pares y los nodos, por lo que ya no importa si la VM2 está fuera de línea, la red continúa, lo sorprendente de bitcoin. :)

Respuestas (1)

El cliente tiene que descargar una lista de pares cuando se conecta por primera vez a la red. Los pares conocidos son transmitidos por nodos que previamente conocían otros nodos. Sin embargo, toda esta cadena comienza con al menos dos direcciones IP que ambos nodos conocen.

Sus clientes buscarán pares conocidos, después de descargar una lista de pares conocidos de la VM2 (según sus ejemplos) para establecer una conexión en caso de fallas en los nodos codificados o conf.

Ser más preciso:

El cliente de Bitcoin tiene una serie de fuentes que utiliza para ubicar la red en el inicio inicial. En orden de importancia:

1) El mecanismo principal, si el cliente alguna vez se ejecutó en esta máquina y su base de datos está intacta, es mirar su base de datos. Realiza un seguimiento de cada nodo que ha visto en la red, hace cuánto tiempo lo vio por última vez y su dirección IP.

2) El cliente puede usar DNS para localizar una lista de nodos conectados a la red. Una de esas semillas es bitseed.xf2.org. El cliente resolverá esto y obtendrá una lista de nodos de Bitcoin.

3) El cliente tiene compilada una lista de nodos semipermanentes.

4) El cliente puede conectarse a una red IRC conocida, irc.lfnet.org, y encontrar otros nodos de esa manera. (Este método se eliminó a partir de la versión 0.8.2)

5) Toma direcciones IP de la línea de comandos (-addnode) o del archivo bitcoin.conf (addnode=).

Paso 5 en particular:

Simplemente agregue en su archivo bitcoin.conf (o yourcoin.conf) un addnode=ip.ip.ip.ipparámetro según sus nodos.

Con este método, puede agregar todo tipo de pares, desde una PC personal hasta un servidor y nodos de intercambio o lo que sea.

Espero eso ayude.

gracias, sé que podría agregar manualmente, lo que quiero saber es: los 2 usuarios no conocen el IPS, entonces, ¿cómo se conectarán, entendido?
Edité la respuesta con más precisión.
Muchas gracias, ¿es un comando que puedo escribir en modo depuración para ver a los compañeros en línea? Qué tenga un buen fin de semana
si, el comando esgetpeerinfo