Taller - Montar un nodo Bitcoin y LND (Actualizado a Marzo 2019)

  • Autor del tema Autor del tema bmbnct
  • Fecha de inicio Fecha de inicio
Parece que no me esta conectando al nodo btcd. He revisado user y psswd en los dos archivos de confguracion y estan igual.😛ienso:

Código:
pi@raspberrypi:~/.lnd $ lnd stop
2018-07-20 21:30:02.612 [INF] LTND: Version 0.4.2-beta commit=7cf5ebe2650b6798182e10be198c7ffc1f1d6e19
2018-07-20 21:30:02.613 [INF] LTND: Active chain: Bitcoin (network=mainnet)
2018-07-20 21:30:02.613 [INF] CHDB: Checking for schema update: latest_version=0, db_version=0
2018-07-20 21:30:02.624 [INF] RPCS: password RPC server listening on 127.0.0.1:10009
2018-07-20 21:30:02.625 [INF] RPCS: password gRPC proxy started at 127.0.0.1:8080
2018-07-20 21:30:02.625 [INF] LTND: Waiting for wallet encryption password. Use `lncli create` to create wallet, or `lncli unlock` to unlock already created wallet.
2018-07-20 21:30:37.642 [INF] LNWL: Peine wallet
2018-07-20 21:30:37.999 [INF] LTND: Primary chain is set to: bitcoin
2018-07-20 21:30:38.000 [INF] LTND: Initializing bitcoind backed fee estimator
unable to create chain control: Post http://localhost:8332: dial tcp [::1]:8332: connect: connection refused
Post http://localhost:8332: dial tcp [::1]:8332: connect: connection refused
pi@raspberrypi:~/.lnd $
 
Parece que no me esta conectando al nodo btcd. He revisado user y psswd en los dos archivos de confguracion y estan igual.😛ienso:

Código:
pi@raspberrypi:~/.lnd $ lnd stop
2018-07-20 21:30:02.612 [INF] LTND: Version 0.4.2-beta commit=7cf5ebe2650b6798182e10be198c7ffc1f1d6e19
2018-07-20 21:30:02.613 [INF] LTND: Active chain: Bitcoin (network=mainnet)
2018-07-20 21:30:02.613 [INF] CHDB: Checking for schema update: latest_version=0, db_version=0
2018-07-20 21:30:02.624 [INF] RPCS: password RPC server listening on 127.0.0.1:10009
2018-07-20 21:30:02.625 [INF] RPCS: password gRPC proxy started at 127.0.0.1:8080
2018-07-20 21:30:02.625 [INF] LTND: Waiting for wallet encryption password. Use `lncli create` to create wallet, or `lncli unlock` to unlock already created wallet.
2018-07-20 21:30:37.642 [INF] LNWL: Peine wallet
2018-07-20 21:30:37.999 [INF] LTND: Primary chain is set to: bitcoin
2018-07-20 21:30:38.000 [INF] LTND: Initializing bitcoind backed fee estimator
unable to create chain control: Post http://localhost:8332: dial tcp [::1]:8332: connect: connection refused
Post http://localhost:8332: dial tcp [::1]:8332: connect: connection refused
pi@raspberrypi:~/.lnd $

Esta bitcoind ejecutándose? Es decir responde a los comandos 'bitcoin-cli getblockcount' por ejemplo?

Si es así, ¿puedes pegar aqui los archivos bitcoin.conf y lnd.conf (oculta las claves se quieres, con verificar que el usuario y password coinciden es suficiente, tu ip pública y el alias ocultalo también, no hace falta q lo sepamos)?

---------- Post added 20-jul-2018 at 23:48 ----------

Stadicus esta trabajando en una interface Web donde, sin necesidad de comandos, será posible interactuar con LND.

"Having a personal full node is great, but the command line interface is just not for everyday usage."

You must be registered for see images
Pues ya esta acabada, según indica la ha desarrollado @francoismasurel

 
Última edición:
Esta bitcoind ejecutándose? Es decir responde a los comandos 'bitcoin-cli getblockcount' por ejemplo?

Si es así, ¿puedes pegar aqui los archivos bitcoin.conf y lnd.conf (oculta las claves se quieres, con verificar que el usuario y password coinciden es suficiente, tu ip pública y el alias ocultalo también, no hace falta q lo sepamos)?

---------- Post added 20-jul-2018 at 23:48 ----------

Pues ya esta acabada, según indica la ha desarrollado @francoismasurel


Ahora si. Habia reiniciado la pi y no me habia acordado de reiniciar btcd.
Esta sincronizando ya

Edit: Me da este mensaje, no tiene buena pinta.

