IPNS和DNSLink的使用说明
IPNS和DNSLink的使用说明
IPNS说明
IPNS全称InterPlanetary Name System,就是IPFS下的一个名称解析系统,类似于互联网的DNS,但是与DNS不同的是,IPNS是由节点自己维护的。
- 一个IPNS解析后会得到一串文本,里面是IPFS地址。
- 一个IPNS Name,对应了一个ID,一对密钥和一个本地的key name。
- 每个运行中的IPFS节点,都有一个默认的IPNS Name,其key name就是self,其ID等于自己的PeerID,其密钥对就是节点的密钥对
IPNS使用
一个节点通过ipfs key gen命令可以创建无数个IPNS Name
ipfs key gen --type=rsa --size=2048 keyname
外界可以通过网关访问到IPNS对应的内容,例如
https://ipfs.io/ipns/QmeJHrUbuLEwB4YGw58ELE5BZYFw2zM6CsoZLxRQd8NZiL/
(所以在设置nginx转发的时候,记得除了要转发/ipfs,还要转发/ipns)
将IPFS内容发布到IPNS,通过ipfs name publish命令,例如
# 将IPFS CID发布到节点默认IPNS Name
ipfs name publish /ipfs/QmatmE9msSfkKxoffpHwNLNKgwZG8eT9Bud6YoPab52vpy
# 将CID发布到其他IPNS Name,需要加上--key=xxx 参数,其值可以是key name,也可以是hash
ipfs name publish --key=mykey /ipfs/QmatmE9msSfkKxoffpHwNLNKgwZG8eT9Bud6YoPab52vpy
注意:这个命令的执行时间很长,在使用--enable-namesys-pubsub参数的情况下,需要50秒左右,在未使用该参数的情况下,需要两到三分钟。
DNSLink说明
DNSLink的介绍 https://dnslink.io/
这个技术简单地说, 就是让软件访问目标域名 A.COM 的时候, 自动去读取 _dnslink.A.COM 这个TXT记录, 通过这个TXT记录得到的地址信息去加载对应的页面.
DNSLink的使用
使用DNSLink, 需要一个可用的域名, 在域名(或二级域名)上添加一个高一级的记录, 名称为 _dnslink, 类型为 TXT, 值为为 dnslink=/ipfs/bafybeiejgrxo4p4uofgfzvlg5twrg5w7tfwpf7aciiswfacfbdpevg2xfy 或者 dnslink=/ipfs/QmaHbGR2PQwtAPL4BcbjuS2RkPsWxnhc2fGWx9fKoNSxnD, 注意这里值前面没有下划线.
添加好之后, 可以使用以下的命令来查看添加的结果(如果没设置成功, 可以用这些手段检查是哪里出问题了)
# 检查域名解析的TXT值是否正确
dig +short TXT _dnslink.libp2p.io
# 可以指定使用那个NS服务器来检查
dig @8.8.8.8 +short TXT _dnslink.libp2p.io
# 检查ipfs的解析结果是否正确
ipfs resolve -r /ipns/libp2p.io
# 检查ipfs解析的结果, 这个地址对应的内容
ipfs ls /ipns/libp2p.io
这些都没问题后, 就可以从浏览器访问了, 访问地址格式为 http://网关地址/ipns/libp2p.io, 例如
https://ipfs.drink.cafe/ipns/libp2p.io
将来有新内容发布时, 只需要更新_dnslink.libp2p.io 的TXT值.
IPNS和DNSLink的使用说明的更多相关文章
- IPFS星际节点网站 IPNS域名解析教程
IPNS星际文件系统IPFS提供的域名命名空间,相当于经典HTTP协议中的DNS.只不过是,IPNS是将内容寻址的哈希值(HASH值)转换为域名,而DNS是将IP地址转换为域名. 前段时间,IPFS协 ...
- 使用ipns 解决ipfs 内容更新的问题
ipds 可以使用dnslink 解决域名访问的问题,但是内容变更我们就会有新的hashid 解决方法我们可以使用ipns ,同时解决dnslink 解决域名的问题 环境准备 docker-compo ...
- 使用ipns 为ipfs 系统自定义域名
ipns 可以帮助我们进行寻址操作,但是默认的hashid 还是太长,不好记忆,ipns 同时也支持 基于域名的解析,我们添加txt 记录就可以方便的解决ipfs 文件访问地址难记的问题,使用的是 一 ...
- IPFS学习-IPNS
星际名称系统(IPNS)是一个创建个更新可变的链接到IPFS内容的系统,由于对象在IPFS中是内容寻址的,他们的内容变化将导致地址随之变化.对于多变的事物是有用的.但是很难获取某些内容的最新版本. 在 ...
- Atitit.项目修改补丁打包工具 使用说明
Atitit.项目修改补丁打包工具 使用说明 1.1. 打包工具已经在群里面.打包工具.bat1 1.2. 使用方法:放在项目主目录下,执行即可1 1.3. 打包工具的原理以及要打包的项目列表1 1. ...
- awk使用说明
原文地址:http://www.cnblogs.com/verrion/p/awk_usage.html Awk使用说明 运维必须掌握的三剑客工具:grep(文件内容过滤器),sed(数据流处理器), ...
- “我爱背单词”beta版发布与使用说明
我爱背单词BETA版本发布 第二轮迭代终于画上圆满句号,我们的“我爱背单词”beta版本已经发布. Beta版本说明 项目名称 我爱背单词 版本 Beta版 团队名称 北京航空航天大学计算机学院 拒 ...
- Oracle 中 union 和union all 的简单使用说明
1.刚刚工作不久,经常接触oracle,但是对oracle很多东西都不是很熟.今天我们来了解一下union和union all的简单使用说明.Union(union all): 指令的目的是将两个 S ...
- Map工具系列-02-数据迁移工具使用说明
所有cs端工具集成了一个工具面板 -打开(IE) Map工具系列-01-Map代码生成工具说明 Map工具系列-02-数据迁移工具使用说明 Map工具系列-03-代码生成BySQl工具使用说明 Map ...
- Map工具系列-03-代码生成BySQl工具使用说明
所有cs端工具集成了一个工具面板 -打开(IE) Map工具系列-01-Map代码生成工具说明 Map工具系列-02-数据迁移工具使用说明 Map工具系列-03-代码生成BySQl工具使用说明 Map ...
随机推荐
- Laravel - 模板中的url
<!-- 1, url --> <a href="{{url('/')}}">跳转到主页</a> <!-- 2,action 方法 ...
- [转帖]Redis优化:Redis使用TCMalloc提高内存分配性能
TCMalloc(Thread-Caching Malloc)是google开发的开源工具──"google-perftools"中的成员.与标准的glibc库的malloc相比, ...
- [转帖]RabbitMQ学习笔记:内置Prometheus支持rabbit_prometheus插件
从3.8.0开始,RabbitMQ提供内置的Prometheus和Grafana支持. rabbitmq_prometheus插件中提供了对Prometheus指标收集的支持.该插件以Promethe ...
- [转帖]PostgreSQL 10.0 preview 功能增强 - 国际化功能增强,支持ICU(International Components for Unicode)
https://developer.aliyun.com/article/72935 标签 PostgreSQL , 10.0 , International Components for Unico ...
- Redis scan等命令的学习与研究
Redis scan等命令的学习与研究 摘要 背景跟前几天说的一个问题类似. 为了验证自己的设想, 所以晚上继续写脚本进行了一轮次的验证. 不过上次讨论时,打击好像都没听懂我说的 所以这次准备从基础开 ...
- K8S多节点情况下使用nginx负载ingress或者是istio域名服务的处理
K8S多节点情况下使用nginx负载ingress或者是istio域名服务的处理 背景 公司内部有一个自建的K8S测试集群.同事这边使用istio或者是ingress发布了一个域名服务. 公司这边的D ...
- [转载]关于NSA的EternalBlue(永恒之蓝) ms17-010漏洞利用
2017年5月19日 感谢原作者:http://www.cnblogs.com/cnbluerain/ 好久没有用这个日志了,最近WannaCry横行,媒体铺天盖地的报道,我这 ...
- 学习React中的jsx-保证你看的明明白白
安装react的脚手架 1==>行 npx create-react-app myreactdemo01 解释一下: npx create-react-app 你的项目名称 npx create ...
- IDM(最佳的Windows下载工具)
如果你是一名互联网"老司机",那么一定听过「IDM」这款下载工具的大名!它的全名叫做 Internet Download Manager (互联网下载管理器),缩写就是 IDM. ...
- Python中局部放大图案例
例子一: 先上完整代码和效果图: import numpy as np import matplotlib.pyplot as plt from mpl_toolkits.axes_grid1.ins ...