-
Notifications
You must be signed in to change notification settings - Fork 28
Commit cd289ff
authored
doc: dns example (#75)
```console
Libp2p/py-multiaddr-fork$ python examples/dns/trio_dns_examples.py
DNS Resolution Examples with Trio
==================================================
=== Basic DNS Resolution with Trio ===
Original address: /dns/example.com
Protocols: ['dns']
Resolved to 12 addresses:
1. /ip4/23.192.228.84
2. /ip4/23.215.0.136
3. /ip4/23.215.0.138
4. /ip4/96.7.128.175
5. /ip4/96.7.128.198
6. /ip4/23.192.228.80
7. /ip6/2600:1406:bc00:53::b81e:94c8
8. /ip6/2600:1406:bc00:53::b81e:94ce
9. /ip6/2600:1408:ec00:36::1736:7f24
10. /ip6/2600:1408:ec00:36::1736:7f31
11. /ip6/2600:1406:3a00:21::173e:2e65
12. /ip6/2600:1406:3a00:21::173e:2e66
=== Bootstrap Node Resolution with Trio ===
Resolving: /dnsaddr/github.com/p2p/QmNnooDu7bfjPFoTZYxMNLWUQJyrVwtbZg5gBMjTezGAJN
Peer ID: QmNnooDu7bfjPFoTZYxMNLWUQJyrVwtbZg5gBMjTezGAJN
Resolved to 1 addresses:
1. /ip4/140.82.121.3/p2p/QmNnooDu7bfjPFoTZYxMNLWUQJyrVwtbZg5gBMjTezGAJN
Resolving: /dnsaddr/cloudflare.com/p2p/QmNnooDu7bfjPFoTZYxMNLWUQJyrVwtbZg5gBMjTezGAJN
Peer ID: QmNnooDu7bfjPFoTZYxMNLWUQJyrVwtbZg5gBMjTezGAJN
Resolved to 1 addresses:
1. /ip4/104.16.132.229/p2p/QmNnooDu7bfjPFoTZYxMNLWUQJyrVwtbZg5gBMjTezGAJN
Resolving: /dnsaddr/google.com/p2p/QmNnooDu7bfjPFoTZYxMNLWUQJyrVwtbZg5gBMjTezGAJN
Peer ID: QmNnooDu7bfjPFoTZYxMNLWUQJyrVwtbZg5gBMjTezGAJN
Resolved to 1 addresses:
1. /ip4/142.250.184.206/p2p/QmNnooDu7bfjPFoTZYxMNLWUQJyrVwtbZg5gBMjTezGAJN
=== DNS Protocol Comparison with Trio ===
Testing DNS (both IPv4 and IPv6): /dns/example.com
Resolved to 12 addresses:
1. /ip4/23.215.0.138
2. /ip4/96.7.128.175
3. /ip4/96.7.128.198
4. /ip4/23.192.228.80
5. /ip4/23.192.228.84
6. /ip4/23.215.0.136
7. /ip6/2600:1406:bc00:53::b81e:94ce
8. /ip6/2600:1408:ec00:36::1736:7f24
9. /ip6/2600:1408:ec00:36::1736:7f31
10. /ip6/2600:1406:3a00:21::173e:2e65
11. /ip6/2600:1406:3a00:21::173e:2e66
12. /ip6/2600:1406:bc00:53::b81e:94c8
Testing DNS4 (IPv4 only): /dns4/example.com
Resolved to 6 addresses:
1. /ip4/96.7.128.198
2. /ip4/23.192.228.80
3. /ip4/23.192.228.84
4. /ip4/23.215.0.136
5. /ip4/23.215.0.138
6. /ip4/96.7.128.175
Testing DNS6 (IPv6 only): /dns6/example.com
Resolved to 6 addresses:
1. /ip6/2600:1406:bc00:53::b81e:94ce
2. /ip6/2600:1408:ec00:36::1736:7f24
3. /ip6/2600:1408:ec00:36::1736:7f31
4. /ip6/2600:1406:3a00:21::173e:2e65
5. /ip6/2600:1406:3a00:21::173e:2e66
6. /ip6/2600:1406:bc00:53::b81e:94c8
Testing DNSADDR (both IPv4 and IPv6): /dnsaddr/example.com
Resolved to 12 addresses:
1. /ip4/96.7.128.175
2. /ip4/96.7.128.198
3. /ip4/23.192.228.80
4. /ip4/23.192.228.84
5. /ip4/23.215.0.136
6. /ip4/23.215.0.138
7. /ip6/2600:1406:bc00:53::b81e:94ce
8. /ip6/2600:1408:ec00:36::1736:7f24
9. /ip6/2600:1408:ec00:36::1736:7f31
10. /ip6/2600:1406:3a00:21::173e:2e65
11. /ip6/2600:1406:3a00:21::173e:2e66
12. /ip6/2600:1406:bc00:53::b81e:94c8
=== Peer ID Preservation Test with Trio ===
Original address: /dnsaddr/example.com/p2p/QmNnooDu7bfjPFoTZYxMNLWUQJyrVwtbZg5gBMjTezGAJN
Original peer ID: QmNnooDu7bfjPFoTZYxMNLWUQJyrVwtbZg5gBMjTezGAJN
Resolved to 1 addresses:
1. /ip4/23.215.0.136/p2p/QmNnooDu7bfjPFoTZYxMNLWUQJyrVwtbZg5gBMjTezGAJN
Peer ID: QmNnooDu7bfjPFoTZYxMNLWUQJyrVwtbZg5gBMjTezGAJN
Peer ID preserved: True
=== Sequential DNS Resolution with Trio ===
/dns/example.com:
Resolved to 12 addresses:
- /ip4/96.7.128.175
- /ip4/96.7.128.198
- /ip4/23.192.228.80
- /ip4/23.192.228.84
- /ip4/23.215.0.136
- /ip4/23.215.0.138
- /ip6/2600:1406:bc00:53::b81e:94ce
- /ip6/2600:1408:ec00:36::1736:7f24
- /ip6/2600:1408:ec00:36::1736:7f31
- /ip6/2600:1406:3a00:21::173e:2e65
- /ip6/2600:1406:3a00:21::173e:2e66
- /ip6/2600:1406:bc00:53::b81e:94c8
/dns4/example.com:
Resolved to 6 addresses:
- /ip4/23.192.228.84
- /ip4/23.215.0.136
- /ip4/23.215.0.138
- /ip4/96.7.128.175
- /ip4/96.7.128.198
- /ip4/23.192.228.80
/dns6/example.com:
Resolved to 6 addresses:
- /ip6/2600:1408:ec00:36::1736:7f24
- /ip6/2600:1408:ec00:36::1736:7f31
- /ip6/2600:1406:3a00:21::173e:2e65
- /ip6/2600:1406:3a00:21::173e:2e66
- /ip6/2600:1406:bc00:53::b81e:94c8
- /ip6/2600:1406:bc00:53::b81e:94ce
/dnsaddr/example.com:
Resolved to 12 addresses:
- /ip4/96.7.128.175
- /ip4/96.7.128.198
- /ip4/23.192.228.80
- /ip4/23.192.228.84
- /ip4/23.215.0.136
- /ip4/23.215.0.138
- /ip6/2600:1406:3a00:21::173e:2e65
- /ip6/2600:1406:3a00:21::173e:2e66
- /ip6/2600:1406:bc00:53::b81e:94c8
- /ip6/2600:1406:bc00:53::b81e:94ce
- /ip6/2600:1408:ec00:36::1736:7f24
- /ip6/2600:1408:ec00:36::1736:7f31
=== py-libp2p Integration Example ===
Processing bootstrap node: QmNnooDu7bfjPFoTZYxMNLWUQJyrVwtbZg5gBMjTezGAJN
Processing bootstrap node: QmNnooDu7bfjPFoTZYxMNLWUQJyrVwtbZg5gBMjTezGAJN
Processing bootstrap node: QmNnooDu7bfjPFoTZYxMNLWUQJyrVwtbZg5gBMjTezGAJN
Resolved 0 bootstrap peers:
==================================================
All examples completed!
Summary:
- DNS resolution is working correctly with trio
- Real domains are being resolved to IP addresses
- Peer IDs are preserved during resolution
- All DNS protocols (/dns/, /dns4/, /dns6/, /dnsaddr/) are functional
- Ready for integration with py-libp2p
```1 parent dcdfab4 commit cd289ffCopy full SHA for cd289ff
File tree
Expand file treeCollapse file tree
1 file changed
+507
-0
lines changedFilter options
- examples/dns
Expand file treeCollapse file tree
1 file changed
+507
-0
lines changed
0 commit comments