IPFS私有网络搭建总结
参考: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私有网络搭建总结的更多相关文章
- 利用 Docker 搭建 IPFS 私有网络
利用 Docker 搭建 IPFS 私有网络 本文原始地址:https://sitoi.cn/posts/40630.html 下载项目 项目地址:https://github.com/Sitoi/p ...
- HCL实验8:NAT搭建私有网络
NAT 通过NAT技术,进行私有网络的搭建 拓扑图 先对路由器的端口进行配置 R1 [H3C]sys R1 [R1]INT G0/0 [R1-GigabitEthernet0/0]ip address ...
- IPFS私链搭建及常用操作命令
1. 共享密钥 同一个IPFS私链内的所有节点必须共享同一个密钥才能加入. 首先我们使用密钥创建工具,创建一个密钥. 下载地址:https://github.com/Kubuxu/go-ipfs-sw ...
- openstack通过Network Namespace和iptables实现租户私有网络互訪和L3路由功能
安装架构介绍 本文旨在通过自己搭建类似neutron (openvswitch + gre) 实现SDN 的环境,学习了解其工作原理,模拟核心原理.比方:同一租户自己定义网络 instance 互通, ...
- 私有网络(VPC)概述
1 什么是私有网络(VPC) 私有网络是一块可用户自定义的网络空间,您可以在私有网络内部署云主机.负载均衡.数据库.Nosql快存储等云服务资源.您可自由划分网段.制定路由策略.私有网络可以配置公网网 ...
- UCloud 机房的网络搭建(计蒜客初赛第五场)
UCloud 刚刚建立一个新机房,近日正在进行网络搭建.机房内有 nn 台服务器和 mm 个分线器,整个机房只有一个网线出口.分线器的作用是将一根网线转换成多根网线.蒜头君也知道每个分线器输出的最大网 ...
- OpenStack 网络服务 Neutron 私有网络构建(十九)
本章内容基于之前提供者网络构建的基础上进行改动,之前文章参考如下: Openstack 网络服务 Neutron介绍和控制节点部署 (九) Openstack 网络服务 Neutron计算节点部署(十 ...
- Virtual Private Cloud 专有网络 软件定义网络的方式 私有网络 大流量视频、直播类业务
私有网络 VPC_云上网络空间_自定义网络 - 腾讯云 https://cloud.tencent.com/product/vpc 私有网络 VPC 简介 私有网络(Virtual Private C ...
- linux私有ftp搭建与创建新用户
一.私有ftp搭建 以后补充 1. 搭建 2.修改配置文件 二.创建新用户 在linux搭建好私有ftp后,默认存放目录是 /var/ftp/ 我们有时候需要给外部公司之类的用,但又不想让他们直接在 ...
随机推荐
- 吴裕雄--天生自然 JAVA开发学习: 循环结构
public class Test { public static void main(String args[]) { int x = 10; while( x < 20 ) { System ...
- android implementation 依赖第三方库
依赖第三方库
- 寒假day03-python
今天完成了毕设登录注册.填报等功能的界面优化,同时总结了python网络课程的部分知识点 1.修改jupyter notebook默认路径:进入cmd:(1)cd /d F:\(2)jupyter n ...
- block内存篇
本文目的:对Block内存问题更加了解 概念理解:一种数据类型或比较特殊的对象,相当于一个指向函数的指针,该指针指向一段封装代码,调用block块代码好比调用该指针指向的函数代码 block分类: N ...
- pandas在指定列插入数据
import pandas as pd import numpy as np df = pd.DataFrame(np.arange(15).reshape(5, 3), columns=['a', ...
- JavaWeb中的高级知识总结
知识结构图 文件下载 默认情况下,如果浏览器可以处理Content-Type响应头中指定数据类型,浏览器就会直接处理,比如显示出HTML页面(text/html),或者显示出照片(image/png) ...
- 数组,字符串方法总结 Unicode 数字
String.prototype.charCodeAt(index) 就是返回字符串中下标单个数值 对应的编码表的10进制表示数值 方法返回0到65535之间的整数,表示给定索引处的UTF-16代码 ...
- BZOJ4059[Cerc2012]Non-boring sequences(扫描线/分治)
这题正解应该是扫描线,就是发现DP的区间在两个维度都为连续段,于是可以直接扫描线.但不幸的是,扫描线常数过大,无法通过本题. 考虑分治.对于分治区间[l,r],可以记录pre和nxt表示其前/后一次出 ...
- jQuery ajax中的dataType——JSON和JSONP
引用:http://www.cnblogs.com/dowinning/archive/2012/04/19/json-jsonp-jquery.html [原创]说说JSON和JSONP,也许你会豁 ...
- apt GPG error
W: GPG error: http://extras.ubuntu.com trusty Release: The following signatures couldn't be verified ...