Código:
2018-07-20 22:18:55.657 [INF] DISC: Attempting to bootstrap with: Authenticated Channel Graph
2018-07-20 22:18:55.712 [INF] DISC: Attempting to bootstrap with: BOLT-0010 DNS Seed: [[nodes.lightning.directory soa.nodes.lightning.directory]]
2018-07-20 22:19:15.714 [ERR] DISC: Unable to query bootstrapper BOLT-0010 DNS Seed: [[nodes.lightning.directory soa.nodes.lightning.directory]]: lookup soa.nodes.lightning.directory on 1.1.1.1:53: read udp 192.168.0.254:39933->1.1.1.1:53: i/o timeout
2018-07-20 22:19:15.715 [INF] DISC: Obtained 0 addrs to bootstrap network with
2018-07-20 22:19:15.715 [INF] DISC: Attempting to bootstrap with: Authenticated Channel Graph
2018-07-20 22:19:15.769 [INF] DISC: Attempting to bootstrap with: BOLT-0010 DNS Seed: [[nodes.lightning.directory soa.nodes.lightning.directory]]
2018-07-20 22:19:35.771 [ERR] DISC: Unable to query bootstrapper BOLT-0010 DNS Seed: [[nodes.lightning.directory soa.nodes.lightning.directory]]: lookup soa.nodes.lightning.directory on 1.1.1.1:53: read udp 192.168.0.254:45226->1.1.1.1:53: i/o timeout
2018-07-20 22:19:35.772 [INF] DISC: Obtained 0 addrs to bootstrap network with
2018-07-20 22:19:35.772 [INF] DISC: Attempting to bootstrap with: Authenticated Channel Graph
2018-07-20 22:19:35.826 [INF] DISC: Attempting to bootstrap with: BOLT-0010 DNS Seed: [[nodes.lightning.directory soa.nodes.lightning.directory]]
2018-07-20 22:19:55.829 [ERR] DISC: Unable to query bootstrapper BOLT-0010 DNS Seed: [[nodes.lightning.directory soa.nodes.lightning.directory]]: lookup soa.nodes.lightning.directory on 1.1.1.1:53: read udp 192.168.0.254:45376->1.1.1.1:53: i/o timeout
2018-07-20 22:19:55.830 [INF] DISC: Obtained 0 addrs to bootstrap network with
2018-07-20 22:19:55.830 [INF] DISC: Attempting to bootstrap with: Authenticated Channel Graph
2018-07-20 22:19:55.889 [INF] DISC: Attempting to bootstrap with: BOLT-0010 DNS Seed: [[nodes.lightning.directory soa.nodes.lightning.directory]]
2018-07-20 22:20:15.892 [ERR] DISC: Unable to query bootstrapper BOLT-0010 DNS Seed: [[nodes.lightning.directory soa.nodes.lightning.directory]]: lookup soa.nodes.lightning.directory on 1.1.1.1:53: read udp 192.168.0.254:57090->1.1.1.1:53: i/o timeout
2018-07-20 22:20:15.892 [INF] DISC: Obtained 0 addrs to bootstrap network with
2018-07-20 22:20:15.892 [INF] DISC: Attempting to bootstrap with: Authenticated Channel Graph
2018-07-20 22:20:15.948 [INF] DISC: Attempting to bootstrap with: BOLT-0010 DNS Seed: [[nodes.lightning.directory soa.nodes.lightning.directory]]
2018-07-20 22:20:35.950 [ERR] DISC: Unable to query bootstrapper BOLT-0010 DNS Seed: [[nodes.lightning.directory soa.nodes.lightning.directory]]: lookup soa.nodes.lightning.directory on 1.1.1.1:53: read udp 192.168.0.254:45343->1.1.1.1:53: i/o timeout
2018-07-20 22:20:35.950 [INF] DISC: Obtained 0 addrs to bootstrap network with
2018-07-20 22:20:35.951 [INF] DISC: Attempting to bootstrap with: Authenticated Channel Graph
2018-07-20 22:20:36.005 [INF] DISC: Attempting to bootstrap with: BOLT-0010 DNS Seed: [[nodes.lightning.directory soa.nodes.lightning.directory]]
2018-07-20 22:20:56.007 [ERR] DISC: Unable to query bootstrapper BOLT-0010 DNS Seed: [[nodes.lightning.directory soa.nodes.lightning.directory]]: lookup soa.nodes.lightning.directory on 1.1.1.1:53: read udp 192.168.0.254:44533->1.1.1.1:53: i/o timeout
2018-07-20 22:20:56.008 [INF] DISC: Obtained 0 addrs to bootstrap network with
2018-07-20 22:20:56.008 [INF] DISC: Attempting to bootstrap with: Authenticated Channel Graph
2018-07-20 22:20:56.063 [INF] DISC: Attempting to bootstrap with: BOLT-0010 DNS Seed: [[nodes.lightning.directory soa.nodes.lightning.directory]]

He mirado en github y recomendaban conectarse manualmente a un nodo para sincronizar, he usado este y parece que va bien, esta leyendo canales y saldos.

Código:
lncli connect 031feee8045899c658eec2b6f2f6da6e4bdd7baabdc61bdc017761577342fbd011@76.184.81.28:9735
 
Última edición:
La red Lightning ya ha pasado los 10000 canales y esta cerca de los 100 Bitcoins de capacidad.



Para ver lo que nuestro nodo esta viendo (depende de los nodos a los que estemos conectados):

lncli getnetworkinfo

---------- Post added 21-jul-2018 at 09:27 ----------

Guía para añadir a favoritos:

Aprendiendo Bitcoin desde la línea de comandos.

 
Automatizar copia de seguridad de todo nuestro nodo Lightning Network (estado de los canales, wallet, nodos conectados...)

En el post 145, cuando instalamos el nodo Lightning con LND, en el paso i), se nos facilitaron las 24 palabras de nuestra semilla de la cartera bitcoin en LND. No obstante, esta semilla únicamente es para la cartera bitcoin, no sirve para restaurar el estado y saldo de los canales, nodos conectados... Es decir, si perdemos nuestro nodo por cualquier motivo, perderíamos también el saldo que tengamos en los canales LN. Por ello, es vital realizar con bastante regularidad copias de seguridad de nuestro nodo.

Los siguientes pasos consiguen que nuestra raspberry, cada 59 minutos, realice una comprobación del directorio .lnd y el directorio de un pendrive (donde va a ir la copia), si son diferentes, copia los ficheros que hayan cambiado al pendrive. Es decir mantiene una copia exacta del directorio .lnd en un pendrive.

a) Creamos el directorio donde montar el pendrive y donde va a ir el backup de .lnd

Código:
sudo mkdir /home/pi/Backup_LND
b) Insertamos un pendrive en cualquiera de los puertos USB que tengamos libre.

c) Listamos los medios de almacenamiento de la rasp con el comando:

Código:
lsblk
d) El pendrive, si únicamente tenemos el disco duro conectado a la raspberry, aparecerá con el nombre "sdb", para asegurarnos podremos ver el tamaño de este. La partición a formatear será la llamada "sdb1"; la formateamos con el comando:

Código:
sudo mkfs.ext4 /dev/sdb1
e) Configuramos fstab para que el pendrive se monte automáticamente en caso de reinicio de la raspberry:

- Ejecutamos el siguiente comando para sacar la información necesaria de nuestro pendrive:

Código:
sudo blkid
You must be registered for see images


- Nos fijaremos en el PARTUUID que aparece entrecomillada en la línea de la partición antes formateada (sdb1) en mi caso es el 0b0bcef8-01

- Ejecutamos el siguiente comando para editar el archivo fstab:

Código:
sudo nano /etc/fstab
- Se nos abrirá el archivo y debemos añadir la siguiente línea cambiando el PARTUUID por el nuestro (el que ha ansioso en el primer paso del punto e)

Código:
PARTUUID=0b0bcef8-01 /home/pi/Backup_LND ext4 defaults,noatime 0 0
- Para guardar el fichero pulsamos la tecla "Control" y sin soltarla la "x"; nos preguntará si queremos guardar los cambios, soltamos las teclas y pulsamos la "y" y después la tecla intro para sobreescribir el fichero.


