Add meta tags maybe

Signed-off-by: Sam Therapy <sam@samtherapy.net>
This commit is contained in:
Sam Therapy 2022-10-13 15:43:09 +02:00
parent bb4da3e455
commit ccbb39bbea
Signed by: sam
GPG Key ID: 4D8B07C18F31ACBD
2 changed files with 138 additions and 121 deletions

138
awl/index.html Normal file
View File

@ -0,0 +1,138 @@
<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> &lt;<span class="kw">Message</span>&gt;</span>
<span id="cb4-3"><a href="#cb4-3" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">opcode</span>&gt;QUERY&lt;/<span class="kw">opcode</span>&gt;</span>
<span id="cb4-4"><a href="#cb4-4" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">status</span>&gt;NOERROR&lt;/<span class="kw">status</span>&gt;</span>
<span id="cb4-5"><a href="#cb4-5" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">id</span>&gt;51837&lt;/<span class="kw">id</span>&gt;</span>
<span id="cb4-6"><a href="#cb4-6" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">response</span>&gt;true&lt;/<span class="kw">response</span>&gt;</span>
<span id="cb4-7"><a href="#cb4-7" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">authoritative</span>&gt;false&lt;/<span class="kw">authoritative</span>&gt;</span>
<span id="cb4-8"><a href="#cb4-8" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">truncated</span>&gt;false&lt;/<span class="kw">truncated</span>&gt;</span>
<span id="cb4-9"><a href="#cb4-9" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">recursionDesired</span>&gt;true&lt;/<span class="kw">recursionDesired</span>&gt;</span>
<span id="cb4-10"><a href="#cb4-10" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">recursionAvailable</span>&gt;true&lt;/<span class="kw">recursionAvailable</span>&gt;</span>
<span id="cb4-11"><a href="#cb4-11" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">zero</span>&gt;false&lt;/<span class="kw">zero</span>&gt;</span>
<span id="cb4-12"><a href="#cb4-12" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">authenticatedData</span>&gt;false&lt;/<span class="kw">authenticatedData</span>&gt;</span>
<span id="cb4-13"><a href="#cb4-13" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">checkingDisabled</span>&gt;false&lt;/<span class="kw">checkingDisabled</span>&gt;</span>
<span id="cb4-14"><a href="#cb4-14" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">opt</span>&gt;</span>
<span id="cb4-15"><a href="#cb4-15" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">name</span>&gt;Version&lt;/<span class="kw">name</span>&gt;</span>
<span id="cb4-16"><a href="#cb4-16" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">value</span>&gt;0&lt;/<span class="kw">value</span>&gt;</span>
<span id="cb4-17"><a href="#cb4-17" aria-hidden="true" tabindex="-1"></a> &lt;/<span class="kw">opt</span>&gt;</span>
<span id="cb4-18"><a href="#cb4-18" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">opt</span>&gt;</span>
<span id="cb4-19"><a href="#cb4-19" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">name</span>&gt;Flags&lt;/<span class="kw">name</span>&gt;</span>
<span id="cb4-20"><a href="#cb4-20" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">value</span>&gt;&lt;/<span class="kw">value</span>&gt;</span>
<span id="cb4-21"><a href="#cb4-21" aria-hidden="true" tabindex="-1"></a> &lt;/<span class="kw">opt</span>&gt;</span>
<span id="cb4-22"><a href="#cb4-22" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">opt</span>&gt;</span>
<span id="cb4-23"><a href="#cb4-23" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">name</span>&gt;UDP Buffer Size&lt;/<span class="kw">name</span>&gt;</span>
<span id="cb4-24"><a href="#cb4-24" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">value</span>&gt;1232&lt;/<span class="kw">value</span>&gt;</span>
<span id="cb4-25"><a href="#cb4-25" aria-hidden="true" tabindex="-1"></a> &lt;/<span class="kw">opt</span>&gt;</span>
<span id="cb4-26"><a href="#cb4-26" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">question</span>&gt;</span>
<span id="cb4-27"><a href="#cb4-27" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">name</span>&gt;codeberg.org.&lt;/<span class="kw">name</span>&gt;</span>
<span id="cb4-28"><a href="#cb4-28" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">class</span>&gt;IN&lt;/<span class="kw">class</span>&gt;</span>
<span id="cb4-29"><a href="#cb4-29" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">type</span>&gt;A&lt;/<span class="kw">type</span>&gt;</span>
<span id="cb4-30"><a href="#cb4-30" aria-hidden="true" tabindex="-1"></a> &lt;/<span class="kw">question</span>&gt;</span>
<span id="cb4-31"><a href="#cb4-31" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">answer</span>&gt;</span>
<span id="cb4-32"><a href="#cb4-32" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">response</span>&gt;193.26.156.135&lt;/<span class="kw">response</span>&gt;</span>
<span id="cb4-33"><a href="#cb4-33" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">name</span>&gt;codeberg.org.&lt;/<span class="kw">name</span>&gt;</span>
<span id="cb4-34"><a href="#cb4-34" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">ttl</span>&gt;449&lt;/<span class="kw">ttl</span>&gt;</span>
<span id="cb4-35"><a href="#cb4-35" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">class</span>&gt;IN&lt;/<span class="kw">class</span>&gt;</span>
<span id="cb4-36"><a href="#cb4-36" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">type</span>&gt;A&lt;/<span class="kw">type</span>&gt;</span>
<span id="cb4-37"><a href="#cb4-37" aria-hidden="true" tabindex="-1"></a> &lt;/<span class="kw">answer</span>&gt;</span>
<span id="cb4-38"><a href="#cb4-38" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">queryTime</span>&gt;128.726593ms&lt;/<span class="kw">queryTime</span>&gt;</span>
<span id="cb4-39"><a href="#cb4-39" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">server</span>&gt;dns.adguard.com:853 (QUIC)&lt;/<span class="kw">server</span>&gt;</span>
<span id="cb4-40"><a href="#cb4-40" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">when</span>&gt;Thu, 13 Oct 2022 15:29:58 +0200&lt;/<span class="kw">when</span>&gt;</span>
<span id="cb4-41"><a href="#cb4-41" aria-hidden="true" tabindex="-1"></a> &lt;<span class="kw">msgSize</span>&gt;69&lt;/<span class="kw">msgSize</span>&gt;</span>
<span id="cb4-42"><a href="#cb4-42" aria-hidden="true" tabindex="-1"></a>&lt;/<span class="kw">Message</span>&gt;</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>

