flare_mlake · API

flare.dns

DNS resolution via getaddrinfo(3).

Wraps the POSIX getaddrinfo syscall to resolve hostnames to IP addresses. Supports IPv4-only, IPv6-only, and dual-stack resolution.

Public API
from flare.dns import resolve, resolve_v4, resolve_v6
  • resolve(host) — All addresses (IPv4 + IPv6), ordered by OS preference.
  • resolve_v4(host) — IPv4-only results (AF_INET).
  • resolve_v6(host) — IPv6-only results (AF_INET6).

All functions raise DnsError (from flare.net) on lookup failure.

Example
from flare.dns import resolve, resolve_v4, resolve_v6

def main() raises:
    # All addresses
    for addr in resolve("example.com"):
        print(addr) # 93.184.216.34

    # IPv4 only
    var v4 = resolve_v4("localhost")
    print(v4[0]) # 127.0.0.1

    # IPv6 only
    var v6 = resolve_v6("localhost")
    print(v6[0]) # ::1