Um aviso a todos os operadores de nós públicos sobre o uso real da Lightning Network








Postado originalmente em Substack em 23 de maio de 2022, atualizado aqui em 20 de dezembro de 2024.
Este artigo é dedicado a todos os novos usuários que começam agora ou querem começar a executar agora um nó BTC LN
INTRODUÇÃO
Estas são minhas observações e recomendações pessoais após mais de 25 anos em sistemas de TI, mais de 10 anos na Bitcoinlândia e mais de 2 anos executando vários nós LN, dedicando muito tempo testando e usando várias soluções para nós LN, ajudando outros operadores de nós.
Meu único objetivo é fazer o LN funcionar melhor para todos os participantes e apresentar algumas aspectos de um ponto de vista muito objetivo.
Não me importo se muitos não concordarão ou até me odiarão pelo que direi aqui. Sim, para alguns não serão palavras agradáveis. Não estou aqui para agradar ninguém, estou apresentando fatos. Se você está procurando palavras bonitas e "beijar a bunda", não ouvirá isso de mim. Sempre falarei a verdade do meu jeito, se você não gosta das minhas palavras, o problema é seu, não meu.
Em 2020, depois que a Umbrel lançou o pacote BTC/LN Umbrel Node, muitas pessoas novas entraram e o instalaram, pensando que era divertido, fácil e até mesmo uma "renda passiva". Mas eles ignoraram um aspecto importante: EDUCAÇÃO sobre a Lightning Network.
Em quase 1 ano, vimos o número de nós LN aumentar com pelo menos 9000 nós. Esse é um número insano em tão pouco tempo. E principalmente no Tor.
Sim, é bom ver o interesse em executar um nó LN, mas pelo que vi em grupos e fóruns do Telegram, 90% não têm ideia do que estão fazendo.
Acho que esse lançamento foi um erro, ou pelo menos foi o que aconteceu. Muitos usuários com conhecimento total de 0 entraram e criaram um caos. Não sei quem promove isso como "muito fácil de instalar um nó em 3 cliques", mas executar um nó não é sobre você poder instalá-lo com apenas 3 cliques. É mais sobre ter muito conhecimento sobre Bitcoin e como o LN está funcionando em segundo plano. Caso contrário, é apenas criar uma rede caótica de pessoas sem ideia do que estão fazendo. Sim, eu os ajudei muito com meus guias e estando disponível quase 24 horas por dia, 7 dias por semana, com conselhos. Mas não é o suficiente. Eles têm que fazer grandes esforços para ler e aprender sobre nós. Caso contrário, é tudo em vão.
Sim, alguns deles começam a se educar lentamente e se tornam bons operadores de nós. Mas a maioria não deu a mínima para os avisos e ainda continua a executar seus nós de maneiras muito ruins, sem manutenção adequada, sem conhecimento básico sobre como o LN funciona, alguns deles o único foco que eles têm é "ganhar sats".
Essa situação está piorando a cada dia, porque esses "nós ruins" estão criando um pesadelo para TODOS NÓS na rede.
PROBLEMAS REAIS NO LN
Aqui mencionarei alguns aspectos desse pesadelo (talvez alguns problemas já tenham sido corrigidos):
- Nós que ficam offline com muita frequência. Isso torna os canais muito instáveis e inutilizáveis.
- Nós que não têm uma conexão de internet estável e, em especial, bons relés Tor.
- Nós que são SOMENTE Tor e ainda não usam um modo híbrido (Tor + clearnet). Tor como rede de comunicação para nós é realmente ruim, porque é instável. Os nós LN precisam ser capazes de se comunicar o tempo todo por meio do protocolo gossip. Caso contrário, não podem "ver uns aos outros", mesmo que o nó Bitcoin ainda esteja sincronizando.
- HTLCs travados, que no final provocam o fechamento forçado dos canais. Esta é uma situação muito irritante e custosa. Muitos operadores de nós não pensam ou sabem que se um HTLC passar por seu nó e seu nó ficar offline ou simplesmente não puder se comunicar com o LN por meio do protocolo gossip, esse HTLC é uma verdadeira dor de cabeça para TODOS. É um contrato não cumprido e se no período de expiração o HTLC não for cumprido, então ele acionará um fechamento forçado de canais em cascata para todos os pares conectados a esse HTLC. Isso afeta a todos. Aqui está um alerta do nó ZFR.
- Configurações erradas ou caóticas para delta CLTV, taxas, HTLC min/max. Vi usuários brincando com essas configurações sem ter nenhum conhecimento básico sobre o que estão mudando. Isso torna muito difícil trabalhar com eles como pares. Ou pior ainda, se eles forem pares dos seus pares e você não souber o que eles fazem, isso afetará você indiretamente.
- Rebalanceamento obsessivo. Essa é outra história, que muitos abraçam e eu não entendo essa obsessão em rebalancear o tempo todo seus canais. Na minha humilde opinião, isso é idiota e inútil. Ele pode mover liquidez exatamente quando é necessário para um HTLC pendente. É inútil e não ajuda de forma alguma, mas piora com tráfego "falso" que não representa de forma alguma o tráfego real do LN. Em vez de fazer esse rebalanceamento, é melhor ajustar o HTLC mínimo/máximo, reduzi-lo para uma quantidade normal de uma tx e o usuário deve começar a usar MPP o tempo todo.
- Desabilitando canais. Ainda existem "ferramentas LN" por aí, scripts que desabilitam canais, se o canal específico "não for lucrativo" para rotear. Isso é idiota e improdutivo. É apenas fechar portas para possíveis rotas.
- Os usuários ainda não usam MPP como opção principal quando fazem pagamentos por LN. Isso faz com que os canais possam ser drenados muito rapidamente e também não usando rotas eficientes, os nós sempre terão que adaptar o tráfego com métodos diferentes (rebalanceamento, ajuste de taxas, ajuste de HTLC máximo, abertura de mais canais). O MPP não é apenas dividir o valor de um pagamento em muitas partes pequenas, mas também procurar a melhor rota para cada divisão. Um HTLC menor terá uma taxa mais rápida e melhor de encontrar um bom caminho do que uma grande quantidade.
- Encontrar caminho. Sim, esta é uma questão muito importante no LN e é principalmente devido a todos os aspectos mencionados acima.
RECOMENDAÇÕES PARA NOVOS EXECUTORES DE NÓS PÚBLICOS DO LN
Então, como um novo usuário neste mundo fascinante da Lightning Network, o que você deve fazer:
- Antes de começar a executar um nó, pergunte a si mesmo: por que você precisa executar um nó LN completo? Como mencionei no guia sobre Introdução ao Umbrel, há uma lista de respostas lá que as pessoas devem considerar antes de começar a executar um nó.
- Se você quer apenas brincar com o LN e até mesmo ter um nó LN privado, NÃO HÁ NECESSIDADE de executar um nó de roteamento! Você pode facilmente executar sua Blixt Node Wallet móvel ou Zeus Node wallet com canais privados, sem necessidade de estar 100% online, gerenciamento total de seus canais, mais privado, fácil de gerenciar, sem necessidade de ter muitos fundos no LN. Veja mais carteiras LN para celulares aqui com todos os recursos detalhados e um guia dedicado para nós LN PRIVADOS aqui.
- Se você quiser usar uma carteira LN de desktop, você pode facilmente usar o Electrum, funciona perfeitamente. Em breve, o Blixt também terá uma versão desktop, mais avançada e poderosa.
- Se você não é tão técnico e não gosta de ler documentação, é melhor não executar esses nós desktop/RPI. Você não está ajudando em nada a rede por não saber nada sobre LN e apenas manter um nó de merda na rede. Você está fazendo mais mal do que bem.
- Se você realmente quer executar um nó de roteamento desktop completo, então é melhor estar bem preparado: leia bastante toda a documentação disponível, estude todos os tutoriais em vídeo, tenha preparado uma boa máquina forte para seu nó como mencionei neste guia dedicado para manutenção de nós, observe proativamente seus pares e canais, mantenha um bom tráfego com taxas baixas e boas rotas. Pares que são difíceis de manter online, não os mantenha, estão dificultando suas rotas.
- Use hardware forte! É muito importante. Para nós com mais de 50-100 canais, uma máquina RPi está ficando realmente problemática, especialmente usando LND.
- Comece a usar o método de ajuste de HTLC máximo por canais, até um certo nível em que você veja que o tráfego de seus pares está indo bem em ambos os lados. Como expliquei no outro guia aqui. Isso ajudará muito a encontrar o caminho para as rotas e fará com que os sats fluam mais rápido pelo seu nó, passando pelos canais corretos, onde há liquidez suficiente indicada.
- Taxas altas não ajudarão você de forma alguma, mas piorarão as coisas. Nunca se conecte a nós com taxas altas. ISOLE-OS! Veja alguns exemplos desses nós idiotas com taxas altíssimas: Sweet16Joe, Magnetron (carteira Muun) e muitos outros assim. Estamos aqui para foder os banqueiros, não para foder uns aos outros.

