Skip to content

Commit cd289ff

Browse files
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 cd289ff

File tree

1 file changed

+507
-0
lines changed

1 file changed

+507
-0
lines changed

0 commit comments

Comments
 (0)