138 lines
9.5 KiB
HTML
138 lines
9.5 KiB
HTML
<head>
|
||
<meta
|
||
name="go-import"
|
||
content="dns.froth.zone/awl git https://git.froth.zone/sam/awl"
|
||
/>
|
||
<meta
|
||
name="go-source"
|
||
content="dns.froth.zone/awl https://git.froth.zone/sam/awl https://git.froth.zone/sam/awl/src/branch/master{/dir} https://git.froth.zone/sam/awl/src/branch/master{/dir}/{file}#L{line}"
|
||
/>
|
||
</head>
|
||
<p>
|
||
<a href="./code">awl</a> is a simple DNS query client, much like dig and
|
||
drill.
|
||
</p>
|
||
<pre><code>❯ awl NS froth.zone @https://dns.froth.zone/dns-query
|
||
;; opcode: QUERY, status: NOERROR, id: 46274
|
||
;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 8
|
||
|
||
;; QUESTION SECTION:
|
||
;froth.zone. IN NS
|
||
|
||
;; ANSWER SECTION:
|
||
froth.zone. 1650 IN NS illya.froth.zone.
|
||
froth.zone. 1650 IN NS rin.froth.zone.
|
||
froth.zone. 1650 IN NS sakura.froth.zone.
|
||
froth.zone. 1650 IN NS saber.froth.zone.
|
||
|
||
;; ADDITIONAL SECTION:
|
||
rin.froth.zone. 1650 IN AAAA 2607:5300:201:3100::931b
|
||
sakura.froth.zone. 1650 IN AAAA 2001:41d0:304:200::d12b
|
||
saber.froth.zone. 1650 IN AAAA 2602:fe90:100:2::164d:4c70
|
||
illya.froth.zone. 1650 IN AAAA 2603:c020:4004:62ee::8888
|
||
rin.froth.zone. 1650 IN A 158.69.1.114
|
||
sakura.froth.zone. 1650 IN A 141.94.206.97
|
||
saber.froth.zone. 1650 IN A 45.13.232.162
|
||
illya.froth.zone. 1650 IN A 129.213.157.255
|
||
|
||
;; Query time: 404.9936ms
|
||
;; SERVER: https://dns.froth.zone/dns-query
|
||
;; WHEN: Never
|
||
;; MSG SIZE rcvd: 489</code></pre>
|
||
<hr />
|
||
<p>
|
||
<code>awl</code> understands DNSSEC, like
|
||
<a href="https://linux.die.net/man/1/drill"><code>drill(1)</code></a
|
||
>:
|
||
</p>
|
||
<pre><code>❯ awl brokendnssec.net @1.1.1.1 --tcp
|
||
;; opcode: QUERY, status: SERVFAIL, id: 45766
|
||
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 0, ADDITIONAL: 0
|
||
|
||
;; QUESTION SECTION:
|
||
;brokendnssec.net. IN A
|
||
|
||
;; Query time: 6.0461ms
|
||
;; SERVER: 1.1.1.1:53 (TCP)
|
||
;; WHEN: Never
|
||
;; MSG SIZE rcvd: 34
|
||
❯ awl brokendnssec.net @1.1.1.1 --cd +tcp
|
||
;; opcode: QUERY, status: NOERROR, id: 37917
|
||
;; flags: qr rd ra cd; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0
|
||
|
||
;; QUESTION SECTION:
|
||
;brokendnssec.net. IN A
|
||
|
||
;; ANSWER SECTION:
|
||
brokendnssec.net. 294 IN A 172.67.36.129
|
||
brokendnssec.net. 294 IN A 104.22.35.212
|
||
brokendnssec.net. 294 IN A 104.22.34.212
|
||
|
||
;; Query time: 8.4461ms
|
||
;; SERVER: 1.1.1.1:53 (TCP)
|
||
;; WHEN: Never
|
||
;; MSG SIZE rcvd: 130</code></pre>
|
||
<hr />
|
||
<p>
|
||
It supports many of the flags that
|
||
<a href="https://man.openbsd.org/dig.1"><code>dig(1)</code></a> does:
|
||
</p>
|
||
<pre><code>❯ awl +noquestion +noauthority +nostats cat-v.org
|
||
;; opcode: QUERY, status: NOERROR, id: 39675
|
||
;; flags: qr rd ra; QUERY: 0, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 0
|
||
|
||
;; ANSWER SECTION:
|
||
cat-v.org. 9418 IN A 168.235.69.224</code></pre>
|
||
<hr />
|
||
<p>And <a href="./man">some new features</a>, too!</p>
|
||
<div class="sourceCode" id="cb4">
|
||
<pre
|
||
class="sourceCode xml"
|
||
><code class="sourceCode xml"><span id="cb4-1"><a href="#cb4-1" aria-hidden="true" tabindex="-1"></a>❯ awl +quic --xml codeberg.org</span>
|
||
<span id="cb4-2"><a href="#cb4-2" aria-hidden="true" tabindex="-1"></a> <<span class="kw">Message</span>></span>
|
||
<span id="cb4-3"><a href="#cb4-3" aria-hidden="true" tabindex="-1"></a> <<span class="kw">opcode</span>>QUERY</<span class="kw">opcode</span>></span>
|
||
<span id="cb4-4"><a href="#cb4-4" aria-hidden="true" tabindex="-1"></a> <<span class="kw">status</span>>NOERROR</<span class="kw">status</span>></span>
|
||
<span id="cb4-5"><a href="#cb4-5" aria-hidden="true" tabindex="-1"></a> <<span class="kw">id</span>>51837</<span class="kw">id</span>></span>
|
||
<span id="cb4-6"><a href="#cb4-6" aria-hidden="true" tabindex="-1"></a> <<span class="kw">response</span>>true</<span class="kw">response</span>></span>
|
||
<span id="cb4-7"><a href="#cb4-7" aria-hidden="true" tabindex="-1"></a> <<span class="kw">authoritative</span>>false</<span class="kw">authoritative</span>></span>
|
||
<span id="cb4-8"><a href="#cb4-8" aria-hidden="true" tabindex="-1"></a> <<span class="kw">truncated</span>>false</<span class="kw">truncated</span>></span>
|
||
<span id="cb4-9"><a href="#cb4-9" aria-hidden="true" tabindex="-1"></a> <<span class="kw">recursionDesired</span>>true</<span class="kw">recursionDesired</span>></span>
|
||
<span id="cb4-10"><a href="#cb4-10" aria-hidden="true" tabindex="-1"></a> <<span class="kw">recursionAvailable</span>>true</<span class="kw">recursionAvailable</span>></span>
|
||
<span id="cb4-11"><a href="#cb4-11" aria-hidden="true" tabindex="-1"></a> <<span class="kw">zero</span>>false</<span class="kw">zero</span>></span>
|
||
<span id="cb4-12"><a href="#cb4-12" aria-hidden="true" tabindex="-1"></a> <<span class="kw">authenticatedData</span>>false</<span class="kw">authenticatedData</span>></span>
|
||
<span id="cb4-13"><a href="#cb4-13" aria-hidden="true" tabindex="-1"></a> <<span class="kw">checkingDisabled</span>>false</<span class="kw">checkingDisabled</span>></span>
|
||
<span id="cb4-14"><a href="#cb4-14" aria-hidden="true" tabindex="-1"></a> <<span class="kw">opt</span>></span>
|
||
<span id="cb4-15"><a href="#cb4-15" aria-hidden="true" tabindex="-1"></a> <<span class="kw">name</span>>Version</<span class="kw">name</span>></span>
|
||
<span id="cb4-16"><a href="#cb4-16" aria-hidden="true" tabindex="-1"></a> <<span class="kw">value</span>>0</<span class="kw">value</span>></span>
|
||
<span id="cb4-17"><a href="#cb4-17" aria-hidden="true" tabindex="-1"></a> </<span class="kw">opt</span>></span>
|
||
<span id="cb4-18"><a href="#cb4-18" aria-hidden="true" tabindex="-1"></a> <<span class="kw">opt</span>></span>
|
||
<span id="cb4-19"><a href="#cb4-19" aria-hidden="true" tabindex="-1"></a> <<span class="kw">name</span>>Flags</<span class="kw">name</span>></span>
|
||
<span id="cb4-20"><a href="#cb4-20" aria-hidden="true" tabindex="-1"></a> <<span class="kw">value</span>></<span class="kw">value</span>></span>
|
||
<span id="cb4-21"><a href="#cb4-21" aria-hidden="true" tabindex="-1"></a> </<span class="kw">opt</span>></span>
|
||
<span id="cb4-22"><a href="#cb4-22" aria-hidden="true" tabindex="-1"></a> <<span class="kw">opt</span>></span>
|
||
<span id="cb4-23"><a href="#cb4-23" aria-hidden="true" tabindex="-1"></a> <<span class="kw">name</span>>UDP Buffer Size</<span class="kw">name</span>></span>
|
||
<span id="cb4-24"><a href="#cb4-24" aria-hidden="true" tabindex="-1"></a> <<span class="kw">value</span>>1232</<span class="kw">value</span>></span>
|
||
<span id="cb4-25"><a href="#cb4-25" aria-hidden="true" tabindex="-1"></a> </<span class="kw">opt</span>></span>
|
||
<span id="cb4-26"><a href="#cb4-26" aria-hidden="true" tabindex="-1"></a> <<span class="kw">question</span>></span>
|
||
<span id="cb4-27"><a href="#cb4-27" aria-hidden="true" tabindex="-1"></a> <<span class="kw">name</span>>codeberg.org.</<span class="kw">name</span>></span>
|
||
<span id="cb4-28"><a href="#cb4-28" aria-hidden="true" tabindex="-1"></a> <<span class="kw">class</span>>IN</<span class="kw">class</span>></span>
|
||
<span id="cb4-29"><a href="#cb4-29" aria-hidden="true" tabindex="-1"></a> <<span class="kw">type</span>>A</<span class="kw">type</span>></span>
|
||
<span id="cb4-30"><a href="#cb4-30" aria-hidden="true" tabindex="-1"></a> </<span class="kw">question</span>></span>
|
||
<span id="cb4-31"><a href="#cb4-31" aria-hidden="true" tabindex="-1"></a> <<span class="kw">answer</span>></span>
|
||
<span id="cb4-32"><a href="#cb4-32" aria-hidden="true" tabindex="-1"></a> <<span class="kw">response</span>>193.26.156.135</<span class="kw">response</span>></span>
|
||
<span id="cb4-33"><a href="#cb4-33" aria-hidden="true" tabindex="-1"></a> <<span class="kw">name</span>>codeberg.org.</<span class="kw">name</span>></span>
|
||
<span id="cb4-34"><a href="#cb4-34" aria-hidden="true" tabindex="-1"></a> <<span class="kw">ttl</span>>449</<span class="kw">ttl</span>></span>
|
||
<span id="cb4-35"><a href="#cb4-35" aria-hidden="true" tabindex="-1"></a> <<span class="kw">class</span>>IN</<span class="kw">class</span>></span>
|
||
<span id="cb4-36"><a href="#cb4-36" aria-hidden="true" tabindex="-1"></a> <<span class="kw">type</span>>A</<span class="kw">type</span>></span>
|
||
<span id="cb4-37"><a href="#cb4-37" aria-hidden="true" tabindex="-1"></a> </<span class="kw">answer</span>></span>
|
||
<span id="cb4-38"><a href="#cb4-38" aria-hidden="true" tabindex="-1"></a> <<span class="kw">queryTime</span>>128.726593ms</<span class="kw">queryTime</span>></span>
|
||
<span id="cb4-39"><a href="#cb4-39" aria-hidden="true" tabindex="-1"></a> <<span class="kw">server</span>>dns.adguard.com:853 (QUIC)</<span class="kw">server</span>></span>
|
||
<span id="cb4-40"><a href="#cb4-40" aria-hidden="true" tabindex="-1"></a> <<span class="kw">when</span>>Thu, 13 Oct 2022 15:29:58 +0200</<span class="kw">when</span>></span>
|
||
<span id="cb4-41"><a href="#cb4-41" aria-hidden="true" tabindex="-1"></a> <<span class="kw">msgSize</span>>69</<span class="kw">msgSize</span>></span>
|
||
<span id="cb4-42"><a href="#cb4-42" aria-hidden="true" tabindex="-1"></a></<span class="kw">Message</span>></span></code></pre>
|
||
</div>
|
||
<hr />
|
||
<p>
|
||
A full list of the features <code>awl</code> supports can be found
|
||
<a href="https://git.froth.zone/sam/awl/wiki/Supported">here</a>.
|
||
</p>
|