参考:https://mp.weixin.qq.com/s/IKcXAjcX_BxI4siBeVsJUw

测试环境

节点A、B、C为局域网内三台部署了IPFS的节点,A为win7,B为Redhat Linux,C为Ubuntu系统。

私有网络所有的节点必须共享同一个密钥,注意不要忘记这一点。

搭建步骤

1、生成密钥:

密钥生成工具的安装下载使用go,假设已经准备好go环境。在go工程目录下执行如下三个命令:

go get -u github.com/Kubuxu/go-ipfs-swarm-key-gen/ipfs-swarm-key-gen  //下载密钥生成工具源码

go build github.com/Kubuxu/go-ipfs-swarm-key-gen/ipfs-swarm-key-gen/main.go  //编译得到main.exe

main.exe > swarm.key  //执行得到密钥文件swarm.key

将密钥文件swarm.key分别拷贝到A、B、C节点的配置目录~/.ipfs/下,swarm.key内容如下:

2、添加启动节点

ipfs init后的默认启动节点是连接ipfs公网的节点,如果要连接私有网络,需在每一个节点删除原来的默认启动节点,然后增加私有网络的启动节点。

ipfs bootstrap rm --all  //删除所有原启动节点

在A、B、C节点中分别设置启动节点,可以是A、B、C中任何一个,最好选择拥有固定IP的节点。

ipfs bootstrap add /ip4/[A的IP]/tcp/4001/ipfs/QmUpwjfX6gedCEeh6ncRfshXnDuwSbvZh1uXpriMy1kFnH

设置完成后,启动ipfs节点(ipfs daemon),查看修改后的bootstrap如下:

3、查看各节点连接情况

A节点:

B节点:

C节点:

我们发现三个节点相互链接在了一起,这就是搭建好的私有ipfs网络。其他IPFS节点必须拥有相同的swarm.key文件才能加入这个私有网络。

4、下载速度测试

使用地图瓦片文件做测试,瓦片在A节点发布,在B节点获取该Z15文件夹耗时4m3s。

B节点下载完成后在C节点获取该文件夹,耗时12s。

这是由于C节点会从A、B节点同时获取Z15文件夹所需要的文件,IPFS将文件分块存储,A、B可同时提供各文件块,单个大文件会被拆分为多个二进制块。

