A command-line DNS lookup tool that supports DNS queries over UDP, TCP, TLS, HTTPS, DNSCrypt, and QUIC. https://dns.froth.zone/awl/
Go to file
Sam Therapy e709b71f4e
All checks were successful
continuous-integration/drone/push Build is passing
continuous-integration/drone/pr Build is passing
Preliminary fix for #26
Signed-off-by: Sam Therapy <sam@samtherapy.net>
2022-07-03 20:01:53 +02:00
conf Windows and Plan 9 DNS Config (#17) 2022-06-30 22:37:08 +00:00
logawl More unit tests (#19) 2022-07-02 16:34:42 +00:00
query more debug logging and adding dns msg flags back in using opts struct 2022-07-03 14:33:00 -04:00
util Rewrite of query.go to support interface for Resolver, and refactor of tests to work with new code 2022-07-03 13:36:56 -04:00
.drone.yml Windows and Plan 9 DNS Config (#17) 2022-06-30 22:37:08 +00:00
.gitignore Rewrite in Go :^) 2022-06-21 22:54:50 +02:00
awl.go Add a LICENSE 2022-06-29 23:12:30 +02:00
cli.go Preliminary fix for #26 2022-07-03 20:01:53 +02:00
cli_test.go Preliminary fix for #26 2022-07-03 20:01:53 +02:00
docs.go I got paid to write this 2022-06-22 22:59:17 +02:00
go.mod Update golang.org/x/sys digest to 3183198 2022-07-01 22:00:23 -05:00
go.sum Update golang.org/x/sys digest to 3183198 2022-07-01 22:00:23 -05:00
LICENCE Add a LICENSE 2022-06-29 23:12:30 +02:00
query.go Preliminary fix for #26 2022-07-03 20:01:53 +02:00
README.md I am still somehow getting paid to do this 2022-06-23 23:12:48 +02:00
renovate.json Add renovate.json 2022-06-22 11:55:52 +00:00

awl

awl is a command-line DNS client, much like drill, dig, dog, doggo, or q

This was made as my first major experiment with Go, so there are probably things that can be improved

The excellent dns library for Go does most of the heavy lifting.

What works

  • UDP
  • TCP
  • TLS
  • HTTPS (maybe)
  • QUIC (extreme maybe)

What doesn't

  • Your sanity after reading my awful code
  • A motivation for making this after finding q and doggo

What should change

  • Make the CLI less abysmal (migrate to cobra? or just use stdlib's flags)
  • Optimize everything
  • Make the code less spaghetti (partially completed)
  • Feature parity with drill
    • Making a drop-in replacement for drill?