人人都能成为闪电网络节点:第7章管理lnd

开启btcd和lnd

nohup btcd --configfile=/data/btc/btcd.conf >/data/btc/20190417.out //后台运行btcd

nohup lnd --configfile=/data/btc/lnd.conf >/data/btc/lnd20190417.out //开启lnd,也可以加nohup后台运行。


人人都能成为闪电网络节点:第7章管理lnd_第1张图片
image.png

准备建立通道

第一次运行 lncli

lncli create
//需要设定一个钱包密码,也用于解锁lncli
然后特别要记住系统显示的助记词


人人都能成为闪电网络节点:第7章管理lnd_第2张图片
image.png

lncli unlock //解锁lnd


image.png

lncli getinfo //查看下自己的设置是否生效

准备开启通道

lncli newaddress //生成一个lnd使用的地址,用来注入资金。
通过钱包给这个地址付款。提示:建议最少200000聪,每一个通道少于10万是开不起来的。

lncli walletbalance //查看收到了没有


image.png

lncli connect 027e70d8859e090ed975b11cfa02109221482954a254dff185e4142188eb66518b@47.75.125.192:9735 //连接一个节点,如果开启自动模式,会自动连接节点,并且只要钱包有钱,就能自动开启通道。这是lnd比c-lightning职能一些。

lncli openchannel 027e70d8859e090ed975b11cfa02109221482954a254dff185e4142188eb66518b 120000 //开通道

检查通道

lncli listchannels //列出所有打开的通道


人人都能成为闪电网络节点:第7章管理lnd_第3张图片
活跃状态为true

lncli getchaninfo 630389598646894593 //获得通道的状态。


人人都能成为闪电网络节点:第7章管理lnd_第4张图片
image.png

通道的备份非常重要

这一点容易被忽略。
lncli exportchanbackup --all --output_file /data/btc/chanbackup-20190427.backup //针对一个指定的,或者所有通道进行静态备份。建议指定输出为一个文件,方便保存。比如:

image.png

lncli verifychanbackup --multi_file chanbackup-20190427.backup //验证自己通道备份是否可用。


image.png

restorechanbackup //出现问题,可以从通道静态备份进行恢复。

关闭lnd的方法

注意这里说的是关闭lnd,意思就是不想再做节点了,不是停机重启。

第一步:可以通过闪电网络转出通道内的资金。
第二步:使用closeallchannels命令关闭所有存在的通道。
第三步:使用disconnect 命令逐个断开节点。
第四步:使用stop 命令停止并关闭lnd进程。
第五步:使用btcctl(btcd,或者bitcoin-cli) stop关闭btcd进程。

lncli命令详解

lncli -help //lnd命令帮助
如果命令不熟悉,可以只输入命令lncli 和关键字,有的命令会提示详细的语法。

基本命令

getinfo //返回与本地lnd进程相关的信息。


人人都能成为闪电网络节点:第7章管理lnd_第5张图片
image.png

sendtoroute //通过预定义路由付款。
debuglevel //设置debug级别。
stop //停止并关闭lnd进程。

和通道相关的命令

openchannel //打开一个通道,后面加上节点id就可以,不用加ip端口。


注意:金额太少不能打开通道

金额够了,就能开通到了

closechannel //关闭一个存在的通道。
closeallchannels //关闭所有存在的通道。
abandonchannel //放弃所有通道
channelbalance //检查所有已打开的活跃通道中的余额


通道处于等待状态,余额为0.

pendingchannels //显示处于等待状态中的通道的信息。


人人都能成为闪电网络节点:第7章管理lnd_第6张图片
通道已经打开了

listchannels //列出所有打开的通道


人人都能成为闪电网络节点:第7章管理lnd_第7张图片
活跃状态为true

closedchannels //列出所有已经关闭的通道。
getchaninfo //获得通道的状态。


人人都能成为闪电网络节点:第7章管理lnd_第8张图片
image.png

getnetworkinfo //获得当前网络状态的统计信息。


人人都能成为闪电网络节点:第7章管理lnd_第9张图片
image.png

feereport //显示当前所有活跃通道的收费策略。


人人都能成为闪电网络节点:第7章管理lnd_第10张图片
image.png

updatechanpolicy //针对一个或多个通道更新策略。
exportchanbackup //针对一个指定的,或者所有通道进行静态备份。建议指定输出为一个文件,方便保存。比如: lncli exportchanbackup --all --output_file /data/btc/chanbackup-20190427.backup

image.png

verifychanbackup //验证自己通道备份是否可用。


image.png

restorechanbackup //从通道静态备份进行恢复。

链上交易相关

estimatefee //将比特币链上发送到多个地址的费用估计。
sendmany //链上发送到多个地址。
sendcoins //链上发送到一个地址。
listunspent //显示可用的utxo


人人都能成为闪电网络节点:第7章管理lnd_第11张图片
image.png

listchaintxns //列出钱包中的交易。


人人都能成为闪电网络节点:第7章管理lnd_第12张图片
image.png

支付相关

sendpayment //通过闪电网络进行付款,可以指定目的公钥,金额,可接受的费率等等参数。
payinvoice //通过闪电网络对指定的bolt地址进行支付。
addinvoice //生成一个账单收款地址。


人人都能成为闪电网络节点:第7章管理lnd_第13张图片
image.png

lookupinvoice //通过支付哈希查找一个支付。.
listinvoices //列出数据库中当前存储的所有收款地址。忽略所有处于debug模式的账单。
listpayments //列出所有支出。
queryroutes //查询到目的地的路由。
decodepayreq //解码一个支付请求。
fwdinghistory //查询所有转发的HTLC的历史记录。

与对等节点相关

connect //连接到一个远程节点,后面加上节点id,ip,端口号。


image.png

disconnect //通过公钥断开一个节点。
listpeers //列出当前连接的所有活动对等点。


人人都能成为闪电网络节点:第7章管理lnd_第14张图片
image.png

describegraph //描述网络图。
getnodeinfo //获得特定节点的信息。

lnd启动相关命令

create //首次启动lnd时初始化钱包。


人人都能成为闪电网络节点:第7章管理lnd_第15张图片
image.png

unlock //启动时解锁加密钱包。
changepassword //启动时更改加密钱包的密码。

钱包相关

newaddress //生成一个新地址,后面必须加参数: p2wkh 或者np2wkh
walletbalance //计算并显示钱包的当前余额。


image.png

signmessage //用节点的私钥签署消息。
verifymessage //验证用签名签署的消息。


参考文章:
闪电网络技术的前世今生
https://www.douban.com/note/680755028/
闪电网络lnd的github文档
https://github.com/lightningnetwork/lnd/blob/master/docs/INSTALL.md
[初版]人人都能搭建闪电网络
https://www.jianshu.com/p/4f997c5b57ff

你可能感兴趣的:(人人都能成为闪电网络节点:第7章管理lnd)