IPFS私有网络搭建总结的更多相关文章

  1. 利用 Docker 搭建 IPFS 私有网络

    利用 Docker 搭建 IPFS 私有网络 本文原始地址:https://sitoi.cn/posts/40630.html 下载项目 项目地址:https://github.com/Sitoi/p ...

  2. HCL实验8:NAT搭建私有网络

    NAT 通过NAT技术,进行私有网络的搭建 拓扑图 先对路由器的端口进行配置 R1 [H3C]sys R1 [R1]INT G0/0 [R1-GigabitEthernet0/0]ip address ...

  3. IPFS私链搭建及常用操作命令

    1. 共享密钥 同一个IPFS私链内的所有节点必须共享同一个密钥才能加入. 首先我们使用密钥创建工具,创建一个密钥. 下载地址:https://github.com/Kubuxu/go-ipfs-sw ...

  4. openstack通过Network Namespace和iptables实现租户私有网络互訪和L3路由功能

    安装架构介绍 本文旨在通过自己搭建类似neutron (openvswitch + gre) 实现SDN 的环境,学习了解其工作原理,模拟核心原理.比方:同一租户自己定义网络 instance 互通, ...

  5. 私有网络(VPC)概述

    1 什么是私有网络(VPC) 私有网络是一块可用户自定义的网络空间,您可以在私有网络内部署云主机.负载均衡.数据库.Nosql快存储等云服务资源.您可自由划分网段.制定路由策略.私有网络可以配置公网网 ...

  6. UCloud 机房的网络搭建(计蒜客初赛第五场)

    UCloud 刚刚建立一个新机房,近日正在进行网络搭建.机房内有 nn 台服务器和 mm 个分线器,整个机房只有一个网线出口.分线器的作用是将一根网线转换成多根网线.蒜头君也知道每个分线器输出的最大网 ...

  7. OpenStack 网络服务 Neutron 私有网络构建(十九)

    本章内容基于之前提供者网络构建的基础上进行改动,之前文章参考如下: Openstack 网络服务 Neutron介绍和控制节点部署 (九) Openstack 网络服务 Neutron计算节点部署(十 ...

  8. Virtual Private Cloud 专有网络 软件定义网络的方式 私有网络 大流量视频、直播类业务

    私有网络 VPC_云上网络空间_自定义网络 - 腾讯云 https://cloud.tencent.com/product/vpc 私有网络 VPC 简介 私有网络(Virtual Private C ...

  9. linux私有ftp搭建与创建新用户

    一.私有ftp搭建 以后补充 1. 搭建 2.修改配置文件 二.创建新用户 在linux搭建好私有ftp后,默认存放目录是 /var/ftp/ 我们有时候需要给外部公司之类的用,但又不想让他们直接在  ...

随机推荐

  1. 计蒜客 密码锁(BFS)

    https://www.jisuanke.com/course/1797/121114 Description 现在一个紧急的任务是打开一个密码锁.密码由四位数字组成,每个数字从 1 到 9 进行编号 ...

  2. 图论模型--dijstra算法和floyd算法

    matlab代码实现:https://blog.csdn.net/weixin_40108753/article/details/81237585 python代码实现:

  3. 零相关|回归|相关|相关系数|回归解释相关|r判断相关性|相关系数的区间估计|数据类型|非线性回归

    零相关是什么? 零相关亦称“不相关”.相关的一种.两个变量的相关系数r=0时的相关.零相关表示两个变量非线性相关,这时两个变量可能相互独立,也可能曲线相关.对于正态变量,两个变量零相关与两个变量相互独 ...

  4. js分页的一些思考

    一两年之前在写java的时候,分页的逻辑是写在后端的,用java去实现,jsp是动态展示页码和数据.但是对于一个用ajax加载的分页数据来说,分页的逻辑必须也在前端完成,那么就不得不去思考一下在js里 ...

  5. caffe不同lr_policy参数设置方法

    fixed 参数: base_lr: 0.01 lr_policy: "fixed" max_iter: 400000 step 参数: base_lr: 0.01 lr_poli ...

  6. osi七层模型专题

    OSI模型,即开放式通信系统互联参考模型,是国际标准化组织提出的一个试图是各种计算机或者通信系统在世界范围内互联为网络的标准框架.整个模型分为七层,物理层,数据链路层,网络层,传输层,会话层,表示层, ...

  7. 【iOS学习笔记】UITextField中的输入检测——限制只能输入数字和小数点

    最近趁着放假时间,在看The Big Nerd Ranch的iOS编程,想着重新复习一遍iOS开发的基础知识 于是从这一篇开始记录一些学习过程中遇到的小问题 书中第四章有一个温度转换的app实现,整体 ...

  8. linux下别名的设定

    命令别名设定功能: (alias)假如我需要知道这个目录底下的所有文件 (包含隐藏档) 及所有的文件属性,那么我就必须要下达『 ls -al 』这样的指令串,比较麻烦,我们可以为其设定别名为lm al ...

  9. Python语言学习前提:条件语句

    一.条件语句 1.条件语句:通过一条或多条语句的执行结果(True或False)来决定执行额代码块.python程序语言指定任何非0或非空(null)的值为true,0或null为false. 2. ...

  10. Codeforces 1295E Permutation Separation

    题目链接 link Solution 暴力一眼就可以看出来,枚举分界点,然后左右两边统计答案即可,但复杂度是我们无法接受的 然后我们看我们可以优化哪一部分 \(1^0\) 枚举:这部分没有办法优化 \ ...