PEDIDOS PARA DESENVOLVEDORES LIGHTNING
Por favor, considere encontrar uma maneira de melhorar o código LN com esses aspectos. Esses pedidos não são apenas para desenvolvedores de implementação LN, mas também para gerenciar ferramentas e carteiras como Thunderhub, RTL, Zeus etc. Talvez seus objetivos sejam diferentes, mas por favor, pelo menos ouça o que os usuários dizem e solicitem:
- Adicione no código uma opção para não fechar um canal até uma certa altura de bloco, estabelecida por ambos os pares abrindo o canal. Temos hoje muitos mercados de canais, vendendo canais de liquidez, mas não há uma maneira simples de "bloquear" esses canais, para ser quase impossível fechá-los até um certo número de bloco. Isso também evitará trapaças nesses contratos de liquidez e também estabelecerá certas regras.
- Mude a maneira como o HTLC está acionando um fechamento forçado. Por que punir um nó que já estava roteando o HTLC, se o próximo par na rota é aquele que não cumpre o HTLC? Esses canais fechados à força são literalmente IDIOTAS, não fazem sentido e são caros. Ou pelo menos dê a chance ao par de manter o canal aberto e funcional e disputar de outra forma os HTLCs pendentes. Use um sistema de reservas, onde cada par depositará uma reserva primeiro. Isso fará com que os nós pensem duas vezes sobre quem e como eles abrirão os canais.
- Faça o protocolo de fofoca ser mais eficiente e confiável. É realmente doloroso ver que os pares estão literalmente online, você pode fazer ping neles, mas a fofoca está dizendo que o canal está offline. Isso faz com que muitos HTLC fiquem em estado pendente e até perdidos devido a não serem bem comunicados por meio da fofoca.
- Adicione uma opção simples para definir o HTLC máximo para um canal com base na liquidez desse canal para cada lado, anunciando literalmente o saldo quando um pagamento chegar ao nó. Sim, muitos dirão que isso "violará a privacidade", mas sejamos honestos, já temos muitas maneiras de encontrar o saldo de um canal, sem precisar se esconder atrás do dedo. Esses são nós de roteamento, que precisam anunciar muito bem a liquidez, não são nós privados. Agora mesmo descobri que apenas ajustando manualmente o HTLC máximo para um canal melhorou muito o tráfego, sem fazer nenhum rebalanceamento estúpido ou ajustar taxas com base na liquidez disponível. Eu concordo totalmente com a proposta do nó ZFR aqui.
- Adicione melhores opções para gerenciar rotas em canais específicos, com um conjunto de regras que podem ser facilmente gerenciadas pelo operador do nó. Exemplo: quero que todos os canais privados sejam roteados por canais públicos específicos. Ou para aplicativos LNDhub como Bluewallet e LNbits, gostaria de ter canais dedicados para serem usados. Sim, tentei muitas maneiras de definir taxas específicas, HTLC mínimo/máximo, mas não está funcionando bem.
- Adicione melhor suporte para nós somente Tor ou encontre outro protocolo para se comunicar de forma privada. O Tor é realmente não confiável para nós LN. Ele cria muitos problemas.
- Por que temos 3 implementações LN com 3 delta CLTV diferentes? Por que não são todos iguais? Como os usuários devem definir, com base em quais métricas? Vi alguns nós brincando com essas configurações padrão (CLN=34, LND=40, Eclair=144) e o roteamento está ficando maluco e até mesmo acabando com canais fechados à força. Por que não pode ser algo estável e confiável?
- deixe toda essa besteira de lado por um tempo, pare de adicionar "novos recursos e tokens inúteis" em cima do LN e concentre-se em fazer o LN funcionar melhor. Porque agora... ele não está funcionando bem. Está longe de ser uma rede de pagamento eficiente. E se não lidarmos com esses problemas, em breve teremos um projeto fracassado ou apenas tentando corrigir um patch após o outro.
- Para desenvolvedores do Umbrel em especial: por favor, não adicionem tantos aplicativos de bloatware! Os usuários estão apenas instalando-os apenas por curiosidade e carregando esses pequenos RPis com aplicativos inúteis. Concentre-se mais na parte de ter um nó LN forte e adicione opções importantes para gerenciar esse nó LN. Todos os aplicativos não relacionados a nós não são úteis e podem ser facilmente empacotados em outro conjunto de "servidores pessoais" se eles realmente quiserem usá-los. Não misture essas coisas! Eu sei que suas intenções são criar um "servidor pessoal soberano", mas não vai funcionar assim! Eu mesmo executo um nó Umbrel, mas apenas como um nó LN, nada mais. Todos os outros aplicativos eu os executo separadamente em outra máquina ou mesmo no meu Qnap NAS. Não preciso inchar meu nó com eles. Mas muitos novatos não conhecem esse aspecto. Melhor separar.
CONCLUSÃO
Espero que este artigo abra muito mais olhos e faça as pessoas perceberem que ainda temos trabalho a fazer para melhorar o LN. Ainda temos tempo para consertá-lo e podemos começar com coisas simples: educação para novos usuários e consertar/melhorar o código do LN.
Você pode reabrir um canal, mas os sats perdidos do fechamento forçado e da reabertura foram jogados em vão...
E quando você começa a ter 4-5 FC / semana, você não vê isso como algo tão confiável para executar um nó de roteamento.
Eu mesmo tenho 2 nós LN em execução e estou pensando em desligar totalmente um deles. Talvez ambos (CLN e LND) e apenas executarão um Blixt ou Zeus no desktop ou celular, de forma privada e não dou a mínima para todo o roteamento e ajuda à rede.
Estou disposto a rotear de graça, mas pagar fechamentos forçados por erros de outros... não é aceitável./<
Começamos a construir uma rede de pagamento, mas outros do outro lado estão tentando fechá-la. Agora temos mercados de liquidez, compramos canais, mas se esses "contratos" não forem respeitados e estabelecidos com certas regras, ninguém dará a mínima e simplesmente fechará seus canais. A reputação não lhe dará de volta nenhum sats que você perdeu com esse fechamento forçado e a rede que você começou a construir e agora está perdida.
Exemplo aqui, um vendedor que vendeu um canal e depois quis fechá-lo. Sim, o peer pode estar offline ou online. Mas você tem um contrato quando vendeu esse canal. E isso criará um precedente. As pessoas venderão canais para você e depois os fecharão. Todo o seu trabalho se foi.
Sim, este vendedor está certo, está preocupado com o motivo pelo qual o peer está offline. Mas o contrato é um contrato. Deve ser respeitado.
Também pode ser a porra da fofoca, que às vezes é muito louca, mostrando alguns peers offline, mas na verdade eles não estão.
Eu mesmo estava em uma situação em que alguns dias seguidos, 3-4-5 peers apareceram offline (de 55 peers no total). Um deles era até mesmo meu outro nó CLN, que eu estava assistindo ao mesmo tempo e estava OK, online e bem. Então, a LND decidiu fechar a conexão com esses pares, sem motivo.
Tentei me reconectar com os pares, alguns funcionaram, outros não. Entrei em contato com os pares, eles disseram que estão online e bem. Meu CLN incluído.
Por que isso está acontecendo? Ninguém sabe ou tenta consertar. E a partir desse problema começam os outros problemas com HTLCs pendentes, depois fechamentos forçados.
Estou levantando um AVISO aqui, agora, e talvez em alguns anos as pessoas se lembrem das minhas palavras.
Se esse problema no LN, com canais fechados à força, não for corrigido de alguma forma, ou adicionar novas regras específicas no código, veremos uma enorme centralização em um punhado de grandes nós que lidarão com a liquidez, com taxas enormes.
Ou talvez em alguns anos, veremos surgir um novo LN, o plebs LN, em paralelo, onde outro sistema de pagamento nascerá, mas que pode ser "atrelado" ao "LN centralizado" que está se formando hoje.
No momento em que este artigo foi escrito, o LND lançou também a versão 0.15 e o CLN v0.11.1, corrigindo alguns problemas, mas ao mesmo tempo causando fechamentos forçados massivos para muitos nós.
Como você pode ver aqui neste gráfico de https://bitcoinvisuals.com/ln-nodes:
Muitos desses nós "desapareceram" do gráfico, são:
- nós que estão se movendo para nós "privados" (não anunciados, não públicos), não roteando mais ou roteando em privado.
- novatos percebendo que o modelo de "nó RPi com Umbrel" não traz "renda passiva" e eles simplesmente desistem
- muitos canais e operadores forçados que simplesmente desligam nós
Nota: uma continuação deste artigo está aqui com um guia sobre como usar o LN em 3 níveis