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 ...
随机推荐
- 如何让golang的web服务热重载
有很多方法可以热重载 golang Web 应用程序或 golang 程序. 我选择gin(不是web gin框架)来进行热重载. 首先在 GOPATH/bin下安装gin,命令如下所示: go ge ...
- std::istringstream的用法
1.概要 std::istringstream 是 C++ 标准库中的一个类,它用于从字符串中提取数据,并将数据转换为不同的数据类型.它通常用于从字符串中解析数据,例如整数.浮点数等.以下是关于 st ...
- Docker导出镜像的总结
Docker导出镜像的总结 安装Docker mkdir -p /etc/docker cat >/etc/docker/daemon.josn <<EOF { "bip& ...
- [转帖]细说Redis监控和告警
https://blog.csdn.net/sD7O95O/article/details/78096956 对于任何应用服务和组件,都需要一套完善可靠谱监控方案.尤其redis这类敏感的纯内存.高并 ...
- [转帖]jar启动指定JDK/JRE 安装路径教程
https://blog.csdn.net/weixin_40986713/article/details/128136777 前言 因为疫情在家办公的缘故,有个老项目,需要改个接口,然后需要前端联调 ...
- 什么是根号?什么是 log ?
生日悖论是 \(O(\sqrt{n})\) 随机序列 LIS 是 \(O(\sqrt{n})\) 随机 \(\pm1\) 序列前缀和最大绝对值是 \(O(\sqrt{n})\) 证明 随机 Prufe ...
- css水平居中的5种几种方式
元素水平居中的第一种方式 子元素不需要宽度也可以 <div class="box"> <div class="son"> 我是内容 &l ...
- TienChin 渠道管理-查看渠道接口
自定义 hasPermission 校验规则 自定义一个 Spring Security hasPermission 校验规则: 在 tienchin-framework 模块当中进行自定义,新建 C ...
- 6.4 Windows驱动开发:内核枚举DpcTimer定时器
在操作系统内核中,DPC(Deferred Procedure Call)是一种延迟执行的过程调用机制,用于在中断服务例程(ISR)的上下文之外执行一些工作.DPC定时器是基于DPC机制的一种定时执行 ...
- 多路io复用epoll [补档-2023-07-20]
多路io- epoll 4-1简介 它是linux中内核实现io多路/转接复用的一个实现.(epoll不可跨平台,只能用于Linux)io多路转接是指在同一个操作里,同时监听多个输入输出源,在其中 ...