Publié à l'origine sur Substack le 23 mai 2022, mis à jour ici le 20 décembre 2024.
Un avertissement à tous les opérateurs de nœuds publics concernant l'utilisation réelle de Lightning Network. Cet article est dédié à tous les nouveaux utilisateurs qui commencent maintenant ou qui souhaitent commencer à exécuter maintenant un nœud LN BTC.
INTRODUCTION
Ce sont mes observations et recommandations personnelles après plus de 25 ans dans les systèmes informatiques, plus de 10 ans dans Bitcoinlandia et plus de 2 ans d'exécution de divers nœuds LN, consacrant beaucoup de temps à tester et à utiliser diverses solutions pour les nœuds LN, aidant d'autres opérateurs de nœuds.
Mon seul objectif est de faire en sorte que LN fonctionne mieux pour tous les participants et de présenter certains aspects d'un point de vue très objectif.
Je me fiche que beaucoup ne soient pas d'accord ou même me détestent pour ce que je vais dire ici. Oui, pour certains, ce ne seront pas des mots agréables. Je ne suis pas ici pour faire plaisir à qui que ce soit, je présente des faits. Si vous cherchez des mots gentils et des "baisers au cul", vous ne l'entendrez pas de ma part. Je dirai toujours la vérité à ma manière, si vous n'aimez pas mes mots, c'est votre problème, pas le mien.
En 2020, après qu'Umbrel ait lancé la suite BTC/LN Umbrel Node, de nombreuses nouvelles personnes se sont lancées et l'ont installée, pensant que c'était amusant, facile et même un "revenu passif". Mais ils ont ignoré un aspect important : L'ÉDUCATION sur Lightning Network.
En près d'un an, nous avons vu le nombre de nœuds LN augmenter d'au moins 9 000 nœuds. C'est un nombre insensé en si peu de temps. Et surtout sur Tor.
Oui, c'est agréable de voir l'intérêt pour l'exécution d'un nœud LN, mais d'après ce que j'ai vu sur les groupes et forums Telegram, 90 % n'ont aucune idée de ce qu'ils font.
Je pense que ce lancement était une erreur, ou du moins la manière dont cela a été fait. Trop d’utilisateurs avec une connaissance totale de 0 se sont lancés et ont créé un chaos. Je ne sais pas qui le promeut comme « très facile d’installer un nœud en 3 clics », mais exécuter un nœud ne signifie pas que vous pouvez l’installer en seulement 3 clics. Il s’agit plutôt d’avoir beaucoup de connaissances sur Bitcoin et sur le fonctionnement de LN en arrière-plan. Sinon, cela ne fait que créer un réseau chaotique de personnes qui n’ont aucune idée de ce qu’elles font. Oui, je les ai beaucoup aidés avec mes guides et en étant presque 24h/24 et 7j/7 disponibles pour les conseiller. Mais ce n’est pas suffisant. Ils doivent faire de gros efforts pour lire et apprendre sur les nœuds. Sinon, tout est vain.
Oui, certains d’entre eux commencent lentement à s’instruire et deviennent de bons opérateurs de nœuds. Mais la majorité, ne se soucie pas des avertissements et continue à faire fonctionner ses nœuds de très mauvaise manière, sans maintenance adéquate, sans connaissances de base sur le fonctionnement de LN, certains d'entre eux n'ont pour seul objectif que de « gagner des sats ».
Cette situation s'aggrave de jour en jour, car ces « mauvais nœuds » créent un cauchemar pour NOUS TOUS dans le réseau.
PROBLÈMES ACTUELS SUR LN
Je vais ici mentionner certains aspects de ce cauchemar (peut-être que certains problèmes sont déjà résolus) :
- Les nœuds qui se déconnectent très souvent. Cela rend les canaux très instables et inutilisables.
- Les nœuds qui n'ont pas de connexion Internet stable et dans des relais Tor particulièrement bons.
- Les nœuds qui sont UNIQUEMENT Tor, et qui n'utilisent toujours pas de mode hybride (Tor + clearnet). Tor en tant que réseau de communication pour les nœuds est vraiment mauvais, car il est instable. Les nœuds LN doivent être capables de communiquer à tout moment via le protocole Gossip. Sinon, ils ne peuvent pas "se voir" même si le nœud Bitcoin est toujours en cours de synchronisation.
- Les HTLC bloqués, qui provoquent finalement la fermeture forcée des canaux. C'est une situation très ennuyeuse et coûteuse. De nombreux opérateurs de nœuds ne pensent pas ou ne savent pas que si un HTLC passe par leur nœud et que leur nœud se déconnecte ou ne peut tout simplement pas communiquer avec le LN via le protocole Gossip, ce HTLC est un vrai casse-tête pour TOUT LE MONDE. Il s'agit d'un contrat non exécuté et si, dans la période d'expiration, le HTLC n'est pas respecté, cela déclenchera une fermeture forcée des canaux en cascade pour tous les homologues connectés à ce HTLC. Cela affecte tout le monde. Voici une alerte du nœud ZFR.
- Paramètres erronés ou chaotiques pour Delta CLTV, frais, HTLC min/max. J'ai vu des utilisateurs jouer avec ces paramètres sans avoir aucune connaissance de base de ce qu'ils modifient. Cela rend très difficile de travailler avec eux en tant qu'homologues. Ou pire encore, s'ils sont les pairs de vos pairs et que vous ne savez pas ce qu'ils font, cela vous affectera indirectement.
- Rééquilibrage obsessionnel. C'est une autre histoire, que beaucoup l'adoptent et je ne comprends pas cette obsession de rééquilibrer tout le temps leurs canaux. À mon humble avis, c'est idiot et inutile. Cela peut déplacer la liquidité exactement au moment où cela est nécessaire pour un HTLC en attente. C'est inutile et n'aide en rien, mais cela aggrave la situation avec un trafic "faux" qui ne représente en aucun cas le vrai trafic LN. Au lieu de faire ce rééquilibrage, mieux vaut ajuster le HTLC min/max, le réduire à un montant normal d'une transaction et l'utilisateur devrait commencer à utiliser MPP tout le temps.
- Désactiver les canaux. Il existe encore des « outils LN », des scripts qui désactivent les canaux, si le canal spécifique n'est « pas rentable » à router. C'est idiot et improductif. Cela ne fait que fermer les portes à des itinéraires possibles.
- Les utilisateurs n'utilisent toujours pas MPP comme option principale lorsqu'ils effectuent des paiements via LN. Cela fait que les canaux peuvent être vidés très rapidement et n'utilisent pas non plus d'itinéraires efficaces, les nœuds devront toujours adapter le trafic avec différentes méthodes (rééquilibrage, ajustement des frais, ajustement du HTLC max, ouverture de plus de canaux). MPP ne consiste pas seulement à diviser le montant d'un paiement en plusieurs petites parties, mais aussi à rechercher le meilleur itinéraire pour chaque division. Un HTLC plus petit aura un taux de recherche de bon chemin plus rapide et meilleur qu'un gros montant.
- Recherche de chemin. Oui, il s'agit d'un problème très important dans LN et il est principalement dû à tous les aspects mentionnés ci-dessus.
RECOMMANDATIONS POUR LES NOUVEAUX COUREURS DE NŒUDS LN PUBLICS
En tant que nouvel utilisateur dans ce monde fascinant de Lightning Network, voici ce que vous devez faire :
- Avant de commencer à exécuter un nœud, demandez-vous : pourquoi avez-vous besoin d'exécuter un nœud LN complet ? Comme je le mentionne dans le guide sur Démarrer avec Umbrel, il existe une liste de réponses que les gens devraient prendre en compte avant de commencer à exécuter un nœud.
- Si vous voulez simplement jouer avec LN et même avoir un nœud LN privé, il n'est PAS NÉCESSAIRE d'exécuter un nœud de routage ! Vous pouvez facilement exécuter votre portefeuille mobile Blixt Node Wallet ou Zeus Node wallet avec des canaux privés, pas besoin d'être 100% en ligne, gestion complète de vos canaux, plus privé, facile à gérer, pas besoin d'avoir beaucoup de fonds dans LN. Voir plus de portefeuilles LN pour mobiles ici avec toutes les fonctionnalités détaillées et un guide dédié aux nœuds LN PRIVÉS ici.
- Si vous souhaitez utiliser un portefeuille LN de bureau, vous pouvez facilement utiliser Electrum, cela fonctionne parfaitement. Bientôt, Blixt aura également une version de bureau, plus avancée et plus puissante.
- Si vous n'êtes pas très technophile et que vous n'aimez pas lire la documentation, mieux vaut ne pas exécuter ces nœuds de bureau/RPI. Vous n'aidez pas du tout le réseau en ne sachant rien de LN et en gardant simplement un nœud de merde dans le réseau. Vous faites plus de mal que de bien.
- Si vous voulez vraiment exécuter un nœud de routage de bureau complet, mieux vaut être bien préparé : lisez beaucoup toute la documentation disponible, étudiez tous les tutoriels vidéo, préparez une bonne machine solide pour votre nœud comme je l'ai mentionné dans ce guide dédié à la maintenance des nœuds, surveillez de manière proactive vos pairs et vos canaux, maintenez un bon trafic avec des frais bas et de bons itinéraires. Les pairs difficiles à maintenir en ligne, ne les gardez pas, rendent vos itinéraires plus difficiles.
- Utilisez du matériel puissant ! C'est très important. Pour les nœuds avec plus de 50 à 100 canaux, une machine RPi devient vraiment problématique, en particulier avec LND.
- Commencez à utiliser la méthode d'ajustement du HTLC max par canal, jusqu'à un certain niveau où vous voyez que le trafic de vos pairs se passe bien des deux côtés. Comme je l'ai expliqué dans l'autre guide ici. Cela aidera beaucoup à trouver le chemin pour les itinéraires et permettra aux satellites de circuler plus rapidement à travers votre nœud, en passant par les canaux corrects, où une liquidité suffisante est indiquée.
- Des frais élevés ne vous aideront en aucune façon, mais aggraveront encore les choses. Ne vous connectez jamais à des nœuds avec des frais élevés. ISOLEZ-LES ! Prenons simplement des exemples de ces nœuds idiots avec des frais ultra élevés : Sweet16Joe, Magnetron (portefeuille Muun) et bien d'autres comme ça. Nous sommes ici pour baiser les banquiers et non pour nous baiser les uns les autres.
DEMANDES DE DÉVELOPPEURS LIGHTNING
Veuillez envisager de trouver un moyen d'améliorer le code LN avec ces aspects. Ces demandes ne concernent pas seulement les développeurs d'implémentations LN, mais aussi les outils de gestion et les portefeuilles comme Thunderhub, RTL, Zeus, etc. Peut-être que vos objectifs sont différents, mais veuillez au moins écouter ce que les utilisateurs disent et demandez :
- Ajoutez dans le code une option permettant de ne pas fermer un canal avant une certaine hauteur de bloc, établie par les deux pairs ouvrant le canal. Nous avons aujourd'hui de nombreux marchés de canaux, vendant des canaux de liquidité, mais il n'existe pas de moyen simple de « verrouiller » ces canaux, il est presque impossible de les fermer avant un certain nombre de blocs. Cela évitera également de tricher dans ces contrats de liquidité et d'établir certaines règles.
- Changez la façon dont les HTLC déclenchent une fermeture forcée. Pourquoi punir un nœud qui a déjà routé le HTLC, si le prochain pair sur la route est celui qui ne respecte pas le HTLC ? Ces canaux fermés de force sont littéralement IDIOTIQUES, n'ont aucun sens et sont coûteux. Ou au moins donner la chance au pair de garder le canal ouvert et fonctionnel et de contester d'une autre manière les HTLC en attente. Utilisez un système de réserves, où chaque pair déposera d'abord une réserve. Cela incitera les nœuds à réfléchir à deux fois à qui et comment ils ouvriront les canaux. Rendre le protocole de ragots plus efficace et plus fiable. C'est vraiment pénible de voir que les pairs sont littéralement en ligne, vous pouvez les pinger mais les ragots disent que le canal est hors ligne. Cela fait que beaucoup de HTLC sont en état d'attente et même perdus en raison d'une mauvaise communication via les ragots. Ajoutez une option simple pour définir le HTLC maximum pour un canal en fonction de la liquidité de ce canal pour chaque côté, en annonçant littéralement le solde lorsqu'un paiement arrive au nœud. Oui, beaucoup diront que cela « violera la vie privée », mais soyons honnêtes, nous avons déjà de nombreuses façons de trouver le solde d'un canal, pas besoin de se cacher derrière le doigt. Ce sont des nœuds de routage, qui doivent annoncer très bien la liquidité, ne sont pas des nœuds privés. En ce moment, je découvre que le simple fait d'ajuster manuellement le HTLC max pour un canal améliore considérablement le trafic, sans faire de rééquilibrage stupide ni d'ajuster les frais en fonction de la liquidité disponible. Je suis totalement d'accord avec la proposition de nœud ZFR ici.
- Ajoutez de meilleures options pour gérer les itinéraires sur des canaux spécifiques, avec un ensemble de règles qui peuvent être facilement gérées par l'opérateur du nœud. Exemple : je veux que tous les canaux privés soient acheminés via des canaux publics spécifiques. Ou pour les applications LNDhub comme Bluewallet et LNbits, j'aimerais avoir des canaux dédiés à utiliser. Oui, j'ai essayé de nombreuses façons de définir des frais spécifiques, HTLC min/max mais cela ne fonctionne pas bien.
- Ajoutez une meilleure prise en charge des nœuds Tor uniquement ou trouvez un autre protocole pour communiquer en privé. Tor n'est vraiment pas fiable pour les nœuds LN. Cela crée tellement de problèmes.
- Pourquoi avons-nous 3 implémentations LN avec 3 delta CLTV différents ? Pourquoi ne sont-elles pas toutes identiques ? Comment les utilisateurs doivent-ils définir, en fonction de quelles mesures ? J'ai vu certains nœuds jouer avec ces paramètres par défaut (CLN=34, LND=40, Eclair=144) et le routage devient fou et finit même par forcer la fermeture des canaux. Pourquoi ne peut-on pas avoir quelque chose de stable et de fiable ?
- Laissons tomber toutes ces conneries un moment, arrêtons d'ajouter de « nouvelles fonctionnalités et jetons inutiles » sur LN, et concentrons-nous sur l'amélioration du fonctionnement de LN. Parce qu'en ce moment... cela ne fonctionne pas bien. C'est loin d'être un réseau de paiement efficace. Et si nous ne nous occupons pas de ces problèmes, nous aurons bientôt un projet qui échouera ou nous essaierons simplement de corriger les erreurs.
- Pour les développeurs d'Umbrel en particulier : s'il vous plaît, n'ajoutez pas autant d'applications bloatware ! Les utilisateurs les installent juste par curiosité et chargent ces minuscules RPis avec des applications inutiles. Concentrez-vous davantage sur la nécessité d'avoir un nœud LN puissant et ajoutez des options importantes pour gérer ce nœud LN. Toutes les applications non liées au nœud ne sont pas du tout utiles et pourraient facilement être intégrées dans une autre suite de « serveur personnel » s'ils veulent vraiment les utiliser. Ne mélangez pas ces choses ! Je sais que votre intention est de créer un « serveur personnel souverain » mais cela ne fonctionnera pas comme ça ! J'exécute moi-même un nœud Umbrel, mais juste comme un nœud LN, rien d'autre. Toutes les autres applications, je les exécute séparément sur une autre machine ou même sur mon NAS Qnap. Je n'ai pas besoin de surcharger mon nœud avec elles. Mais de nombreux débutants ne connaissent pas cet aspect. Mieux vaut les séparer.
CONCLUSION
J'espère que cet article ouvrira les yeux de beaucoup de gens et leur fera comprendre que nous avons encore du travail à faire pour améliorer LN. Nous avons encore le temps de le réparer et nous pouvons commencer par des choses simples : la formation des nouveaux utilisateurs et la correction/amélioration du code LN.
Vous pouvez rouvrir un canal, mais les satellites perdus à cause de la fermeture forcée et de la réouverture ont été jetés en vain...
Et lorsque vous commencez à avoir 4 à 5 FC / semaine, vous ne verrez pas qu'il est aussi fiable d'exécuter un nœud de routage.
J'ai moi-même 2 nœuds LN en fonctionnement et j'envisage d'en fermer totalement un. Peut-être les deux (CLN et LND) et je lancerai juste un Blixt ou un Zeus sur ordinateur ou mobile, en privé et je m'en fous de tout le routage et de l'aide au réseau.
Je suis prêt à router gratuitement, mais payer pour forcer la fermeture pour les erreurs des autres... n'est pas acceptable./<
Nous commençons à construire un réseau de paiement, mais d'autres de l'autre côté essaient de le fermer. Nous avons maintenant des marchés de liquidité, nous achetons des canaux, mais si ces « contrats » ne sont pas respectés et établis avec certaines règles, personne ne s'en souciera et fermera simplement vos canaux. La réputation ne vous rendra pas les satellites que vous avez perdus à cause de cette fermeture forcée et du réseau que vous avez commencé à construire et qui est maintenant perdu.
Exemple ici, un vendeur qui a vendu un canal et qui est ensuite prêt à le fermer. Oui, le pair peut être hors ligne ou en ligne. Mais vous avez un contrat lorsque vous avez vendu ce canal. Et cela créera un précédent. Les gens vous vendront des canaux, puis les fermeront. Tout votre travail aura disparu.
Oui, ce vendeur a raison, il se demande pourquoi le pair est hors ligne. Mais le contrat est un contrat. Il faut le respecter.
Cela peut aussi être dû aux ragots, qui sont parfois vraiment fous, montrant certains pairs hors ligne, mais en fait ils ne le sont pas.
Moi-même, je me suis retrouvé dans une situation où, quelques jours de suite, 3-4-5 pairs sont apparus hors ligne (sur 55 pairs au total). L'un d'eux était même mon autre nœud CLN, que je regardais au même moment et qui était OK, en ligne et en bonne santé. Donc LND a décidé de fermer la connexion avec ces pairs, sans raison.
J'ai essayé de me reconnecter à des pairs, certains ont fonctionné, d'autres non. J'ai contacté des pairs, ils ont dit qu'ils étaient en ligne et en bonne santé. Mon CLN inclus.
Pourquoi cela se produit-il ? Personne ne le sait ou n'essaie de résoudre le problème. Et à partir de ce problème commencent les autres problèmes avec les HTLC en attente, puis les fermetures forcées.
Je lance un AVERTISSEMENT ici, maintenant, et peut-être que dans quelques années les gens se souviendront de mes mots.
Si ce problème dans LN, avec les canaux fermés de force, n'est pas résolu d'une manière ou d'une autre, ou si de nouvelles règles spécifiques ne sont pas ajoutées au code, nous verrons une énorme centralisation dans une poignée de gros nœuds qui géreront la liquidité, avec des frais énormes.
Ou peut-être que dans quelques années, nous verrons apparaître un nouveau LN, le LN de la plèbe, en parallèle, où un autre système de paiement naîtra, mais qui pourra être « rattaché » au « LN centralisé » qui se forme aujourd'hui.
Au moment de la rédaction de cet article, LND a également lancé la v.0.15 et CLN v0.11.1, corrigeant certains problèmes, mais provoquant en même temps des fermetures forcées massives pour de nombreux nœuds.
Comme vous pouvez le voir ici dans ce graphique de https://bitcoinvisuals.com/ln-nodes:
Beaucoup de ces nœuds « disparus » du graphique sont :
- les nœuds qui se déplacent vers des nœuds « privés » (non annoncés, non publics), qui ne sont plus routés ou qui sont routés en privé.
- les débutants qui se rendent compte que le modèle de « nœud RPi avec Umbrel » n'apporte pas de « revenu passif » et ils abandonnent tout simplement
- trop de canaux et d'opérateurs forcés à fermer qui ferment simplement les nœuds
Remarque : suite de cet article est ici avec un guide sur la façon d'utiliser LN sur 3 niveaux