swarm以太坊bzz/bee运行错误配置常见问题解决方案

bzz专题:https://www.west.cn/bzz/ 

最近遇到常见错误:

image.png

rate limit exceeded 错误原因:

swap-endpoint 免费版默认限制100000 个请求/天,如果超过会报错误。

解决方案:付费购买更多的请求,或用户自行搭建RPC节点(推荐) 。查看 搭建教程


特别说明:

很多人遇到这个错误******************to be mined:not found ,是因为使用的v0.5.3,无法直接启动,需要找一个在正常运行的节点引导启动。

image.png

可以参考这个教程处理:https://www.west.cn/faq/list.asp?unid=2430 


一、常见报错:


1、bee启动报错:“Error: no known factory address for this network”

1.png

节点不对,需要在yaml文件中将swap-endpoint:对应值替换成自己生成的新节点,参考申请教程:https://www.west.cn/faq/list.asp?unid=2421  

Windows的替换位置如下:

2.png

提示错误:Error: get chain id: Post "https://rpc.slock.it/goerli": EOF   也是这个原因,需要更换节点地址。

8.png



2.http://localhost:1633/ 打不开。

如果http://localhost:1633/ 无法访问的话,确定服务已经正常运行的情况下,浏览器输入http://127.0.0.1:1633/ 用IP访问一下本机。最后确认一下在配置文件中包含debug-api-enable: true

如果使用http://127.0.0.1:1633/可以访问,建议直接使用http://127.0.0.1:1633 访问。



3.Bee启动报错:“Error: chequebook init: transaction underpriced”

bee节点启动后,提示支票簿初始化错误,原因是网络拥堵,节点在自动部署合约过程中,没有自动将钱包里的gBZZ代币转入合约支票簿。查看一下此时的ETH钱包地址和转入gBZZ代币的地址是否一致。

解决方法:确认bee分配的ETH钱包内有足够的gBZZ代币,没有的话需要去官方水龙头接水。

官方水龙头接水方法,请参考:https://www.west.cn/faq/list.asp?unid=2429 


4.Bee启动报错:"waiting for chequebook deployment in transaction"

bee节点启动后,提示等待事务中的支票簿部署。

解决方法:这个问题只需要耐心等待就可以了。


5.Bee启动报错:“Error: debug api listener: listen tcp :1635: bind: address already in use”

您的节点未侦听端口 1635,或者未启用 debug-api,或者未在 localhost 上执行。确保您的 bee.yaml 文件中包含:debug-api-enable: true

错误提示端口1635被占用,原因是后台还有另外一个bee程序被占用,这个错误经常发生在Linux服务器上。

在Linux上部署的bee节点,系统启动方式,和手动启动方式是开启了两个不同的bee程序。

例如:使用systemctl start bee命令启用的BEE是系统服务,这时再通过命令bee start启动的话,会出现端口被占用的错误。

解决方法:使用systemctl stop bee命令停止Bee后,再运行启动命令bee start。一般Linux下安装bee,不要将bee设置为自启动。使用命令停止后就可以了。


6.Windows版本运行后,报错日志占用。

解决方法:重新启动电脑,然后重新启动bee程序。


7.Windows下启动Bee报错“Error: chequebook init: transaction cancelled”

如果输出上面的错误提示,请查看你的电脑上防火墙否关闭,如果没有关闭,请关闭防火墙。

如果你不想关闭防火墙,请在防火墙中设置bee.exe通行。在防火墙选项下选择“允许应用或功能通过Windows防火墙”然后选择bee.exe程序。


8.错误提示:“could not connect to peer”

“由于各种原因,可能会无法连接到对方节点。” 最常见的一种情况是,地址簿中存在一个之前会话的节点标识符。再次尝试连接到此节点时,对方节点可能不再在线。


9.bee错误提示:“context deadline exceeded”

“超出上下文截止日期”是一个非严重警告。这意味着节点花费了额外的时间,来响应你的节点的请求。请求失败后,将通过另外一个节点自动重试。


10.bee错误提示:“kademlia has no connected peers, trying bootnodes”