f) El ultimo paso sería programar la copia de seguridad cada 59 minutos del directorio .lnd al directorio donde hemos montado el pendrive; para ello:

- Abrimos el archivo crontab y lo editamos:

Código:
sudo nano /etc/crontab
- Insertamos la siguiente línea:

Código:
*/59 *  * * *   root    rsync -a --delete /home/pi/.lnd /home/pi/Backup_LND
You must be registered for see images

- Para guardar el fichero pulsamos la tecla "Control" y sin soltarla la "x"; nos preguntará si queremos guardar los cambios, soltamos las teclas y pulsamos la "y" y después la tecla intro para sobreescribir el fichero.


HECHO!! Para comprobar que la copia se realiza correctamente, podremos verlo listando el contenido de .lnd en el pendrive tras pasar una hora:

Código:
ls /home/pi/Backup_LND/.lnd/ -shla
 
Última edición:
Bueno, ya tengo configurada la copia de seguridad, solo me falta verificar que se genera el archivo.

Bmb, ¿ te has instalado el servidor web para el nodo que indicas más arriba ?

He recopilado los comandos mas utiles , ya que cada vez que queria hacer algo no me acordaba y tenia que andar rebuscando por todo el hilo. Igual a alguien le es de utilidad. Lo ire actualizando segun vayamos haciendo mas cosas.

Código:
***************************************************************************************************
************************************************  RASPBERRY  **************************************
***************************************************************************************************

DESCARGAR PAQUETES SOFTWARE                   sudo apt-get update

ACTUALIZAR PAQUETES SOFTWARE                  sudo apt-get upgrade

REINICIAR RASPBERRY                           sudo shutdown -r now

APAGAR RASPBERRY                              sudo shutdown -h now

MENU CONFIGURACION                            sudo raspi-config

TEMPERATURA RASPBERRY                         sudo vcgencmd measure_temp

LISTAR INFORMACION MEDIOS DE ALMACENAMIENTO   sudo blkid

FORMATEAR USB EN EXT4                         sudo mkfs.ext4 /dev/sdb1

VER CONSUMO PROCESOS ACTIVOS                  sudo top


***************************************************************************************************
*********************************************  BITCOIN CORE  **************************************
***************************************************************************************************

VER VERSION SOFTWARE                           bitcoind --version

EDITAR ARCHIVO DE CONFIGURACION                nano .bitcoin/bitcoin.conf

ARRANCAR BITCOIN CORE                          bitcoind &

VER INFORMACION DEL NODO                       bitcoin-cli -getinfo


***************************************************************************************************
********************************************  LIGHTLING NETWORK  **********************************
***************************************************************************************************

VERIFICAR COPIA SEGURIDAD LN                   ls /home/pi/Backup_LND/.lnd/ -shla

EDITAR TIEMPO COPIA SEGURIDAD                  sudo nano /etc/crontab

VER INFORMACION DEL NODO                       lncli getnetworkinfo

VERSION SOFTWARE LN                            lnd --version

EDITAR ARCHIVO CONFIGURACION                   nano lnd.conf

ARRANCAR SESION SCREEN                         screen

SALIR DE SCREEN SIN CERRAR                     ctrl + a + d

VOLVER A SCREEN ABIERTO                        screen -r

ARRANCAR LN (EN SCREEN)                        lnd

CREAR WALLET NUEVO                             lncli create

ABRIR WALLET EXISTENTE                         lncli unlock
 
Última edición:
Bueno, ya tengo configurada la copia de seguridad, solo me falta verificar que se genera el archivo.

Bmb, ¿ te has instalado el servidor web para el nodo que indicas más arriba ?

He recopilado los comandos mas utiles , ya que cada vez que queria hacer algo no me acordaba y tenia que andar rebuscando por todo el hilo. Igual a alguien le es de utilidad. Lo ire actualizando segun vayamos haciendo mas cosas.

Código:
***************************************************************************************************
************************************************  RASPBERRY  **************************************
***************************************************************************************************

DESCARGAR PAQUETES SOFTWARE                   sudo apt-get update

ACTUALIZAR PAQUETES SOFTWARE                  sudo apt-get upgrade

REINICIAR RASPBERRY                           sudo shutdown -r now

APAGAR RASPBERRY                              sudo shutdown -h now

MENU CONFIGURACION                            sudo raspi-config

TEMPERATURA RASPBERRY                         sudo vcgencmd measure_temp

LISTAR INFORMACION MEDIOS DE ALMACENAMIENTO   sudo blkid

FORMATEAR USB EN EXT4                         sudo mkfs.ext4 /dev/sdb1

VER CONSUMO PROCESOS ACTIVOS                  sudo top


***************************************************************************************************
*********************************************  BITCOIN CORE  **************************************
***************************************************************************************************

VER VERSION SOFTWARE                           bitcoind --version

EDITAR ARCHIVO DE CONFIGURACION                nano .bitcoin/bitcoin.conf

ARRANCAR BITCOIN CORE                          bitcoind &

VER INFORMACION DEL NODO                       bitcoin-cli -getinfo


***************************************************************************************************
********************************************  LIGHTLING NETWORK  **********************************
***************************************************************************************************

VERIFICAR COPIA SEGURIDAD LN                   ls /home/pi/Backup_LND/.lnd/ -shla

EDITAR TIEMPO COPIA SEGURIDAD                  sudo nano /etc/crontab

VER INFORMACION DEL NODO                       lncli getnetworkinfo

VERSION SOFTWARE LN                            lnd --version

EDITAR ARCHIVO CONFIGURACION                   nano lnd.conf

ARRANCAR SESION SCREEN                         screen

SALIR DE SCREEN SIN CERRAR                     ctrl + a + d

VOLVER A SCREEN ABIERTO                        screen -r

ARRANCAR LN (EN SCREEN)                        lnd

CREAR WALLET NUEVO                             lncli create

ABRIR WALLET EXISTENTE                         lncli unlock
Pues no, lo tengo en "pendientes" junto con otras cosillas:
- Estoy mirando como instalar Bisq en la raspberry (hay que compilarlo para arm pero se me está resistiendo un error de Java) para que al estar 24x7 conectada, las ofertas sigan apareciendo, sino cuando se cierra Bisq las ofertas desaparecen (es p2p).

- Luego quiero ver como funciona LN con tor.

Y después quiero probar eso que comentas.

