# resolver

<mark style="color:blue;">**resolver**</mark>指令用于<mark style="color:blue;">**指定DNS服务器的IP地址**</mark>。DNS服务器的主要工作是进行域名解析，将域名映射为对应的IP地址。该指令的语法结构为：

```nginx
resolver address ... [valid=time];
```

* &#x20;<mark style="color:blue;">**address**</mark>，**DNS服务器的IP地址**。如果不指定端口号，**默认使用53端口**。
* <mark style="color:blue;">**time**</mark>，**设置数据包在网络中的有效时间**。出现该指令的主要原因是，在访问站点时，有很多情况使得数据包在一定时间内不能被传递到目的地，但是又不能让该数据包无期限地存在，于是就需要设定一段时间，当数据包在这段时间内没有到达目的地，就会被丢弃，然后发送者会接收到一个消息，并决定是否要重发该数据包。

使用该指令的一个例子如下：

```nginx
resolver 127.0.0.1 [::1]:5353 valid=30s;
```
