0.1.0 • Published 2 years ago

hipr-sia v0.1.0

Weekly downloads
-
License
UNLICENSED
Repository
-
Last release
2 years ago

ipfs hipr resolver

resolves _ipfs hip5 protocol ns records (but recursively) using hipr. note this currently depends on sia gateways with volatile uptime, so it's not very usable --- ideally, it should resolve using a local sia node.

usage

hipr-ipfs is hipr middleware.

first install hipr, then you can run

hipr install hipr-ipfs
hipr hipr-ipfs 127.0.0.1:5333 1.1.1.1

this will start a recursive server on port 5333 capable of resolving zone files from sia using Cloudflare's public resolver as a stub resolver. If you want to resolve handshake names as well, and you are running hsd with an authoritative server on port 5349, then start hipr with

hipr hipr-ipfs 127.0.0.1:5333 127.0.0.1:5349

now, in a new shell

> dig @127.0.0.1 -p 5333 ipfs.chan0

; <<>> DiG 9.10.6 <<>> @127.0.0.1 -p 5333 ipfs.chan0
; (1 server found)
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 37019
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;ipfs.chan0.      IN  A

;; ANSWER SECTION:
ipfs.chan0.    3600  IN  A  66.42.108.201

;; Query time: 824 msec
;; SERVER: 127.0.0.1#5333(127.0.0.1)
;; WHEN: Sun Feb 20 15:45:03 EST 2022
;; MSG SIZE  rcvd: 58

edit index.js to use a custom hsd root nameserver and listen on a different port

example

i have a hip5 ns record

ipfs.chan0. 3600 IN NS ciqddyv5s4lxywtwm5jeosdsddjab4iu2llbdcwyrtkcsku33py3n4y._ipfs.

in my zone for the tld chan0, and the zone file

ipfs.chan0. 3600 IN A 66.42.108.201

pinned at ipfs://QmRhPDZ6DAnWKpzpt8tUwqNujS9uyZp69nDKF5Re9wrfdk.

ciqddyv5s4lxywtwm5jeosdsddjab4iu2llbdcwyrtkcsku33py3n4y is the base32 encoding of the cid QmRhPDZ6DAnWKpzpt8tUwqNujS9uyZp69nDKF5Re9wrfdk. you can use encode.js and decode.js for base32 encoding and decoding of base64-encoded skylinks.

> node encode QmRhPDZ6DAnWKpzpt8tUwqNujS9uyZp69nDKF5Re9wrfdk
ciqddyv5s4lxywtwm5jeosdsddjab4iu2llbdcwyrtkcsku33py3n4y

> node decode ciqddyv5s4lxywtwm5jeosdsddjab4iu2llbdcwyrtkcsku33py3n4y
QmRhPDZ6DAnWKpzpt8tUwqNujS9uyZp69nDKF5Re9wrfdk
0.1.0

2 years ago

0.1.3

2 years ago

0.1.2

2 years ago

0.1.1

2 years ago