Según vaya resolviendo cosillas, las pondré por aquí.
 
Uppppp¡¡

Bueno, ya hemos vuelto de vacaciones, y digo yo que habra que seguir haciendo cosillas ¿no?

Tengo el nodo funcionando como un reloj, pero el cuerpo me pide cacharrear algo mas, no se, meter pasta, abrir canales, ponerle alguna interface chula.

Espero que Bnb no nos abandone a nuestra suerte. Si es asi, al menos, apuntanos la direccion a seguir. 😀

Resulta curioso, pero a la vuelta de vacaciones me han metido en un curso y lo primero ha sido usar el putty y conectar por ssh. Me ha venido de pm lo aprendido aqui "¿ Putty? ¿SSH? si, si tranki que yo controlo" :XX:

Tengo un par de dudas. A ver si me podeis ayudar.

- ¿ como actualizo versiones de btcd y lnd? Al menos la de btcd ya toca y no se si con sudo apt-get update/upgrade es suficiente o eso es solo para el SO.

- ¿Es posible conectar por ssh con la raspberry desde fuera de mi red?

- ¿Se pueden configurar el nodo para que arranque todo solo ante una perdida de alimentacion?

- He intentado conectar con el nodo desde Samurai y no me deja, he revisado
ip , rpc user/password, no se que puede ser.

- Hago un sudo top y me dice que btcd consume el 26% de RAM y lnd un 65%. ¿lo veis normal?

Saludos.
 
Última edición:
Uppppp¡¡

Bueno, ya hemos vuelto de vacaciones, y digo yo que habra que seguir haciendo cosillas ¿no?

Tengo el nodo funcionando como un reloj, pero el cuerpo me pide cacharrear algo mas, no se, meter pasta, abrir canales, ponerle alguna interface chula.

Espero que Bnb no nos abandone a nuestra suerte. Si es asi, al menos, apuntanos la direccion a seguir. 😀

Resulta curioso, pero a la vuelta de vacaciones me han metido en un curso y lo primero ha sido usar el putty y conectar por ssh. Me ha venido de pm lo aprendido aqui "¿ Putty? ¿SSH? si, si tranki que yo controlo" :XX:

Tengo un par de dudas. A ver si me podeis ayudar.

- ¿ como actualizo versiones de btcd y lnd? Al menos la de btcd ya toca y no se si con sudo apt-get update/upgrade es suficiente o eso es solo para el SO.

- ¿Es posible conectar por ssh con la raspberry desde fuera de mi red?

- ¿Se pueden configurar el nodo para que arranque todo solo ante una perdida de alimentacion?

- He intentado conectar con el nodo desde Samurai y no me deja, he revisado
ip , rpc user/password, no se que puede ser.

- Hago un sudo top y me dice que btcd consume el 26% de RAM y lnd un 65%. ¿lo veis normal?

Saludos.

Yo también he vuelto de vacaciones, a ver si poco a poco vamos haciendo cosas.
Intento responder a tus preguntas:

- ¿ como actualizo versiones de btcd y lnd? Al menos la de btcd ya toca y no se si con sudo apt-get update/upgrade es suficiente o eso es solo para el SO.

*De la misma forma que las instalaste; sigue los pasos indicados en este hilo pero descargando e instalando la versión que te interesa.

- ¿Es posible conectar por ssh con la raspberry desde fuera de mi red?

*Si, por ejemplo redirigiendo en tu router el puerto 22 a la ip de la raspberry.

- ¿Se pueden configurar el nodo para que arranque todo solo ante una perdida de alimentacion?

*Si, aunque yo particularmente no lo tengo hecho. Ya lo mirare y lo indico en extras.

- He intentado conectar con el nodo desde Samurai y no me deja, he revisado
ip , rpc user/password, no se que puede ser.

*El nodo solo admite conexiones locales, si los has intentado desde fuera de tu casa no te funcionará.

- Hago un sudo top y me dice que btcd consume el 26% de RAM y lnd un 65%. ¿lo veis normal?

*De forma puntual puede ser. Pero si es de forma continua, no lo es.
 
Yo también he vuelto de vacaciones, a ver si poco a poco vamos haciendo cosas.
Intento responder a tus preguntas:

- ¿ como actualizo versiones de btcd y lnd? Al menos la de btcd ya toca y no se si con sudo apt-get update/upgrade es suficiente o eso es solo para el SO.

*De la misma forma que las instalaste; sigue los pasos indicados en este hilo pero descargando e instalando la versión que te interesa.

- ¿Es posible conectar por ssh con la raspberry desde fuera de mi red?

*Si, por ejemplo redirigiendo en tu router el puerto 22 a la ip de la raspberry.

- ¿Se pueden configurar el nodo para que arranque todo solo ante una perdida de alimentacion?

*Si, aunque yo particularmente no lo tengo hecho. Ya lo mirare y lo indico en extras.

- He intentado conectar con el nodo desde Samurai y no me deja, he revisado
ip , rpc user/password, no se que puede ser.

*El nodo solo admite conexiones locales, si los has intentado desde fuera de tu casa no te funcionará.

- Hago un sudo top y me dice que btcd consume el 26% de RAM y lnd un 65%. ¿lo veis normal?

*De forma puntual puede ser. Pero si es de forma continua, no lo es.


Ya he actualizado core y lnd, no sé que pasa pero lnd 0.5 me daba un error y no arrancaba. Igual son las versiones- No estaba seguro si era arm64, v6 o v7 😛ienso: (antes solo habia una). Al final he vuelto a la version anterior y va bien.

No entiendo lo que comentas de Samurai. Tenia entendido que lo suyo era conectar el wallet de tu movil con tu nodo y asi enviar los pagos a traves de el. He visto un tutorial con Shango, le echare un ojo a ver si me aclaro.



Le he hecho un par de tuneos faciles a la PI.

Este :

Que cambia el odioso signo del $ 😀

You must be registered for see images


Y este otro:

Que te da info del nodo cuando te conectas. No me acaba de ir bien del todo
y hay alguna info que no sale. Si ejecuto el script me da unos errores. Los de la ruta que no encuentra he intentado arreglarlos cambiando el script a home/pi que es donde tenemos .lnd y .bitcoin, pero sigue dando el mismo error.

You must be registered for see images
 
Última edición:
Ya he actualizado core y lnd, no sé que pasa pero lnd 0.5 me daba un error y no arrancaba. Igual son las versiones- No estaba seguro si era arm64, v6 o v7 😛ienso: (antes solo habia una). Al final he vuelto a la version anterior y va bien.

