• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

.gx/H30-Sep-2019-21

ci/H30-Sep-2019-21

madns/H30-Sep-2019-4537

.gitignoreH A D30-Sep-201913 21

.travis.ymlH A D30-Sep-2019394 3121

LICENSEH A D30-Sep-20191.1 KiB2217

README.mdH A D30-Sep-20191.7 KiB5842

dns.goH A D30-Sep-2019771 3014

go.modH A D30-Sep-2019110 63

go.sumH A D30-Sep-20192 KiB2120

resolve.goH A D30-Sep-20196.6 KiB270178

resolve_test.goH A D30-Sep-20196.3 KiB237204

README.md

1# go-multiaddr-dns
2
3> Resolve /dns4, /dns6, and /dnsaddr multiaddrs.
4
5```sh
6> madns /dnsaddr/ipfs.io/ipfs/QmSoLju6m7xTh3DuokvT3886QRYqxAzb1kShaanJgW36yx
7/ip4/104.236.151.122/tcp/4001/ipfs/QmSoLju6m7xTh3DuokvT3886QRYqxAzb1kShaanJgW36yx
8/ip6/2604:a880:1:20::1d9:6001/tcp/4001/ipfs/QmSoLju6m7xTh3DuokvT3886QRYqxAzb1kShaanJgW36yx
9/ip6/fc3d:9a4e:3c96:2fd2:1afa:18fe:8dd2:b602/tcp/4001/ipfs/QmSoLju6m7xTh3DuokvT3886QRYqxAzb1kShaanJgW36yx
10/dns4/jupiter.i.ipfs.io/tcp/4001/ipfs/QmSoLju6m7xTh3DuokvT3886QRYqxAzb1kShaanJgW36yx
11/dns6/jupiter.i.ipfs.io/tcp/4001/ipfs/QmSoLju6m7xTh3DuokvT3886QRYqxAzb1kShaanJgW36yx
12```
13
14
15In more detail:
16
17```sh
18> madns /dns6/example.net
19/ip6/2001:db8::a3
20/ip6/2001:db8::a4
21...
22
23> madns /dns4/example.net/tcp/443/wss
24/ip4/192.0.2.1/tcp/443/wss
25/ip4/192.0.2.2/tcp/443/wss
26
27# No-op if it's not a dns-ish address.
28
29> madns /ip4/127.0.0.1/tcp/8080
30/ip4/127.0.0.1/tcp/8080
31
32# /dnsaddr resolves by looking up TXT records.
33
34> dig +short TXT _dnsaddr.example.net
35"dnsaddr=/ip6/2001:db8::a3/tcp/443/wss/ipfs/Qmfoo"
36"dnsaddr=/ip6/2001:db8::a4/tcp/443/wss/ipfs/Qmbar"
37"dnsaddr=/ip4/192.0.2.1/tcp/443/wss/ipfs/Qmfoo"
38"dnsaddr=/ip4/192.0.2.2/tcp/443/wss/ipfs/Qmbar"
39...
40
41# /dnsaddr returns addrs which encapsulate whatever /dnsaddr encapsulates too.
42
43> madns example.net/ipfs/Qmfoo
44info: changing query to /dnsaddr/example.net/ipfs/Qmfoo
45/ip6/2001:db8::a3/tcp/443/wss/ipfs/Qmfoo
46/ip4/192.0.2.1/tcp/443/wss/ipfs/Qmfoo
47
48# TODO -p filters by protocol stacks.
49
50> madns -p /ip6/tcp/wss /dnsaddr/example.net
51/ip6/2001:db8::a3/tcp/443/wss/ipfs/Qmfoo
52/ip6/2001:db8::a4/tcp/443/wss/ipfs/Qmbar
53
54# TODO -c filters by CIDR
55> madns -c /ip4/104.236.76.0/ipcidr/24 /dnsaddr/example.net
56/ip4/192.0.2.2/tcp/443/wss/ipfs/Qmbar
57```
58