Skip to content

Tantalor93/doq-go

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

57 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

doq-go

Release Go version License: MIT Tantalor93 lint codecov Go Report Card

DNS over QUIC (=DoQ, as defined in RFC9250) client library written in Golang and built on top quic-go and dns libraries.

Usage in your project

add dependency

go get github.com/tantalor93/doq-go

Examples

// create client with default settings resolving via AdGuard DoQ Server
client := doq.NewClient("dns.adguard-dns.com:853")

// prepare payload
q := dns.Msg{}
q.SetQuestion("www.google.com.", dns.TypeA)

// send DNS query
r, err := client.Send(context.Background(), &q)
if err != nil {
    panic(err)
}
// do something with response
fmt.Println(dns.RcodeToString[r.Rcode])