View File

@ -1,121 +0,0 @@
[awl](./code) is a simple DNS query client, much like dig and drill.
```
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
```
---
`awl` understands DNSSEC, like [`drill(1)`](https://linux.die.net/man/1/drill):
```
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
```
---
It supports many of the flags that [`dig(1)`](https://man.openbsd.org/dig.1)
does:
```
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
```
---
And [some new features](./man), too!
```xml
awl +quic --xml codeberg.org
<Msg>
<Id>22108</Id>
<Response>true</Response>
<Opcode>0</Opcode>
<Authoritative>false</Authoritative>
<Truncated>false</Truncated>
<RecursionDesired>true</RecursionDesired>
<RecursionAvailable>true</RecursionAvailable>
<Zero>false</Zero>
<AuthenticatedData>false</AuthenticatedData>
<CheckingDisabled>false</CheckingDisabled>
<Rcode>0</Rcode>
<Compress>false</Compress>
<Question>
<Name>codeberg.org.</Name>
<Qtype>1</Qtype>
<Qclass>1</Qclass>
</Question>
<Answer>
<Hdr>
<Name>codeberg.org.</Name>
<Rrtype>1</Rrtype>
<Class>1</Class>
<Ttl>3600</Ttl>
<Rdlength>4</Rdlength>
</Hdr>
<A>193.26.156.135</A>
</Answer>
</Msg>
```
------
A full list of the features `awl` supports can be found [here](https://git.froth.zone/sam/awl/wiki/Supported).