【问题标题】:How is a private IPFS network setup?私有 IPFS 网络如何设置?
【发布时间】:2020-07-10 17:55:26
【问题描述】:
ubuntu@ip-172-31-39-89:~$ export LIBP2P_FORCE_PNET=1 && IPFS_PATH=~/.ipfs ipfs daemon

我有以下错误-

export LIBP2P_FORCE_PNET=1 && IPFS_PATH=~/.ipfs ipfs daemon

 go1.11.1
Successfully raised file descriptor limit to 2048.
13:37:13.509 ERROR p2p-config: tried to create a libp2p node with no Private Network Protector but usage of Private Networks is forced by the enviroment config.go:69
13:37:13.512 ERROR   cmd/ipfs: error from node construction:  privnet: private network was not configured but is enforced by the environment daemon.go:332
Error: privnet: private network was not configured but is enforced by the environment
Received interrupt signal, shutting down...
(Hit ctrl-c again to force-shutdown the daemon.)

关于原因有什么想法吗?

【问题讨论】:

    标签: ipfs


    【解决方案1】:

    我仔细地重复了这个过程并重新生成了 swarm 密钥,这次成功了。

    【讨论】:

      【解决方案2】:

      当我尝试从 systemd 服务运行它时,我遇到了同样的问题。使用 LIBP2P_FORCE_PNET 环境变量会引发错误。我删除了ipfs(~/.ipfs)数据目录,再次运行init命令。

      我认为原因可能是我没有添加 IPFS swarm key。如果有人遇到类似问题,这里是命令。

      export LIBP2P_FORCE_PNET=1
      IPFS_PATH=~/.ipfs ipfs init
      
      #then,
      
      go get -u github.com/Kubuxu/go-ipfs-swarm-key-gen/ipfs-swarm-key-gen
      ipfs-swarm-key-gen > ~/.ipfs/swarm.key
      
      IPFS_PATH=~/.ipfs ipfs daemon
      

      【讨论】:

      • 我应该将此应用于连接到网络中的所有节点
      • @alper 您需要在一个节点上生成密钥并将其复制到其他节点,然后再启动守护进程
      • 谢谢,我是否也应该在粘贴密钥后删除所有节点的~/.ipfs 数据目录?因为您的第一段不清楚删除~/.ipfs 是否是强制的
      • @alper 如果我没记错的话,您必须删除该目录。我的回答假设您是在第一次设置集群时这样做。
      • 删除~/.ipfs 似乎不是一个好的解决方案,因为它会删除公共域上的所有下载文件。相反,将IPFS_PATH 更改为新的~/.ipfs_private 并应用ipfs init 似乎更安全,因为原始~/.ipfs 不会被删除,用户可以根据他们的使用情况进行切换
      猜你喜欢
      • 2020-11-08
      • 2016-01-13
      • 1970-01-01
      • 2017-04-25
      • 2019-05-20
      • 2021-05-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多