Some document optimizations

This commit is contained in:
Nick Peng
2019-02-26 00:21:49 +08:00
parent 8e1b404ba0
commit ef3a2196a0
6 changed files with 108 additions and 9 deletions

View File

@@ -5,7 +5,7 @@ SmartDNS is a local DNS server. SmartDNS accepts DNS query requests from local c
Avoiding DNS pollution and improving network access speed, supports high-performance ad filtering.
Unlike dnsmasq's all-servers, smartdns returns the fastest access resolution.
Support Raspberry Pi, openwrt, ASUS router and other devices.
Support Raspberry Pi, openwrt, ASUS router, Windows and other devices.
## Software Show
@@ -143,6 +143,7 @@ Download the matching version of the SmartDNS installation package. The correspo
```
Please download it from the Release page: [Download here](https://github.com/pymumu/smartdns/releases)
* For the installation procedure, please refer to the following sections.
### Standard Linux system installation (Raspberry Pi, X86_64 system)
@@ -370,6 +371,50 @@ Note: Merlin firmware is derived from ASUS firmware and can theoretically be use
\\192.168.1.1\sda1\asusware.mipsbig\etc\init.d
```
### optware/entware
--------------
1. Prepare
When using this software, you need to confirm whether the router supports USB disk and prepare a USB disk.
1. Install SmartDNS
Upload the software to `/tmp` directory of the router using winscp, and run the flollowing command to install.
```shell
ipkg install smartdns.xxxxxxx.mipsbig.ipk
```
1. Modify the smartdns configuration
```shell
Vi /opt/etc/smartdns/smartdns.conf
```
Note: if you need to support IPV6, you can set the worke-mode to `2`, this will disable the DNS service of dnsmasq, and smartdns run as the primary DNS server. Change `SMARTDNS_WORKMODE` in the file `/opt/etc/smartdns/smartdns-opt.conf` to 2.
```shell
SMARTDNS_WORKMODE="2"
```
1. Restart the router to take effect
After the router is started, use `nslookup -querytype=ptr 0.0.0.0` to query the domain name.
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 0.0.0.0
Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
0.0.0.0.in-addr.arpa name = smartdns.
```
Note: If the service does not start automatically, you need to set optwre/entware to start automatically. For details, see the optware/entware documentation.
### Windows 10 WSL InstallationWSL ubuntu
--------------
@@ -437,7 +482,7 @@ Note: Merlin firmware is derived from ASUS firmware and can theoretically be use
|rr-ttl|Domain name TTL|Remote query result|number greater than 0|rr-ttl 600
|rr-ttl-min|Domain name Minimum TTL|Remote query result|number greater than 0|rr-ttl-min 60
|rr-ttl-max|Domain name Maximum TTL|Remote query result|number greater than 0|rr-ttl-max 600
|log-level|log level|error|error,warn,info,debug|log-level error
|log-level|log level|error|fatal,error,warn,notice,info,debug|log-level error
|log-file|log path|/var/log/smartdns.log|File Pah|log-file /var/log/smartdns.log
|log-size|log size|128K|number+K,M,G|log-size 128K
|log-num|archived log number|2|Integer|log-num 2

View File

@@ -5,7 +5,7 @@ SmartDNS是一个运行在本地的DNS服务器SmartDNS接受本地客户端
同时支持指定特定域名IP地址并高性匹配达到过滤广告的效果。
与dnsmasq的all-servers不同smartdns返回的是访问速度最快的解析结果。
支持树莓派openwrt华硕路由器等设备。
支持树莓派openwrt华硕路由器windows等设备。
## 软件效果展示
@@ -143,6 +143,7 @@ rtt min/avg/max/mdev = 5.954/6.133/6.313/0.195 ms
```
请在Release页面下载[此处下载](https://github.com/pymumu/smartdns/releases)
* 各种设备的安装步骤,请参考后面的章节。
### 标准Linux系统安装树莓派, X86_64系统
@@ -370,6 +371,50 @@ rtt min/avg/max/mdev = 5.954/6.133/6.313/0.195 ms
\\192.168.1.1\sda1\asusware.mipsbig\etc\init.d
```
### optware/entware
--------------
1. 准备
在使用此软件时需要确认路由器是否支持U盘并准备好U盘一个。
1. 安装SmartDNS
将软件使用winscp上传到路由器的`/tmp`目录。
```shell
ipkg install smartdns.xxxxxxx.mipsbig.ipk
```
1. 修改smartdns配置
```shell
vi /opt/etc/smartdns/smartdns.conf
```
另外如需支持IPV6可设置工作模式为`2`将dnsmasq的DNS服务禁用smartdns为主用DNS服务器。将文件`/opt/etc/smartdns/smartdns-opt.conf`,中的`SMARTDNS_WORKMODE`修改为2.
```shell
SMARTDNS_WORKMODE="2"
```
1. 重启路由器生效服务
待路由器启动后,使用`nslookup -querytype=ptr 0.0.0.0`查询域名
看命令结果中的`name`项目是否显示为`smartdns`或`主机名`,如`smartdns`则表示生效
```shell
pi@raspberrypi:~/code/smartdns_build $ nslookup -querytype=ptr 0.0.0.0
Server: 192.168.1.1
Address: 192.168.1.1#53
Non-authoritative answer:
0.0.0.0.in-addr.arpa name = smartdns.
```
注意若服务没有自动启动则需要设置optwre/entware自动启动具体方法参考optware/entware的文档。
### Windows 10 WSL安装WSL ubuntu
--------------
@@ -438,7 +483,7 @@ rtt min/avg/max/mdev = 5.954/6.133/6.313/0.195 ms
|rr-ttl|域名结果TTL|远程查询结果|大于0的数字|rr-ttl 600
|rr-ttl-min|允许的最小TTL值|远程查询结果|大于0的数字|rr-ttl-min 60
|rr-ttl-max|允许的最大TTL值|远程查询结果|大于0的数字|rr-ttl-max 600
|log-level|设置日志级别|error|error,warn,info,debug|log-level error
|log-level|设置日志级别|error|fatal,error,warn,notice,info,debug|log-level error
|log-file|日志文件路径|/var/log/smartdns.log|路径|log-file /var/log/smartdns.log
|log-size|日志大小|128K|数字+K,M,G|log-size 128K
|log-num|日志归档个数|2|数字|log-num 2

View File

@@ -62,7 +62,7 @@ cache-size 512
# rr-ttl-max 86400
# set log level
# log-level: [level], level=error, warn, info, debug
# log-level: [level], level=fatal, error, warn, notice, info, debug
# log-file: file path of log file.
# log-size: size of each log file, support k,m,g
# log-num: number of logs
@@ -103,7 +103,7 @@ log-level info
# specific nameserver to domain
# nameserver /domain/[group|-]
# nameserver /www.example.com/office, set nameserver with nameserver name of block
# nameserver /www.example.com/office, Set the domain name to use the appropriate server group.
# nameserver /www.example.com/-, ignore this domain
# specific address to domain

View File

@@ -8,4 +8,9 @@
# specific ipset to domain
# ipset /domain/[ipset|-]
# ipset /www.example.com/block, set ipset with ipset name of block
# ipset /www.example.com/-, ignore this domain
# ipset /www.example.com/-, ignore this domain
# specific nameserver to domain
# nameserver /domain/[group|-]
# nameserver /www.example.com/office, Set the domain name to use the appropriate server group.
# nameserver /www.example.com/-, ignore this domain

View File

@@ -1,7 +1,7 @@
# Add custom settings here.
# set log level
# log-level [level], level=error, warn, info, debug
# log-level [level], level=fatal, error, warn, notice, info, debug
# log-level error
# log-size k,m,g

View File

@@ -931,11 +931,15 @@ static int _config_log_level(void *data, int argc, char *argv[])
dns_conf_log_level = TLOG_DEBUG;
} else if (strncmp("info", value, MAX_LINE_LEN) == 0) {
dns_conf_log_level = TLOG_INFO;
} else if (strncmp("notice", value, MAX_LINE_LEN) == 0) {
dns_conf_log_level = TLOG_NOTICE;
} else if (strncmp("warn", value, MAX_LINE_LEN) == 0) {
dns_conf_log_level = TLOG_WARN;
} else if (strncmp("error", value, MAX_LINE_LEN) == 0) {
dns_conf_log_level = TLOG_ERROR;
} else {
} else if (strncmp("fatal", value, MAX_LINE_LEN) == 0) {
dns_conf_log_level = TLOG_FATAL;
}else {
return -1;
}