From ab0ac7e0bd1b92339cc97ba026f148478df5a860 Mon Sep 17 00:00:00 2001 From: Sam Therapy Date: Tue, 27 Dec 2022 21:09:20 +0100 Subject: [PATCH] update manpage on wiki Signed-off-by: Sam Therapy --- awl.1.md | 344 +++++++++++++++++++++++++++---------------------------- 1 file changed, 171 insertions(+), 173 deletions(-) diff --git a/awl.1.md b/awl.1.md index 3680129..d91a7b7 100644 --- a/awl.1.md +++ b/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