{"id":13582320,"url":"https://github.com/ameshkov/dnslookup","last_synced_at":"2025-05-16T00:06:57.735Z","repository":{"id":38324485,"uuid":"187202303","full_name":"ameshkov/dnslookup","owner":"ameshkov","description":"Simple command line utility to make DNS lookups to the specified server","archived":false,"fork":false,"pushed_at":"2024-07-26T11:44:56.000Z","size":4482,"stargazers_count":926,"open_issues_count":27,"forks_count":75,"subscribers_count":23,"default_branch":"master","last_synced_at":"2025-04-08T11:09:59.967Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ameshkov.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2019-05-17T11:10:17.000Z","updated_at":"2025-04-04T19:22:11.000Z","dependencies_parsed_at":"2024-01-07T10:19:25.951Z","dependency_job_id":"25fad74e-ebe1-46e6-a22f-9c5fef952d6e","html_url":"https://github.com/ameshkov/dnslookup","commit_stats":null,"previous_names":[],"tags_count":30,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ameshkov%2Fdnslookup","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ameshkov%2Fdnslookup/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ameshkov%2Fdnslookup/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ameshkov%2Fdnslookup/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ameshkov","download_url":"https://codeload.github.com/ameshkov/dnslookup/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":254442854,"owners_count":22071878,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-01T15:02:35.747Z","updated_at":"2025-05-16T00:06:52.680Z","avatar_url":"https://github.com/ameshkov.png","language":"Go","funding_links":[],"categories":["Go","others"],"sub_categories":[],"readme":"[![Go Report Card](https://goreportcard.com/badge/github.com/ameshkov/dnslookup)](https://goreportcard.com/report/ameshkov/dnslookup)\n[![Latest release](https://img.shields.io/github/release/ameshkov/dnslookup/all.svg)](https://github.com/ameshkov/dnslookup/releases)\n[![Snap Store](https://snapcraft.io/dnslookup/badge.svg)](https://snapcraft.io/dnslookup)\n\n# dnslookup\n\nSimple command line utility to make DNS lookups. Supports all known DNS\nprotocols: plain DNS, plain DNS-over-TCP, DoH, DoT, DoQ, DNSCrypt.\n\n### How to install\n\n* Using homebrew:\n    ```\n    brew install ameshkov/tap/dnslookup\n    ```\n* From source:\n    ```\n    go install github.com/ameshkov/dnslookup@latest\n    ```\n* You can get a binary from\n  the [releases page](https://github.com/ameshkov/dnslookup/releases).\n* You can install it from the [Snap Store](https://snapcraft.io/dnslookup)\n\n### Examples:\n\nPlain DNS, use default system resolver:\n\n```shell\ndnslookup example.org\n```\n\nPlain DNS:\n\n```shell\ndnslookup example.org 94.140.14.14\n```\n\nPlain DNS-over-TCP:\n\n```shell\ndnslookup example.org tcp://94.140.14.14\n```\n\nDNS-over-TLS:\n\n```shell\ndnslookup example.org tls://dns.adguard.com\n```\n\nDNS-over-TLS with IP:\n\n```shell\ndnslookup example.org tls://dns.adguard.com 94.140.14.14\n```\n\nDNS-over-HTTPS with HTTP/2:\n\n```shell\ndnslookup example.org https://dns.adguard.com/dns-query\n```\n\nDNS-over-HTTPS with HTTP/3 support (the version is chosen automatically):\n\n```shell\nHTTP3=1 dnslookup example.org https://dns.google/dns-query\n```\n\nDNS-over-HTTPS forcing HTTP/3 only:\n\n```shell\ndnslookup example.org h3://dns.google/dns-query\n```\n\nDNS-over-HTTPS with IP:\n\n```shell\ndnslookup example.org https://dns.adguard.com/dns-query 94.140.14.14\n```\n\nDNS-over-HTTPS with basic auth (supported\nby [AdGuard DNS](https://adguard-dns.io/)):\n\n```shell\ndnslookup example.org https://username:password@d.adguard-dns.com/dns-query\n```\n\nDNSCrypt (stamp):\n\n```shell\ndnslookup example.org sdns://AQIAAAAAAAAAFDE3Ni4xMDMuMTMwLjEzMDo1NDQzINErR_JS3PLCu_iZEIbq95zkSV2LFsigxDIuUso_OQhzIjIuZG5zY3J5cHQuZGVmYXVsdC5uczEuYWRndWFyZC5jb20\n```\n\nDNSCrypt (parameters):\n\n```shell\ndnslookup example.org 176.103.130.130:5443 2.dnscrypt.default.ns1.adguard.com D12B:47F2:52DC:F2C2:BBF8:9910:86EA:F79C:E449:5D8B:16C8:A0C4:322E:52CA:3F39:0873\n```\n\nDNS-over-QUIC:\n\n```shell\ndnslookup example.org quic://dns.adguard.com\n```\n\nSending a PTR query for an IPv4 address (IP address is recognized automatically\nwhen RRTYPE is not specified):\n\n```shell\ndnslookup 8.8.8.8\n```\n\nSending a PTR query for an IPv6 address (IP address is recognized automatically\nwhen RRTYPE is not specified):\n\n```shell\ndnslookup 2606:4700:4700::1111\n```\n\nMachine-readable format:\n\n```shell\nJSON=1 dnslookup example.org 94.140.14.14\n```\n\nDisable certificates verification:\n\n```shell\nVERIFY=0 dnslookup example.org tls://127.0.0.1\n```\n\nSpecify the type of resource record (default A):\n\n```shell\nRRTYPE=AAAA dnslookup example.org tls://127.0.0.1\nRRTYPE=HTTPS dnslookup example.org tls://127.0.0.1\n```\n\nSpecify the class of query (default IN):\n\n```shell\nCLASS=CH dnslookup example.org tls://127.0.0.1\n```\n\nSet DNSSEC DO bit in the request's OPT record:\n\n```shell\nDNSSEC=1 dnslookup example.org tls://8.8.8.8\n```\n\nSpecify EDNS subnet:\n\n```shell\nSUBNET=1.2.3.4/24 dnslookup example.org tls://8.8.8.8\n```\n\nAdd EDNS0 Padding:\n\n```shell\nPAD=1 dnslookup example.org tls://127.0.0.1\n```\n\nSpecify EDNS option with code point `code` and optionally payload of `value` as\na hexadecimal string: `EDNSOPT=code:value`. Example (equivalent of dnsmasq's\n`--add-cpe-id=12345678`):\n\n```shell\nEDNSOPT=65074:3132333435363738 RRTYPE=TXT dnslookup o-o.myaddr.l.google.com tls://8.8.8.8\n```\n\nCombine multiple options:\n\n```shell\nRRTYPE=TXT SUBNET=1.1.1.1/24 PAD=1 dnslookup o-o.myaddr.l.google.com tls://8.8.8.8\n```\n\nVerbose-level logging:\n\n```shell\nVERBOSE=1 dnslookup example.org tls://dns.adguard.com\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fameshkov%2Fdnslookup","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fameshkov%2Fdnslookup","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fameshkov%2Fdnslookup/lists"}