update manpage on wiki

Signed-off-by: Sam Therapy <sam@samtherapy.net>
Sam Therapy 2022-12-27 21:09:20 +01:00
parent 777e4ebd78
commit ab0ac7e0bd
Signed by: sam
GPG key ID: 4D8B07C18F31ACBD

344
awl.1.md

@ -27,47 +27,22 @@ nameserver. If one cannot be found, **awl** will query the localhost.
# OPTIONS
Anything in \[brackets\] is optional. Many options are inherited from
**dig**(1).
**-4**
**-D**, **--dnssec**, **+dnssec**, **+do**
> Force only IPv4
> Enable DNSSEC. This needs to be manually enabled.
**-6**
**-v**\[=*int*\]
> Force only IPv6
> Set verbosity Accepted values are as follows:
>
> - *0*: Only log errors.
>
> - *1*: Log warnings. **This is the default.**
>
> - *2*: Log information **Default when specifying just** *-v*.
>
> - *3*: Log information useful for debugging.
>
> Setting a value lower than 0 disables logging entirely.
>
> By default, specifying just **-v** sets the verbosity to 2 (info).
**-c**, **--class** *class*
**-V**
> Print the version and exit.
> DNS class to query (eg. IN, CH) The default is IN.
**-h**
> Show a "short" help message.
## Query Options
**-4**
> Only make query over IPv4
**-6**
> Only make query over IPv6
**-p**, **--port** **port**
> Sets the port to query. Default ports listed below.
@ -80,33 +55,176 @@ Anything in \[brackets\] is optional. Many options are inherited from
**-q**, **--query** *domain*
> Domain to query (eg. example.com)
**-c**, **--class** *class*
> DNS class to query (eg. IN, CH) The default is IN.
> Explicitly set a domain to query (eg. example.com)
**-t**, **--qType** *type*
> DNS type to query (eg. A, AAAA, NS) The default is A.
> Explicitly set a DNS type to query (eg. A, AAAA, NS) The default is A.
**-v**\[=*int*\]
> Set verbosity of output Accepted values are as follows:
>
> - *0*: Only log errors.
>
> - *1*: Log warnings. **This is the default.**
>
> - *2*: Log information **Default when specifying just** *-v*.
>
> - *3*: Log information useful for debugging.
>
> Setting a value lower than 0 disables logging entirely.
>
> By default, specifying just **-v** sets the verbosity to 2 (info).
**-x**, **--reverse**
> Do a reverse lookup. Sets default **type** to PTR. **awl**
> automatically makes an IP or phone number canonical.
**-V**
> Print the version and exit.
# QUERY OPTIONS
Anything in \[brackets\] is optional. Many options are inherited from
**dig**(1).
**--aa**\[=*bool*\], **+**\[no\]**aaflag**, **+**\[no\]**aaonly**
> Sets the AA (Authoritative Answer) flag.
**--ad**\[=*bool*\], **+**\[no\]**adflag**
> Sets the AD (Authenticated Data) flag.
**--no-additional**, **+**\[no\]**additional**
> Toggle the display of the Additional section.
**--no-answer**, **+**\[no\]**answer**
> Toggle the display of the Answer section.
**--no-authority**, **+**\[no\]**authority**
> Toggle the display of the Authority section.
**--no-bad-cookie**, **+**\[no\]**badcookie**
> \[Do not\] ignore BADCOOKIE responses
**--buffer-size** *int*, **+bufize**=*int*
> Set the UDP message buffer size, using EDNS. Max is 65535, minimum is
> zero. The default value is 1232.
**--cd**\[=*bool*\], **+**\[no\]**cdflag**
> (Set, Unset) CD (Checking Disabled) flag.
**--no-cookie**, **+**\[no\]**cookie**\[=*string*\]
> Send an EDNS cookie. This is enabled by default with a random string.
**-D**, **--dnssec**, **+dnssec**, **+do**
> Request DNSSEC records as well. This sets the DNSSEC OK bit (DO)
**--dnscrypt**, **+**\[no\]**dnscrypt**
> Use DNSCrypt.
**--expire**. **+**\[no\]**expire**
> Send an EDNS Expire.
**--edns-ver**, **+edns**\[=*int*\]
> Enable EDNS and set EDNS version. The maximum value is 255, and the
> minimum (default) value is 0.
**--no-edns**, **+noedns**
> Disable EDNS.
**-H**, **--https**, **+**\[no\]**https**\[=*endpoint*\],
**+**\[no\]**https-post**\[=*endpoint*\]
> Use DNS-over-HTTPS (see RFC 8484). The default endpoint is
> */dns-query*
**+**\[no\]**https-get**\[=*endpoint*\]
> Use an HTTP GET instead of an HTTP POST when making a DNS-over-HTTPS
> query.
**+**\[no\]**idnout**
> Converts \[or leaves\] punycode on output. Input is automatically
> translated to punycode.
**--no-truncate**, **+ignore**
> Ignore UDP truncation (by default, awl **retries with TCP**).
**--no-bad-cookie**, **+\[no\]badcookie**
**-j**, **--json**, **+**\[no\]**json**
> \[Do not\] ignore BADCOOKIE responses
> Print the query results as JSON. The result is **not** in compliance
> with RFC 8427.
**--tcp**, **+\[no\]tcp**, **+\[no\]vc**
**--keep-alive**, **+**\[no\]**keepalive**, **+**\[no\]**keepopen**
> Send an EDNS keep-alive. This does nothing unless using TCP.
**--nsid**, **+**\[no\]**nsid**
> Send an EDNS name server ID request.
**--qr**\[=*bool*\], **+**\[no\]**qrflag**
> Sets the QR (QueRy) flag.
**--no-question**, **+**\[no\]**question**
> Toggle the display of the Question section.
**-Q**. **--quic**, **+**\[no\]**quic**
> Use DNS-over-QUIC (see RFC 9250).
**-s**, **--short**, **+**\[no\]**short**
> Print just the address of the answer.
**--no-statistics**, **+**\[no\]**stats**
> Toggle the display of the Statistics (additional comments) section.
**--subnet** *ip*\[*/prefix*\],
**+**\[no\]**subnet**\[=*ip*\[*/prefix*\]\]
> Send an EDNS Client Subnet option with the specified address.
>
> Like **dig**(1), setting the IP to *0.0.0.0/0*, *::/0* or *0* will
> signal the resolver to not use any client information when returning
> the query.
**--tc**\[=*bool*\], **+**\[no\]**tcflag**
> Sets the TC (TrunCated) flag
**--tcp**, **+**\[no\]**tcp**, **+**\[no\]**vc**
> Use TCP for the query (see RFC 7766).
**--dnscrypt**, **+\[no\]dnscrypt**
**--timeout** *seconds*, **+timeout**=*seconds*
> Use DNSCrypt.
> Set the timeout period. Floating point numbers are accepted. 0.5
> seconds is the minimum.
**-T**, **--tls**, **+\[no\]tls**
**-T**, **--tls**, **+**\[no\]**tls**
> Use DNS-over-TLS, implies **--tcp** (see RFC 7858)
@ -119,153 +237,33 @@ Anything in \[brackets\] is optional. Many options are inherited from
> Ignore TLS validation when performing a DNS query.
**-H**. **--https**, **+\[no\]https**
**--trace**, **+trace**
> Use DNS-over-HTTPS (see RFC 8484).
**-Q**. **--quic**, **+\[no\]quic**
> Use DNS-over-QUIC (see RFC 9250).
**-x**, **--reverse**
> Do a reverse lookup. Sets default **type** to PTR. **awl**
> automatically makes an IP or phone number canonical.
**--timeout** *seconds*, **+timeout**=*seconds*
> Set the timeout period. Floating point numbers are accepted. 0.5
> seconds is the minimum.
> Trace the path of the query from the root, acting like its own
> resolver. This option enables DNSSEC. When **@server** is specified,
> this will only affect the initial query.
**--retries** *int*, **+tries**=*int*, **+retry**=*int*
> Set the number of retries. Retry is one more than tries, dig style.
## DNS Flags
**-X**, **--xml**, **+**\[no\]**xml**
**--aa**\[=*bool*\], **+\[no\]aaflag**
> Print the query results as XML.
> (Set, Unset) AA (Authoritative Answer) flag.
**-y**, **--yaml**, **+**\[no\]**yaml**
**--ad**\[=*bool*\], **+\[no\]adflag**
> Print the query results as YAML.
> (Set, Unset) AD (Authenticated Data) flag.
**-z**\[=*bool*\], **+**\[no\]**zflag**
**--tc**\[=*bool*\], **+\[no\]tcflag**
> (Set, Unset) TC (TrunCated) flag
**-z**\[=*bool*\], **+\[no\]zflag**
> (Set, Unset) Z (Zero) flag.
**--cd**\[=*bool*\], **+\[no\]cdflag**
> (Set, Unset) CD (Checking Disabled) flag.
**--qr**\[=*bool*\], **+\[no\]qrflag**
> (Set, Unset) QR (QueRy) flag.
**--rd**\[=*bool*\], **+\[no\]rdflag**
> (Set, Unset) RD (Recursion Desired) flag.
**--ra**\[=*bool*\], **+\[no\]raflag**
> (Set, Unset) RA (Recursion Available) flag.
## EDNS
All of these options except disabling EDNS imply **+edns**.
**--no-edns**, **+noedns**
> Disable EDNS.
**--edns-ver**, **+edns**\[=*int*\]
> Enable EDNS and set EDNS version. The maximum value is 255, and the
> minimum (default) value is 0.
**--expire**. **+\[no\]expire**
> Send an EDNS Expire.
**--nsid**, **+\[no\]nsid**
> Send an EDNS name server ID request.
**--no-cookie**, **+\[no\]cookie**\[=*string*\]
> Send an EDNS cookie. This is enabled by default with a random string.
**--keep-alive**, **+\[no\]keepalive**, **+\[no\]keepopen**
> Send an EDNS keep-alive. This does nothing unless using TCP.
**--buffer-size** *int*, **+bufize**=*int*
> Set the UDP message buffer size, using EDNS. Max is 65535, minimum is
> zero. The default value is 1232.
> Sets the Z (Zero) flag.
**--zflag** *int*, **+ednsflags**=*int*
> Set the must-be-zero EDNS flags. Decimal, hexadecimal and octal are
> supported. Trying to set DO will be ignored.
**--subnet** *ip*\[*/prefix*\], **+\[no\]subnet**=*ip*\[*/prefix*\]
> Send an EDNS Client Subnet option with the specified address.
>
> Like **dig**(1), setting the IP to *0.0.0.0/0*, *::/0* or *0* will
> signal the resolver to not use any client information when returning
> the query.
## Output Display
**--no-question**, **+\[no\]question**
> Toggle the display of the Question section.
**--no-answer**, **+\[no\]answer**
> Toggle the display of the Answer section.
**--no-answer**, **+\[no\]answer**
> Toggle the display of the Answer section.
**--no-authority**, **+\[no\]authority**
> Toggle the display of the Authority section.
**--no-additional**, **+\[no\]additional**
> Toggle the display of the Additional section.
**--no-statistics**, **+\[no\]stats**
> Toggle the display of the Statistics (additional comments) section.
## Output Formats
**-j**, **--json**, **+\[no\]json**
> Print the query results as JSON.
**-X**, **--xml**, **+\[no\]xml**
> Print the query results as XML.
**-y**, **--yaml**, **+\[no\]yaml**
> Print the query results as YAML.
**-s**, **--short**, **+\[no\]short**
> Print just the address of the answer.
# EXIT STATUS
The exit code is 0 when a query is successfully made and received. This