“没有连接的对等节点,正在尝试启动节点”节点启动过程中,没有可以访问的对等节点,意思是访问不到外网的节点,排查一下防火墙是否关闭,或者是否将bee.exe添加到系统防火墙中。

如果你申请的交换端点无法连接也会造成这样的错误,访问https://infura.io/查看你的交换端点的免费次数是否超过10万次。官方建议自建Goerli 节点。


11.bee错误提示:“a swap-enabled network a working blockchain node (for goerli network in production) is required. Check your node or specify another node using --swap-endpoint.”

“一个支持交换的网络,需要一个工作的区块链节点(用于生产中的goerli网络)。 检查您的节点或使用--swap-endpoint指定另一个节点。”

swap-endpoint交换节点错误,没有eth交换节点。申请节点参考:https://www.west.cn/faq/list.asp?unid=2421 


12.水龙头错误提示:“You don't have any sprinkles left, please deploy your sprinkled nodes to be gifted more!”

每个discord账号,最多只能领取三次测试gbzz代币,超过就无法领取,重新使用邮箱注册一个discord账号就可以了。


13.启动错误:“Error chequebook int:chequebook not deployed by factory”

错误支票簿:支票簿未由工厂部署

更新新的0.6.2客户端,重新打开!


14.bee错误提示:“error: rate limit exceeded”

错误:超出速率限制,0.6.2版本增加了节点的速率限制(发送和接收),遇到这个问题重新启动bee节点就行了!


15.bee错误提示:“peer not reachable when attempting to connect”

意思是连接不到外面的节点,p2p端口拥堵通信不通,检查防火墙开放端口!或者关闭防火墙!找一台其他网络的机器telnet 你的外网ip加上你的p2p端口,看下是否通。

p2p默认端口是1634,如果以上都没有问题,重新启动bee节点客户端。

如果还是出现问题,检查一下swap交换节点是否畅通,如果与Infura的连接超时,会自动关闭节点


16.bee错误提示:“kademlia manage loop exited”

kademlia 管理循环退出,由于无法访问到对方节点,导致程序错误,重新启动bee主程序。

造成这个问题的主要原因是,官方在0.6.x版本增加了一个限制“当与 Infura 的连接超时时关闭节点”,这个比较坑,当你访问对方节点时,需要Infura作为交换节点服务器中转访问,一旦Infura无法连接,或者Infura超时,节点便会自动关闭。官方建议自建Goerli 节点。


17.bee错误提示:"Error: overlay address changed. was 9fc6a8f27b7e182dd1fc6576173afc7dc6a98f159944b04a748fc03b7b7a3710 before but now is 256362de0a8f4de53985bc22fb4795c2d9ecc585b7748a85cc7dcbc5c30146cc"

错误:覆盖地址已更改。 之前是 9fc6a8f27b7e182dd1fc6576173afc7dc6a98f159944b04a748fc03b7b7a3710 但现在是 256362de0a8f4de53985bc22fb497975c8dcbc5c5c5c5c8dc5c5c8d

解决办法:删除掉statestore目录,然后重新启动bee即可解决。

rm -rf /var/lib/bee/statestore


18.运行错误,强制退出节点:“peer not reachable when attempting to connect,kademlia manage loop exited,kademlia shutting down,kademlia persisting peer metrics”

错误:尝试连接时无法访问对等点,kademlia 管理循环退出。

获得与交换端点更稳定的连接。 0.6.x 监控交换端点,如果检测到错误,将关闭您的节点。  您可以自己搭建交换端点服务器,来运行您自己本地的Goerli 节点。


19.bee启动错误:"waiting to sync with the Ethereum backend"

错误:"等待与以太坊后端同步"

时间不同步,你机器的时间不是实时的 1 分钟内,你的交换端点还没有与 goerli 网络同步。根据https://www.timeanddate.com/worldclock/timezone/utc检查 timedatectl 世界时间,将你的电脑时间与世界时间同步。

注意:Swarm/Bee错误持续更新中,您遇到上面bee方面的错误,欢迎在下方留言。整理之后会分享给大家。


20.bee启动错误:"stream handler:handshake:unable to handshake with peer id"

错误: "无法与对端握手"