.....

La version para la raspberry es la: lnd-linux-armv7-v0.5-beta.tar.gz

Código:
https://github.com/lightningnetwork/lnd/releases/download/v0.5-beta/lnd-linux-armv7-v0.5-beta.tar.gz

Antes de actualizar hay que primero parar los servicios de lnd y bitcoind y editar sus correspondientes ficheros de configuración ya que en la version 0.5, ZMQ no soporta tener los mismos puertos.

En el fichero lnd.conf editar y cambiar a lo siguiente:

Código:
bitcoind.zmqpubrawblock=tcp://127.0.0.1:28332
bitcoind.zmqpubrawtx=tcp://127.0.0.1:28333

En el fichero bitcoin.conf editar y cambiar a lo siguiente:

Código:
zmqpubrawblock=tcp://127.0.0.1:28332
zmqpubrawtx=tcp://127.0.0.1:28333

Una vez cambiado:

Descargar LND:

Código:
wget https://github.com/lightningnetwork/lnd/releases/download/v0.5-beta/lnd-linux-armv7-v0.5-beta.tar.gz

Descomprimirlo:

Código:
tar -xzf lnd-linux-armv7-v0.5-beta.tar.gz

E instalarlo:

Código:
sudo install -m 0755 -o root -g root -t /usr/local/bin lnd-linux-armv7-v0.5-beta/*

Ahora al arrancar lnd, este procedera a actualizar la BBDD de la version 0.4x a la 0.5, este proceso hay a gente que le ha durado horas y a otros minutos; importante dejarlo acabar ya que si lo paramos la BBDD puede quedar corrompida. Si no tenemos ningún canal abierto ni saldo, lo mas sencillo quizas sea borrar todo el contenido de .lnd, menos el fichero de configuración, para que así nos cree una BBDD nueva; eso ya depende de cada uno. En mi caso actualice la BBDD y me fue OK

---------- Post added 26-sep-2018 at 11:06 ----------

Ayer actualice Zap a la ultima versión que salió hace poco (0.4), y la verdad es que es que me sorprendió gratamente, tiene un aspecto muy bueno.
Os animo a probarla y aunque no es necesario tener un nodo LND para que funcione, si ya lo tenemos podemos usar Zap como interface de tal forma que abramos canales, cerremos, consultemos... desde la misma sin tener que conectarnos a la raspberry por ssh.

Zap esta disponible para diferentes sistemas operativos y o bien se puede instalar en el mismo PC donde este el nodo LND o en otro PC de la misma red local (nuestro caso si tenemos LND en la raspberry).

Para descargarlo:

Código:
https://github.com/LN-Zap/zap-desktop/releases

Y para poder utilizar Zap de tal forma que interactue con nuestro nodo de la raspberry:

1.- Es necesario copiar dos ficheros de nuestro nodo LND al PC donde vamos a utilizar zap. Los ficheros que copiaremos del nodo de la rasp son:

- "tls.cert" que se encuentra en la raiz del directorio .lnd.
- El fichero "admin.macaroon" que se encuentra en "/.lnd/data/chain/bitcoin/mainnet". (Puede ser que haya otro "admin.macaroon" en la raiz de .lnd, no copiar este porque sino no funcionara)

2.- Los ficheros antes copiados los pegaremos en la carpeta que queramos de nuestro PC donde hayamos instalado Zap. En mi caso, lo pegue en una nueva carpeta llamada "zap_files".

3.- Parar LND en nuestra raspberry, editar el archivo lnd.conf y añadir la siguiente linea:

Código:
rpclisten=0.0.0.0:10009

4.- Arrancar lnd en la rasp.

5.- Arrancar Zap en el PC.

6.- Elegir la opcion "Connect" y pulsar "Next"

Tienes que estar registrado para ver este contenido


7.- Pinchar en "Personalizado" y rellenar los campos con la IP de nuestro nodo lnd de la raspberry y con la ruta completa de donde se encuentren los ficheros copiados al PC:

Tienes que estar registrado para ver este contenido


Listo, al pulsar "Next" aparecera una petición de confirmación y tras ello la interface con los canales que tengamos abiertos, saldo...

You must be registered for see images
 

Adjuntos

Archivo oculto para usuarios no registrados
Última edición:
1.2 Montar un nodo Lightning Network con la implementación LND compilandolo desde fuentes y teniendo la posibilidad de actualizarlo al ultimo commit

1.- Lo primero que debemos hacer es descargar la versión 1.10 de Go, que sera necesario para compilar lnd. Se realiza siguiendo estos pasos:

- Borramos versiones preinstaladas que podamos tener de Go:

Código:
sudo apt remove golang*
sudo apt-get autoremove

- Descargamos y descomprimimos Go:

Código:
wget https://dl.google.com/go/go1.12.1.linux-armv6l.tar.gz
sudo tar -C /usr/local -xzf go1.12.1.linux-armv6l.tar.gz

- Editamos el archivo ".bashrc":

Código:
nano .bashrc

- Añadimos al final de archivo las siguientes lineas y guardamos:

Código:
export GOPATH=$HOME/go
export PATH=$PATH:$GOROOT/bin:$GOPATH/bin
export PATH=$PATH:/usr/local/go/bin

- Cargamos el path a la sesion actual para no tener que salir de la sesion y volver a entrar:

Código:
source .bashrc

- Para comprobar que todo a ido bien, introducimos el comando:

Código:
go version

y deberia mostrar la siguiente linea: "go version go1.12.1 linux/arm"

2.- Instalar git:

Código:
sudo apt-get install git -y

3.- Descargar, descomprimir, compilar e instalar LND. Las siguientes lineas id pegandolas cuando la anterior haya acabado, y la ultima la de "make..." tarda un rato en acabar, recomendaría abrir un screen y ejecutarla ahí para evitar que si se cierra la sesión la compilación quede a medias.

Código:
go get -d github.com/lightningnetwork/lnd
cd $GOPATH/src/github.com/lightningnetwork/lnd
make && make install

4.- En el caso de que ya tuvieramos lnd instalado siguiendo el post numero 145 (Burbuja.info - Foro de economía - Ver Mensaje Individual - Taller - Montar un nodo Bitcoin) de este hilo, deberiamos eliminarla:

Código:
cd  /usr/local/bin
sudo rm -rf lnd
sudo rm -rf lncli

5.- De esta forma ya estaría instalado LND al ultimo commit disponible. Si pasado un tiempo, queremos actualizarlo. Se hace parando lnd y ejecutando lo siguiente:

Código:
cd $GOPATH/src/github.com/lightningnetwork/lnd
git pull
make && make install
 
Última edición:
Por que instalas go manualmente en vez de usar el repositorio de ubuntu ?
 
Por que instalas go manualmente en vez de usar el repositorio de ubuntu ?
Porque lo probé y no me funcionó. Quizas hice algo mal, ¿a ti te funcionó bien?

Recuerdo que en Ubuntu me resultó, tambien una pesadilla instalar la versión 1.10 de go, que es la que pide lnd. En Ubuntu me funcionó con "sudo snap install --classic go"
 
En el nodo que tengo actualmente en la raspberry tengo instalados los binarios, no tengo los fuentes. La primera vez que instale un nodo lnd lo hice en una VM desde los fuentes pero la verdad es que no recuerdo si instalé go manualmente o no.

Voy a probar ahora en la raspberry a ver.

---------- Post added 27-sep-2018 at 15:58 ----------

Vale, ya veo cual es el problema.

En raspbian, el sistema de paquetes tiene la version 1.7 de go

Para lnd hace falta la 1.9 aunque se recomienda la 1.10

En Ubuntu, el sistema de paquetes ya viene con la 1.10 por lo que ahi no habria problema.
 
Ya he instalado lnd 5. Parece que esta sincronizando, lo dejare asi lo que haga falta.

Me daba este error :loadConfig: debug-htlc mode cannot be used on bitcoin mainnet.

He tenido que quitar el "debughtlc" para que arrancara.

Lo que comentas de compilar desde fuentes ¿para que vale exactamente?, no acabo de verlo.

A ver si este finde me meto con lo de ZAP, tiene buena pinta.

Al final he conseguido que funcione el script de raspibolt 8:8:

You must be registered for see images
 
Ya he instalado lnd 5. Parece que esta sincronizando, lo dejare asi lo que haga falta.

Me daba este error :loadConfig: debug-htlc mode cannot be used on bitcoin mainnet.

He tenido que quitar el "debughtlc" para que arrancara.

Lo que comentas de compilar desde fuentes ¿para que vale exactamente?, no acabo de verlo.

A ver si este finde me meto con lo de ZAP, tiene buena pinta.

Al final he conseguido que funcione el script de raspibolt 8:8:

You must be registered for see images

Upps error mio. Si, debughtlc ya no se soporta en lnd 0.5. Mañana lo corrijo en el hilo que ahora esto desde el móvil.

Compilar desde fuentes te permite poder actualizar lnd sin esperar a la siguiente versión compilada. Por ejemplo ahora mismo el último commit (¿alguien sabe como se traduce commit al castellano?) es de hace dos dias:
You must be registered for see images




Y sin embargo la versión 0.5 de LND salio hace nueve.

De todas formas hay que andarse con ojo, ya que a veces las versiones no oficiales pueden traer fallos. Es interesante actualizar si ves que trae una mejora que quieras aplicar sin esperar a la versión final.

Ahora que me fijo, no tienes ningún canal aun abierto!!
 
Última edición:
Un commit es un cambio o añadido que se hace a un archivo y se sube al repositorio. Yo no lo traduciria.

Ya hay 34 commits respecto a la ultima release (0.5) basicamente son mejoras, correcciones de errores y nuevas funcionalidades. Cuando se considera que se han hecho cambios suficientes y relevantes y se consideran estables se saca una nueva release.

Aqui se pueden ver los commits que se han hecho desde la release 0.5:

Compilarlo por ti mismo te permite estar a la ultima sin tener que esperar a que saquen una nueva release. Pero tambien hay que tener en cuenta que puede ser inestable.
 
He estado enredando un poquito este finde, pese a las dudas, de momento no he roto nada. 😀

Esto es lo que he hecho:

- He probado en core comandos varios. Los mas utiles o al menos los que intuia para que eran.

- He enviado una transaccion desde mi monedero a core y vuelta.

- He creado una direccion nueva en lnd y he transferido saldo desde core. Ahi lnd se ha empezado a mover y me ha
creado canales ( bueno, solo 1😡🙂. Aqui ya veia mi nodo desde los exploradores. El que solo me cree un canal
¿sera por el saldo bajo? (200.000 sat)

- He trasteado un poquito en lnd con comandos faciles, balance, saldos, canales...

- Ya puestos, me he decidido a gastar dinerito. Lo primero que he encontrado es una pagina de tragaperras o🙂 . He
comprado 50 tiradas por 7500 sat. Le das al boton te sale el invoice, lo copio y aqui me he atascado. Me ha
costado construir el pago por que lo hacia con sendpayment, luego me he dado cuenta que con payinvoice es mas facil.
Creo que el pago no ha tardado ni 1 segundo y ¿fee 0?

Código:
pi ~ ฿ lncli listpayments
{
    "payments": [
        {
            "payment_hash": "a4c1669bcd9aaaf5514d0131f2d0004f5b3f00b829f29ab0ddce6336166ff24e",
            "value": "7585",
            "creation_date": "1538414521",
            "path": [
                "02529db69fd2ebd3126fb66fafa234fc3544477a23d509fe93ed229bb0e92e4fb8",
                "039f01ad62e5208940faff11d0bbc997582eafad7642aaf53de6a5f6551ab73400"
            ],
            "fee": "0",
            "payment_preimage": "a4f4157041a89979e23fcae8cfef0eb440d32bb7791373544c655826bdeb0cce"

- He jugado 25 tiradas y como veia que me arruinaba he probado a sacar el resto. Muy facil, la pagina te generaba el
comando con la cantidad exacta, lo pegas en la consola, te genera el invoice. lo pegas en la web y listo.


Me quedan un par de dudas.

- ¿que saldo hay que meter para que te genere 8-10 canales? De momento he metido solo 10€ porque no veo del todo
claro que backup necesito para recuperar todo al 100% (con canales y todo o al menos la pasta), no se si solo con las
seed valdria.

- Antes de hacer el primer pago el balance ha aumentado en ~ 3500 sat ¿de donde sale esto? Parece que coincidia con el
commit fee. Entiendo que es comision para cerrar los canales onchain, pero ¿no la deberia de restar?

El tema de los saldos y balances es un poco confuso una vez has movido saldo. Si le pides el balance te aparece mucho menos de lo que tienes

Código:
pi ~ ฿ lncli walletbalance
{
    "total_balance": "20371",
    "confirmed_balance": "20371",
    "unconfirmed_balance": "0"


Sile pides chanels ya se parece mas a la realidad, ahi esta el commit fee que comentaba.


Código:
pi ~ ฿ lncli listchannels
{
    "channels": [
        {
            "active": true,
            "remote_pubkey": "02529db69fd2ebd3126fb66fafa234fc3544477a23d509fe93ed229bb0e92e4fb8",
            "channel_point": "e189e7b96abd5e28b3adb96ae30b08dc7d7fecad27446ed094701c48bea239e4:1",
            "chan_id": "597928716942901249",
            "capacity": "188100",
            "local_balance": "182034",
            "remote_balance": "2569",
            "commit_fee": "3497",
            "commit_weight": "724",
            "fee_per_kw": "4830",
            "unsettled_balance": "0",
            "total_satoshis_sent": "7585",
            "total_satoshis_received": "5016",
            "num_updates": "17",
            "pending_htlcs": [
            ],
            "csv_delay": 144,
            "private": false
        }
    ]
}

Y en invoices, hay dos, cuando yo solo he hecho el segundo ¿?

Código:
pi ~ ฿ lncli listinvoices
{
    "invoices": [
        {
            "memo": "",
            "receipt": null,
            "r_preimage": "yM3qhjxkBs+gHU7yE/jYyeb0BLO2OOaKITo1TQ2dNDg=",
            "r_hash": "k9cUYwB9Q7K4Sa+UUZYyTZBHt4fIulHiZGo2JUaE6M0=",
            "value": "0",
            "settled": false,
            "creation_date": "1538414831",
            "settle_date": "0",
            "payment_request": "lnbc1pdmyk80pp5j0t3gccq04pm9wzf4729r93jfkgy0du8eza9rcnydgmz235yarxsdqqcqzys947sksef8zqeyks92cjt2rsst6w6vv5pjhpmkgyqp80j9nnydvqkxdqu5a2aqjfr6dpf26wmdumfsgrctp97a03vsvq0v7pqpqmz46cq85pw9e",
            "description_hash": null,
            "expiry": "3600",
            "fallback_addr": "",
            "cltv_expiry": "144",
            "route_hints": [
            ],
            "private": false,
            "add_index": "1",
            "settle_index": "0",
            "amt_paid": "0",
            "amt_paid_sat": "0",
            "amt_paid_msat": "0"
        },
        {
            "memo": "",
            "receipt": null,
            "r_preimage": "sETj3Ir6oIvsolhsiGqAVuH5Au5LQpGQzc4i0NMMVH8=",
            "r_hash": "DPMmnPAOZb4uIsPBvIRcSgM+3J51iz8WlIM2aRfLo/g=",
            "value": "5016",
            "settled": true,
            "creation_date": "1538415020",
            "settle_date": "1538415042",
            "payment_request": "lnbc50160n1pdmykdvpp5pnejd88spejmut3zc0qmepzufgpnahy7wk9n7955svmxj97t50uqdqqcqzysxqrfcsnus4f02pmza33wpxl4hpv4jfezxfmq8hxaxfycc822h5gvzej9m9p9rg7sa46umsq3vhs0et0mqm7hlt6hlhxfszkuasd9s6l2cdr2sqyakt0e",
            "description_hash": null,
            "expiry": "10000",
            "fallback_addr": "",
            "cltv_expiry": "144",
            "route_hints": [
            ],
            "private": false,
            "add_index": "2",
            "settle_index": "1",
            "amt_paid": "5016000",
            "amt_paid_sat": "5016",
            "amt_paid_msat": "5016000"
        }
    ],
    "last_index_offset": "2",
    "first_index_offset": "1"
 
Última edición:
Me quedan un par de dudas.

- ¿que saldo hay que meter para que te genere 8-10 canales? De momento he metido solo 10€ porque no veo del todo
claro que backup necesito para recuperar todo al 100% (con canales y todo o al menos la pasta), no se si solo con las
seed valdria.

- Antes de hacer el primer pago el balance ha aumentado en ~ 3500 sat ¿de donde sale esto? Parece que coincidia con el
commit fee. Entiendo que es comision para cerrar los canales onchain, pero ¿no la deberia de restar?

El tema de los saldos y balances es un poco confuso una vez has movido saldo. Si le pides el balance te aparece mucho menos de lo que tienes

Código:
pi ~ ฿ lncli walletbalance
{
    "total_balance": "20371",
    "confirmed_balance": "20371",
    "unconfirmed_balance": "0"


Sile pides chanels ya se parece mas a la realidad, ahi esta el commit fee que comentaba.


Código:
pi ~ ฿ lncli listchannels
{
    "channels": [
        {
            "active": true,
            "remote_pubkey": "02529db69fd2ebd3126fb66fafa234fc3544477a23d509fe93ed229bb0e92e4fb8",
            "channel_point": "e189e7b96abd5e28b3adb96ae30b08dc7d7fecad27446ed094701c48bea239e4:1",
            "chan_id": "597928716942901249",
            "capacity": "188100",
            "local_balance": "182034",
            "remote_balance": "2569",
            "commit_fee": "3497",
            "commit_weight": "724",
            "fee_per_kw": "4830",
            "unsettled_balance": "0",
            "total_satoshis_sent": "7585",
            "total_satoshis_received": "5016",
            "num_updates": "17",
            "pending_htlcs": [
            ],
            "csv_delay": 144,
            "private": false
        }
    ]
}

Y en invoices, hay dos, cuando yo solo he hecho el segundo ¿?

Código:
pi ~ ฿ lncli listinvoices
{
    "invoices": [
        {
            "memo": "",
            "receipt": null,
            "r_preimage": "yM3qhjxkBs+gHU7yE/jYyeb0BLO2OOaKITo1TQ2dNDg=",
            "r_hash": "k9cUYwB9Q7K4Sa+UUZYyTZBHt4fIulHiZGo2JUaE6M0=",
            "value": "0",
            "settled": false,
            "creation_date": "1538414831",
            "settle_date": "0",
            "payment_request": "lnbc1pdmyk80pp5j0t3gccq04pm9wzf4729r93jfkgy0du8eza9rcnydgmz235yarxsdqqcqzys947sksef8zqeyks92cjt2rsst6w6vv5pjhpmkgyqp80j9nnydvqkxdqu5a2aqjfr6dpf26wmdumfsgrctp97a03vsvq0v7pqpqmz46cq85pw9e",
            "description_hash": null,
            "expiry": "3600",
            "fallback_addr": "",
            "cltv_expiry": "144",
            "route_hints": [
            ],
            "private": false,
            "add_index": "1",
            "settle_index": "0",
            "amt_paid": "0",
            "amt_paid_sat": "0",
            "amt_paid_msat": "0"
        },
        {
            "memo": "",
            "receipt": null,
            "r_preimage": "sETj3Ir6oIvsolhsiGqAVuH5Au5LQpGQzc4i0NMMVH8=",
            "r_hash": "DPMmnPAOZb4uIsPBvIRcSgM+3J51iz8WlIM2aRfLo/g=",
            "value": "5016",
            "settled": true,
            "creation_date": "1538415020",
            "settle_date": "1538415042",
            "payment_request": "lnbc50160n1pdmykdvpp5pnejd88spejmut3zc0qmepzufgpnahy7wk9n7955svmxj97t50uqdqqcqzysxqrfcsnus4f02pmza33wpxl4hpv4jfezxfmq8hxaxfycc822h5gvzej9m9p9rg7sa46umsq3vhs0et0mqm7hlt6hlhxfszkuasd9s6l2cdr2sqyakt0e",
            "description_hash": null,
            "expiry": "10000",
            "fallback_addr": "",
            "cltv_expiry": "144",
            "route_hints": [
            ],
            "private": false,
            "add_index": "2",
            "settle_index": "1",
            "amt_paid": "5016000",
            "amt_paid_sat": "5016",
            "amt_paid_msat": "5016000"
        }
    ],
    "last_index_offset": "2",
    "first_index_offset": "1"


- Estas usando el autopilot para abrir canales. Depende de la configuracion que tengas puesta te usara mas o menos saldo para abrir canales e ira abriendo canales hasta que se agote ese saldo. Hay un tamaño minimo por defecto que no recuerdo cual es, pero por lo que comentas y por el saldo bajo que manejas ese es el motivo por el que solo te abre uno. Puedes abrir tambien canales manualmente y poner la cantidad que quieras.

- El commit fee es exactamente eso, la fee para cerrar el canal. Date cuenta que la transaccion para cerrar el canal ya esta creada y la tienen los dos nodos, cuando uno de los dos quiera cerrar no tiene mas que hacerla publica. Esa fee la negocian los dos nodos y se actualiza periodicamente ya que las comisiones en la red de bitcoin van variando. Por tanto cuando miras el balance del canal tienes la cantidad con la que has creado el canal menos el commit fee (y menos lo que ya hayas enviado y mas lo que hayas recibido obviamente)

- Tienes dos balances, uno en tu wallet onchain que puedes ver con lncli walletbalance y otro offchain que es el que tienes en canales abiertos que puedes ver con lncli channelbalance

- Tienes 2 invoices porque has creado 2, no le des mas vueltas (con lncli addinvoice) La primera no esta pagada (settled:false) y la segunda si.
 
- Estas usando el autopilot para abrir canales. Depende de la configuracion que tengas puesta te usara mas o menos saldo para abrir canales e ira abriendo canales hasta que se agote ese saldo. Hay un tamaño minimo por defecto que no recuerdo cual es, pero por lo que comentas y por el saldo bajo que manejas ese es el motivo por el que solo te abre uno. Puedes abrir tambien canales manualmente y poner la cantidad que quieras.

- El commit fee es exactamente eso, la fee para cerrar el canal. Date cuenta que la transaccion para cerrar el canal ya esta creada y la tienen los dos nodos, cuando uno de los dos quiera cerrar no tiene mas que hacerla publica. Esa fee la negocian los dos nodos y se actualiza periodicamente ya que las comisiones en la red de bitcoin van variando. Por tanto cuando miras el balance del canal tienes la cantidad con la que has creado el canal menos el commit fee (y menos lo que ya hayas enviado y mas lo que hayas recibido obviamente)

- Tienes dos balances, uno en tu wallet onchain que puedes ver con lncli walletbalance y otro offchain que es el que tienes en canales abiertos que puedes ver con lncli channelbalance

- Tienes 2 invoices porque has creado 2, no le des mas vueltas (con lncli addinvoice) La primera no esta pagada (settled:false) y la segunda si.


Tienes razon, habia sido yo 😀

Código:
pi ~ ฿ lncli addinvoice
{
        "r_hash": "93d71463007d43b2b849af945196324d9047b787c8ba51e2646a36254684e8cd",
        "pay_req": "lnbc1pdmyk80pp5j0t3gccq04pm9wzf4729r93jfkgy0du8eza9rcnydgmz235yarxsdqqcqzys947sksef8zqeyks92cjt2rsst6w6vv5pjhpmkgyqp80j9nnydvqkxdqu5a2aqjfr6dpf26wmdumfsgrctp97a03vsvq0v7pqpqmz46cq85pw9e",
        "add_index": 1
}
pi ~ ฿ lnbc1pdmyk80pp5j0t3gccq04pm9wzf4729r93jfkgy0du8eza9rcnydgmz235yarxsdqqcqzys947sksef8zqeyks92cjt2rsst6w6vv5pjhpmkgyqp80j9nnydvqkxdqu5a2aqjfr6dpf26wmdumfsgrctp97a03vsvq0v7pqpqmz46cq85pw9e^C
pi ~ ฿ ^C
pi ~ ฿ lncli addinvoice --amt 5016 --expiry 10000
{
        "r_hash": "0cf3269cf00e65be2e22c3c1bc845c4a033edc9e758b3f169483366917cba3f8",
        "pay_req": "lnbc50160n1pdmykdvpp5pnejd88spejmut3zc0qmepzufgpnahy7wk9n7955svmxj97t50uqdqqcqzysxqrfcsnus4f02pmza33wpxl4hpv4jfezxfmq8hxaxfycc822h5gvzej9m9p9rg7sa46umsq3vhs0et0mqm7hlt6hlhxfszkuasd9s6l2cdr2sqyakt0e",
        "add_index": 2
 

Estadísticas del foro

Temas
2.049.460
Mensajes
58.148.499
Miembros
190.830
Último miembro
Francisco Valero

El blog de burbuja.info

Volver