61 lines
2.0 KiB
Markdown
61 lines
2.0 KiB
Markdown
---
|
|
hide:
|
|
- toc
|
|
---
|
|
|
|
# OpenWrt
|
|
|
|
## Installation
|
|
|
|
Upload the software to the /root directory of the router with winscp or other tool, and execute the following command to install it.
|
|
|
|
```shell
|
|
opkg install smartdns.xxxxxxxx.xxxx.ipk
|
|
opkg install luci-app-smartdns.xxxxxxxx.xxxx.all.ipk
|
|
```
|
|
|
|
- Note: For versions before OpenWrt 19.07, please install `luci-app-smartdns.xxxxxxxxx.all-luci-compat-all` package.
|
|
|
|
## Configuration
|
|
|
|
Log in to the OpenWrt management page and open `Services`->`SmartDNS` to configure SmartDNS.
|
|
|
|
- Add upstream DNS server configuration to `Upstream Servers`. It is recommended to configure multiple DNS servers at home and abroad.
|
|
- Specify the IP address of a specific domain name in `Domain Address`, which can be used for ad blocking.
|
|
|
|
## Start Service
|
|
|
|
There are two ways to use the SmartDNS service, `one is directly as the primary DNS service`, `the other is as the upstream of dnsmasq`.
|
|
By default, SmartDNS uses the first method. You can choose according to your needs in the following two ways.
|
|
|
|
## Method 1: SmartDNS as primary DNS Server
|
|
|
|
- **Enable SmartDNS as primary DNS Server**
|
|
|
|
Log in to the router, click on `Services`->`SmartDNS`->`port`, input port `53`, smartdns will run as primary DNS Server.
|
|
|
|
- **Check if the service is configured successfully**
|
|
|
|
Query domain name with `nslookup -querytype=ptr smartdns`
|
|
See if the `name` item in the command result is displayed as `smartdns` or `hostname`, such as `smartdns`
|
|
|
|
```shell
|
|
pi@raspberrypi:~/code/smartdns_build $ nslookup -querytype=ptr smartdns
|
|
Server: 192.168.1.1
|
|
Address: 192.168.1.1#53
|
|
|
|
Non-authoritative answer:
|
|
smartdns name = smartdns.
|
|
```
|
|
|
|
## Note
|
|
|
|
- When the port of smartdns is 53, it will automatically take over dnsmasq as the primary dns. When configuring other ports, dnsmasq is re-enabled as primary dns.
|
|
- If an exception occurs during this process, you can use the following command to restore dnsmasq as the primary DNS
|
|
|
|
```shell
|
|
uci delete dhcp.@dnsmasq[0].port
|
|
uci commit dhcp
|
|
/etc/init.d/dnsmasq restart
|
|
```
|