# Functions
CloseIdleConnections closes all idle connections after making detecting the IP addresses.
ExtractInterfaceAddr converts an address from [net.Interface.Addrs] to [netip.Addr].
ExtractUDPAddr converts an address from [net.Interface.Addrs] to [netip.Addr].
SelectInterfaceIP takes a list of [net.Addr] and choose the first reasonable IP (if any).
SharedRetryableSplitClient returns a [retryablehttp.Client] with the shared underlying [http.Client] that allows only the traffic of specified IP family.
SharedSplitClient returns the shared [http.Client] that allows only the traffic of specified IP family.
# Constants
The tags for the primary and alternative methods.
The tags for the primary and alternative methods.
The tags for the primary and alternative methods.
# Structs
DNSOverHTTPS represents a generic detection protocol using DNS over HTTPS.
DNSOverHTTPSParam is the parameter of a DNS-based IP provider.
HTTP represents a generic detection protocol to use an HTTP response directly.
LocalAuto detects the IP address by pretending to send out an UDP packet and using the source IP address assigned by the system.
LocalWithInterface detects the IP address by choosing the first "good" IP address assigned to a network interface.
Regexp represents a generic detection protocol to parse an HTTP response.
RegexpParam is the type of parameters for the Regexp provider for a specific IP network.
Switchable is a [Switch] that returns one of the given strings.
# Interfaces
Switch represents a string depending on the method.