2021-03-16 15:57:15 +00:00
|
|
|
|
# FakeDNS
|
2021-03-15 15:59:11 +00:00
|
|
|
|
|
|
|
|
|
FakeDNS 通过伪造 DNS 以获取目标域名,能够降低 DNS 查询时的延迟、配合透明代理获取目标域名。
|
|
|
|
|
|
|
|
|
|
::: warning
|
|
|
|
|
FakeDNS 有可能会污染本地 DNS,导致 Xray 关闭后“无法访问网络”。
|
2021-03-16 15:57:15 +00:00
|
|
|
|
:::
|
2021-03-15 15:59:11 +00:00
|
|
|
|
|
|
|
|
|
## FakeDNSObject
|
2021-03-16 15:57:15 +00:00
|
|
|
|
|
2021-03-15 15:59:11 +00:00
|
|
|
|
`FakeDNSObject` 对应配置文件的 `fakedns` 项。
|
|
|
|
|
|
|
|
|
|
```json
|
|
|
|
|
{
|
2021-03-16 15:57:15 +00:00
|
|
|
|
"ipPool": "198.18.0.0/16",
|
2021-03-15 15:59:11 +00:00
|
|
|
|
"poolSize": 65535
|
|
|
|
|
}
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
> `ipPool`: CIDR
|
|
|
|
|
|
|
|
|
|
FakeDNS 将使用此选项指定的 IP 块分配地址。
|
|
|
|
|
|
|
|
|
|
> `poolSize`: int
|
|
|
|
|
|
|
|
|
|
指定 FakeDNS 储存的 域名-IP 映射的最大数目。当映射数超过此值后,会按照 LRU 规则淘汰映射。默认为 65535。
|
|
|
|
|
|
|
|
|
|
### 如何使用?
|
|
|
|
|
|
2021-03-17 00:27:02 +00:00
|
|
|
|
FakeDNS 本质上是一个 [DNS 服务器](./dns#serverobject),能够与任意 DNS 规则配合使用。
|
2021-03-15 15:59:11 +00:00
|
|
|
|
|
|
|
|
|
::: tip
|
|
|
|
|
只有将 DNS 查询路由到 FakeDNS,才能使其发挥作用。
|
2021-03-16 15:57:15 +00:00
|
|
|
|
:::
|
2021-03-15 15:59:11 +00:00
|
|
|
|
|
|
|
|
|
另外,你需要在入站中开启 `Sniffing` ,并使用 `fakedns` 目标地址重置。
|
|
|
|
|
|
2021-03-16 15:57:15 +00:00
|
|
|
|
::: warning
|
2021-03-15 15:59:11 +00:00
|
|
|
|
如果 FakeIP 没有被正确的还原为域名,将无法连接到服务器。
|
2021-03-16 15:57:15 +00:00
|
|
|
|
:::
|