配置缺少mainnet: true导致,1.0.0正式版已经上线,需要配置连接到主网


二、Bee配置节点常见问题

在配置Bee的过程中,总会遇到各种各样的问题,下面总结了一些经常会遇到的问题。仅供大家参考!


1.Bee 使用哪个 p2p 端口,我应该在路由器中打开哪个端口?

Bee 的默认 p2p 端口为 1634,请使用您的路由器转发此端口,并根据需要允许流量通过防火墙。Bee 也支持 UPNP,但建议您不要使用此协议,因为它缺乏安全性。


2.如何能知道是否已连接到其他Bee节点?

您可以使用它的 HTTP api 与您的 Bee 通信。curl http://localhost:1635/peers在您的命令行中键入以查看您的同行列表。


3.如何从安装了bee-clef的节点中导出私钥

如果您与Bee-Clef一起运行Bee,则可以在命令行中键入bee-clef-keys,它将.JSON文件存储到您的主文件夹中,并将密码复制到剪贴板中。

参考:https://www.west.cn/faq/list.asp?unid=2433 


4.安装了 bee-clef,但无法导出私钥

发生了很多安装bee-clef的情况,但是从bee-clef-keys获取地址并不会产生与输出相同的输出。 :1635/addresses

在这种情况下,用户很可能没有在蜜蜂节点的配置中启用谱号。

这对你不起作用?你得到错误 - >xclip: not found” or “Error: Can’t open display: (null)

尝试运行以下命令: sudo cat /var/lib/bee-clef/password

然后,您可以使用它导入到 Metamask 或任何其他 web3 钱包提供商。


5.如何从节点导出私钥(没有 bee-clef)

可以在 README 部分找到说明:https://github.com/ethersphere/exportSwarmKey 

您也可以按照以下链接中的迷你指南进行操作:https://pastebee.com/?3b2a4cecafa21a7afcdd4d4f3d74fef1d5551acd91eb2d3a5b750dc9a161fbcf 


6.如何将蜜蜂节点地址导入Metamask?

导出您的蜜蜂节点私钥

转到 Metamask 并单击导入帐户

选择选择类型:JSON文件

上传导出的 .JSON 文件(其中包含您的密钥)

粘贴密码

点击导入

参考:https://www.west.cn/faq/list.asp?unid=2433 


7.bee的重启命令是什么?

如果您使用systemctl:

开始: sudo systemctl start bee

停止: sudo systemctl stop bee

地位: sudo systemctl status bee

如果您使用“bee start”

开始: bee start

停止:ctrl + c或cmd + c关闭终端以停止进程。


8.如何查看我有多少张已兑现的支票?

您可以在 etherscan 查看您的支票簿合同。

通过以下方式获取您的支票簿合同地址:

curl http://localhost:1635/chequebook/address


9.我对比过我的以太坊地址和我的支票簿地址之间的交易,数量不同,这是为什么?

当您的同行现金支票由您签发时,您的支票簿将显示 OUT gBZZ 交易,但您无需为这些支付任何 gas,因此它们不会出现在您的以太坊地址交易列表中。


10.如何设置 infura.io 端点

您需要在 infura.io 注册一个免费帐户,设置一个以太坊项目,并获取包含您个人 API 密钥的 goerli 测试网 URL。将该 URL 放入您的交换端点并重新启动您的节点。

确保选择正确的网络:ENDPOINTS后面选择“Gorli”


11.我可以将多个节点连接到 infura 端点吗?

是的,但他们的免费计划每天限制 10 万个请求。


12.当我运行 http://localhost:1635/chequebook/balance 时,我得到“totalBalance”和“availableBalance”有什么区别?

totalBalance是区块链上的余额,availableBalance是该余额减去您发给同行的未兑现(非兑现)支票。这些后面的检查不会出现在区块链上。这就像银行认为您的余额与您的支票簿所知道的实际上可用的余额,因为您写的支票仍然“在邮件中”并且尚未兑现。


13.什么决定了bee节点的连接数量,以及如增加节点的数量?为什么有时候同时在线300多的节点,而有时却是30个?

