美文网首页
搭建IPFS私有网络

搭建IPFS私有网络

作者: 大河翻腾 | 来源:发表于2018-08-29 10:36 被阅读0次

        IT技术的学习一般讲究理论与实践相结合。很多人的学习IPFS的时候,都是先上github看下简单介绍,然后顺着简单介绍深入看一下详细介绍和其背后的论文。看了很多文章之后觉得自己对它有了一个轮廓性的了解,下一步可能就想通过实际操作来验证、加深一下自己的理解。这时最好有一个可以为所欲为的环境,也就是搭建IPFS私有网络。

    步骤

    1,准备多台服务器,这几台服务器之间网络互通(我是搭建各种集群习惯了,潜意识的准备了三台,其实没有raft选举之类的)

    2,安装ipfs。可以直接从ipfs官网下载tar包,解压后进入go-ipfs文件夹,执行install.sh即可。每个节点都要安装。

    3,在所有节点执行ipfs init来初始化各个节点,初始化之后会在自己的家目录下多一个隐藏目录: .ipfs。

    4,生成私有网络共享密钥并分发

          a,  go get github.com/Kubuxu/go-ipfs-swarm-key-gen/ipfs-swarm-key-gen

                ipfs-swarm-key-gen > ~/.ipfs/swarm.key

          b,  将该密钥拷贝到其他节点的相应位置

               scp ~/.ipfs/swarm.key <destnode>:~/.ipfs/swarm.key

    5,更改bootstrap节点(所有节点)。

          a, 移除默认所有的bootstrap节点

              ipfs bootstrap rm --all

         b, 指定bootstrap节点为私有网络中的某一节点,例如:     

              ipfs bootstrap add /ip4/192.168.0.1/tcp/4001/ipfs/QmSoLV4Bbm51jM9C4gDYZQ9Cy3U6aXMJDAbzgu2fzaDs64

    6,验证。

          a, 在各个节点,输入ipfs daemon,启动daemon程序,启动成功后会显示:Daemon is ready。

          b, 在任意一个节点,执行ipfs swarm peers会显示当前网络中只有私有节点。类似如下内容:

    7,双保险。(选做)

          如果还是不放心,可以将环境变量LIBP2P_FORCE_PNET设置为1,这个参数会强制IPFS使用私有网络,如果没有配置私有网络,那么ipfs daemon会启动失败。

    要点解析

        搭建私有网络的要点就是设置共享密钥和设置bootstrap节点。共享密钥界定了私有网络,而bootstrap节点定义了初始节点,根据DHT的原理,一个节点第一次加入到集群当中时候,他的哈希路由表是空的,需要指定bootstrap节点供其问询。通过指定私有网络的节点,将集群限定到私有网络中,防止路由表污染。
       

    相关文章

      网友评论

          本文标题:搭建IPFS私有网络

          本文链接:https://www.haomeiwen.com/subject/hehhwftx.html