q - 초소형 커맨드라인 DNS 클라이언트
(github.com/natesales)- 단일 바이너리로 UDP/TCP부터 DoT/DoH/DoQ/ODoH까지 폭넓은 전송 방식을 지원하는 작고 강력한 CLI DNS 클라이언트
- 도메인의 기본 레코드 조회부터 특정 서버 쿼리, pretty/raw/json/yaml 등의 다양한 출력 형식까지 지원
- 모든 플래그는 dig 표준 +[no]flag 형태로도 제어 가능
- ODoH·DNSCrypt v2 같은 프라이버시 지향 프로토콜과 재귀 AXFR·IP Whois·PTR 자동 역해결 등 실무 친화 기능을 포함
- DNS Stamp·HTTP/2/3·QUIC·EDNS0 옵션 등 세밀한 프로토콜 튜닝을 제공함
- dog/doggo/dig/kdig 대비 DoQ·ODoH·YAML·세션 재사용 등의 장점이 있음
- 사용 예
q example.com 도메인의 기본 레코드 조회 q example.com MX SOA 여러 타입 동시 조회 q example.com MX @9.9.9.9 특정 서버를 통한 쿼리 q example.com MX @https://dns.quad9.net HTTPS (or TCP, TLS, QUIC, or ODoH) q @sdns://AgcAAAAAAAAAAAAHOS45LjkuOQA">sdns://AgcAAAAAAAAAAAAHOS45LjkuOQA **DNS Stamp** 기반 서버 사용 q example.com MX --format=raw **dig 스타일** 출력 q example.com MX --format=json **JSON/YAML** 출력 지원
- 프로토콜 지원
- UDP/TCP DNS (RFC 1034)
- DNS over TLS (RFC 7858)
- DNS over HTTPS (RFC 8484)
- DNS over QUIC (RFC 9250)
- Oblivious DNS over HTTPS (RFC 9230) : 쿼리·클라이언트 분리 프라이버시 제공
- DNSCrypt v2 (draft-dennis-dprive-dnscrypt) : 서드파티 프라이버시 채널 활용 가능