# DNS

Find other nameservers:

```shell-session
dig ns @<IP>
```

Sometimes it's possible to get the version:

```shell-session
dig CH TXT version.bind <IP>
```

Show all records:

```shell-session
dig any <domain> <IP>
```

### Zone transfers or Asynchronous Full Transfer Zone (AXFR)

They use `TCP` port 53

```shell-session
dig axfr <domain> @<IP>
```

If the administrator used a subnet for the `allow-transfer` option for testing purposes or as a workaround solution or set it to `any`, everyone would query the entire zone file at the DNS server. In addition, other zones can be queried, which may even show internal IP addresses and hostnames.

Manual bruteforcing:

```shell-session
for sub in $(cat /opt/useful/SecLists/Discovery/DNS/subdomains-top1million-110000.txt);do dig $sub.inlanefreight.htb @10.129.14.128 | grep -v ';\|SOA' | sed -r '/^\s*$/d' | grep $sub | tee -a subdomains.txt;done
```

## Tool

[DNSenum](https://github.com/fwaeytens/dnsenum)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.rtlcopymemory.com/footprinting/dns.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
