Our great sponsors
dns | mdns | |
---|---|---|
8 | 2 | |
7,713 | 1,115 | |
- | 2.2% | |
7.7 | 4.7 | |
1 day ago | 6 days ago | |
Go | Go | |
BSD 3-clause "New" or "Revised" License | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
dns
-
Wrote a CLI tool to check DNS configurations quickly (an alternative to dig)
The heavylifting is done by this package: https://github.com/miekg/dns.
-
Book recommendations for network programming
For the DNS i wrote a PiHole clone, which on the core it uses github.com/miekg/dns, to upstream queries and also to handle the custom entries, i've been wanting to publish that project but haven't done so cause the code is a bit messy since i did it as a PoC mostly, when comparing it to pihole it has the advantage that its really resource light mostly on the admin features, the dns resolving performs pretty much the same.
-
fastdns - fast dns server for go (alpha stage)
coredns uses github.com/miekg/dns under the hood
How would it compare to https://github.com/miekg/dns?
-
How to unit test net.Resolver?
You can do the same with net.Resolver, either by just setting it's Dial function (and PreferGo=true). You can use https://pkg.go.dev/golang.org/x/net/dns/dnsmessage or https://github.com/miekg/dns to implement an in-process server, either over TCP/UDP or skipping real networking completely, just like you can do with https://golang.org/pkg/net/http/httptest
-
Go 1.16 will make system calls through Libc on OpenBSD
Had a similar problem a couple years ago where I needed to use alternative DNS libraries to troubleshoot issues in a company's infrastructure.
Golang's rules for what implementation to use are found here: https://golang.org/pkg/net/#hdr-Name_Resolution
A really solid alternative DNS client implementation can be found here: https://github.com/miekg/dns. Real easy to read and vet compared to a few other libraries I ran into when working on this problem.
mdns
-
Terminal chat
I haven’t looked at the code, but you can mdns for discovery on a LAN https://github.com/hashicorp/mdns so that you don’t have to mess with IP addresses.
What are some alternatives?
arp - Package arp implements the ARP protocol, as described in RFC 826. MIT Licensed.
gopacket - Provides packet processing capabilities for Go
mqttPaho
llb
ftp - FTP client package for Go
fasthttp - Fast HTTP package for Go. Tuned for high performance. Zero memory allocations in hot paths. Up to 10x faster than net/http
quic-go - A QUIC implementation in pure Go
kcptun - A Stable & Secure Tunnel based on KCP with N:M multiplexing and FEC. Available for ARM, MIPS, 386 and AMD64。N:M 多重化と FEC を備えた KCP に基づく安定した安全なトンネル。 N:M 다중화 및 FEC를 사용하는 KCP 기반의 안정적이고 안전한 터널입니다. Un tunnel stable et sécurisé basé sur KCP avec multiplexage N:M et FEC.
utp - Use anacrolix/go-libutp instead
xtcp - A TCP Server Framework with graceful shutdown, custom protocol.