2022-08-25 13:08:29 +00:00
# DNS
2022-07-08 09:01:38 +00:00
### Structure
```json
{
"dns": {
"servers": [],
"rules": [],
"final": "",
2022-07-09 01:26:50 +00:00
"strategy": "",
2022-07-08 09:01:38 +00:00
"disable_cache": false,
2023-03-23 11:08:48 +00:00
"disable_expire": false,
"reverse_mapping": false
2022-07-08 09:01:38 +00:00
}
}
```
### Fields
| Key | Format |
|----------|--------------------------------|
| `server` | List of [DNS Server ](./server ) |
| `rules` | List of [DNS Rule ](./rule ) |
#### final
2022-07-09 01:26:50 +00:00
Default dns server tag.
The first server will be used if empty.
2022-07-08 09:01:38 +00:00
#### strategy
Default domain strategy for resolving the domain names.
One of `prefer_ipv4` `prefer_ipv6` `ipv4_only` `ipv6_only` .
2022-08-22 04:43:21 +00:00
Take no effect if `server.strategy` is set.
2022-07-08 09:01:38 +00:00
#### disable_cache
Disable dns cache.
#### disable_expire
2023-03-23 11:08:48 +00:00
Disable dns cache expire.
#### reverse_mapping
Stores a reverse mapping of IP addresses after responding to a DNS query in order to provide domain names when routing.
Since this process relies on the act of resolving domain names by an application before making a request, it can be problematic in environments such as macOS, where DNS is proxied and cached by the system.