连接节点的数量由您的节点决定,因为它试图保持分布式 Kademlia 的良好连接。随着节点在网络中来来去去,您的节点数会上下波动。如果您查看 bee“成功连接”的输出日志,则在这些消息的末尾应该混合使用 (inbound) 和 (outbound)。如果您只获得(outbound),那么您需要通过防火墙打开 p2p 端口和/或由路由器转发。


14.“systemctl”和“bee start”有什么区别?

bee start和systemctl start bee实际上运行 2 个不同的实例,其中包含 2 个不同的bee.yaml文件和两个不同的数据目录。

bee start使用当前目录下~/bee.yaml和~/bee目录用于数据存储,而 systemctl使用/etc/bee/bee.yaml和 /var/lib/bee存储数据


15.我可以为多个节点使用一个以太坊地址/钱包吗?

不可以,这违反了 Swarm 协议的要求。Swarm 协议依赖于Swarm Address,也称为peer address. 该地址是节点以太坊地址的散列,因此它是确定性的。由于所有节点都必须有一个唯一的地址,如果你使用同一个钱包,就会违反唯一性约束并导致节点故障。

因此,规则是,每个节点必须具有:

唯一的以太坊地址

唯一的支票簿

API / p2p / Debug API 的3个独特端口。


16.bee节点程序,windows下启动后输入密码闪退。

密码输入错误,请注意检查大小写。


17.Windows下启动bee节点程序后,输入密码正常启动,在访问交换端点swap-endpoint的时候突然闪退。

交换端点swap-endpoint无法访问造成的闪退,检查交换端点网站10万次交换次数是否超限。如果超限需要重新注册交换节点账号。https://infura.io/

访问https://docs.ethswarm.org/api/查看所有bee的API命令


Swarm/Bee 相关资源链接

官方文档链接:https://docs.ethswarm.org/docs/ 


bee全网节点地图(2021年6月): https://uzbox.com/beenodes.html 


API命令详解合集:https://docs.ethswarm.org/debug-api/ 


infura(–swap-endpoint)测试交换节点申请: https://infura.io/ 


安装帮助:


Swarm以太坊挖矿Windows部署教程|BZZ币挖矿教程|BZZ挖矿教程


swarm挖矿bzz搭建bee节点 bzz linux教程


以太坊测试浏览器:https://goerli.etherscan.io


Bee节点linux常用命令 :

节点访问

curl http://localhost:1633


查看地址

echo '{"id": 1, "jsonrpc": "2.0", "method": "account_list"}' | nc -U /var/lib/bee-clef/clef.ipc


检查连接性

curl -s http://localhost:1635/peers | jq '.peers | length'


网络拓扑

curl -X GET http://localhost:1635/topology | jq


查看自己的钱包地址

curl -s localhost:1635/addresses | jq .ethereum


查看自己的支票合约账本地址

curl -s http://localhost:1635/chequebook/address | jq .chequebookAddress


查看支票 查看支票薄详情

curl http://localhost:1635/chequebook/cheque

curl localhost:1635/chequebook/cheque | jq


查看支票薄账户余额

curl localhost:1635/chequebook/balance | jq


查看每个peer的余额

curl localhost:1635/balances | jq


查看支票接收和发送数量

curl localhost:1635/settlements | jq



Swarm(BZZ)中国交流2群,群号:719213230

Swarm(BZZ)中国交流1群(已满)群号:771067189

微信群,请添加微信好友拉群:17778399228

===============================


编辑:西部数码
日期:2021-05-27

收藏 】 【 打印 】   
您可对文档进行评分哟~

勾选遇到的问题提交给我们,收到反馈后保证及时修正更新!

提交反馈需要先登陆会员帐号

上一篇:国内高防机房IP部署SSL证书(https)说明
下一篇:[原创]西部数码获批工信部及通信管理局域名注册服务机构的批文!
若文档内容对您没有帮助,不能解决问题? 您还可以 咨询在线客服提交工单,我们将竭诚为您服务。
  >> 相关文章
 
分享至:
Top

24小时客服热线

400-028-5800

028-62778877

您好,非正常上班时间若有紧急技术问题,请拨总机后按7号键, 其他问题请提交工单或在上班时间联系,谢谢支持!