Skip to content

Commit ebe9cfb

Browse files
committed
feat: DNSADDR adding docs
1 parent 5364f37 commit ebe9cfb

File tree

3 files changed

+75
-8
lines changed

3 files changed

+75
-8
lines changed

README.rst

Lines changed: 31 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
**This project is no longer maintained and has been archived.**
2-
31
py-multiaddr
42
==========================
53

@@ -98,6 +96,37 @@ Multiaddr allows expressing tunnels very nicely.
9896
print(proxyAgain)
9997
# /ip4/10.20.30.40/tcp/443
10098
99+
DNS Resolution
100+
-------------
101+
102+
Multiaddr supports DNS-based address resolution using the DNSADDR protocol.
103+
104+
105+
.. code-block:: python
106+
107+
from multiaddr import Multiaddr
108+
109+
# Create a DNSADDR multiaddr
110+
ma = Multiaddr("/dnsaddr/example.com")
111+
112+
# Resolve to actual IP addresses
113+
resolved = await ma.resolve()
114+
print(resolved)
115+
# [Multiaddr("/ip4/93.184.216.34"), Multiaddr("/ip6/2606:2800:220:1:248:1893:25c8:1946")]
116+
117+
# DNSADDR with peer ID
118+
ma_with_peer = Multiaddr("/dnsaddr/example.com/p2p/QmYyQSo1c1Ym7orWxLYvCrM2EmxFTANf8wXmmE7wjh53Qk")
119+
resolved_with_peer = await ma_with_peer.resolve()
120+
print(resolved_with_peer)
121+
# [Multiaddr("/ip4/93.184.216.34/p2p/QmYyQSo1c1Ym7orWxLYvCrM2EmxFTANf8wXmmE7wjh53Qk")]
122+
123+
# Using the DNS resolver directly
124+
from multiaddr.resolvers import DNSResolver
125+
resolver = DNSResolver()
126+
resolved = await resolver.resolve(ma)
127+
print(resolved)
128+
# [Multiaddr("/ip4/93.184.216.34"), Multiaddr("/ip6/2606:2800:220:1:248:1893:25c8:1946")]
129+
101130
Maintainers
102131
===========
103132

docs/multiaddr.resolvers.rst

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
multiaddr.resolvers package
2+
===========================
3+
4+
Submodules
5+
----------
6+
7+
multiaddr.resolvers.base module
8+
-------------------------------
9+
10+
.. automodule:: multiaddr.resolvers.base
11+
:members:
12+
:undoc-members:
13+
:show-inheritance:
14+
15+
multiaddr.resolvers.dns module
16+
------------------------------
17+
18+
.. automodule:: multiaddr.resolvers.dns
19+
:members:
20+
:undoc-members:
21+
:show-inheritance:
22+
23+
24+
Module contents
25+
---------------
26+
27+
.. automodule:: multiaddr.resolvers
28+
:members:
29+
:undoc-members:
30+
:show-inheritance:

docs/multiaddr.rst

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,21 @@
11
multiaddr package
22
=================
33

4+
Subpackages
5+
-----------
6+
7+
.. toctree::
8+
9+
multiaddr.codecs
10+
multiaddr.resolvers
11+
412
Submodules
513
----------
614

7-
multiaddr.codec module
8-
----------------------
15+
multiaddr.exceptions module
16+
---------------------------
917

10-
.. automodule:: multiaddr.codec
18+
.. automodule:: multiaddr.exceptions
1119
:members:
1220
:undoc-members:
1321
:show-inheritance:
@@ -28,10 +36,10 @@ multiaddr.protocols module
2836
:undoc-members:
2937
:show-inheritance:
3038

31-
multiaddr.util module
32-
---------------------
39+
multiaddr.transforms module
40+
---------------------------
3341

34-
.. automodule:: multiaddr.util
42+
.. automodule:: multiaddr.transforms
3543
:members:
3644
:undoc-members:
3745
:show-inheritance:

0 commit comments

Comments
 (0)