Win10专业版
纯新手,也没弄过Linux的。不喜勿喷,有问题请指出
第一天一头雾水整了几个小时没结果,第二天豁然开朗,10分钟明白了第一天的问题所在。
Win10
安卓:
iOS:
搭建DNS服务器的意义:
DNS服务器是hosts的升级。Win10可以修改hosts达到目的,但是手机修改这个必须root,root难度大不说,且用不了银行APP,等于说给每个设备修改hosts方法不可行。
自己的个人电脑,Win10是专业版,并非server版本,弄个Linux虚拟机真占内存和空间开了机还得开虚拟机麻烦的很;舍弃所有已安装的软件重装系统成server系统也不现实。
后来找到了个有趣的软件,bind,这个工具可以直接在Windows上使用,不限制版本。
bind官网地址:?BIND 9 - ISC
先说一下自己遇到的坑:
cd /d %~dp0
"C:\Program Files\ISC BIND 9\bin\named.exe"? -f -g -d 1
pause
废话有点多,下面进入正题。
先来看一下必须的文件,如果只是搭建一个简单的可用的dns,只需这3:
如果想访问到自定义的域名,如qq.com,gg.com,需要添加如上边所示的gg.com.zone
关于这些文件的后缀:可以随便写,只要在named.conf里填对就行了,后缀只是能让自己好辨认。
以我为例,自己创建的文件(也是需要自己填写信息的):
详细操作:
????? 或者直接
没有提示出错,即万事大吉一帆风顺。
?
停止:
这里有错误提示,可能还是权限问题,实际感觉不影响停止
;文件gg.com.zone 这里的注释最好只能用分号
$TTL 1H
@ IN SOA gg.com. root.gg.com. (
?2007091701? ; Serial
?30800? ; Refresh
?7200? ; Retry
?604800? ; Expire
?300 )? ; Minimum
???????
??????? NS? gg.com.???????? ;每一个NS下最少要有一个A记录
??????? A?? 192.168.0.110?? ;可直接访问gg.com。每个NS下添加一个A记?
ns???? A?? 192.168.0.110?? ;没加.则解析时加上域
mail??? A?? 192.168.0.110
xx???? A?? 192.168.0.110
## 文件localhost.zone
$TTL 1D
@?????? IN????? SOA???? localhost.????? root.localhost. (
??????? 2007091701????????? ; Serial
??????? 30800?????????????? ; Refresh
??????? 7200??????????????? ; Retry
??????? 604800????????????? ; Expire
??????? 300 )?????????????? ; Minimum
??????? IN????? NS????? localhost.
localhost.??????? IN????? A?????? 127.0.0.1
//文件named.conf
options {
?// zone文件的位置
listen-on port 53 { any; };
?directory "C:\Program Files\ISC BIND 9\etc";
?// 无法解析的域名就去查询ISP提供的DNS
?// 在下面的IP地址位置上填写ISP的DNS地址
?allow-query { any; };
?forward first;??? //first和only以及这一行不写。不写就是不转发
?forwarders {
?//这里是你本机IP或者127.0.0.1
??? //127.0.0.1;
??? 218.202.152.130;
??? 218.202.152.131;
??? 223.5.5.5; //注意这里转发的是DNS地址,没有指定DNS转发域名。
??? 223.6.6.6;
??? 8.8.8.8;
??? 8.8.4.4;
?};
?// 仅允许本机与192.168.0.0网段内的机器查询
?//allow-query {
?//127.0.0.1;
?//192.168.0.0/24;? //这个要查询一下自己所在局域网的网段(其他设备配置DNS时填写24,或者255.255.255.0)
?//};
};
// gg.com是我们为自己的域的正向解析配置
zone "gg.com" IN {
?type master;
?file "gg.com.zone";
?#allow-update { none; };
};
zone "qq.com" IN {
?type master;
?file "qq.com.zone";
?#allow-update { none; };
};
// 根DNS
//zone "." {
?//type hint;
?//file "named.root";????? //https://www.internic.net/zones/named.root。很慢!
//};
// localhost
zone "localhost" IN {
?type master;
?file "localhost.zone";
?allow-update { none; };
};
// localhost的反向解析
zone "0.0.127.in-addr.arpa" {
?type master;
?file "localhost.rev";
};
include "C:\Program Files\ISC BIND 9\etc\rndc.key";
感觉配置文件还是有点问题,也可能是地区的原因,最后访问CSDN:
;文件zoned.root
;直接到这里下载,https://www.internic.net/zones/
;但是解析速度是真慢
;文件qq.com.zone
;和文件gg.com.zone大同小异
//文件start.cmd
cd /d %~dp0
"C:\Program Files\ISC BIND 9\bin\named.exe"? -f -g -d 1
pause
对配置中的转发服务器、根服务器速度太慢的问题,直接在conf中删掉关于这两处的代码,随后修改ipv4如下,多整几个假的否则自己配置的(如qq.com)不生效:
至于定义了优先级为何还不从第一个的本地开始匹配,可能?
用上边的方法,能达到目的:
又能使用原来想要的:
关于中文域名解析:先在edge访问“小而美.qq.com”,再复制它到文本编辑器(如Word),会发现中文变成了非中文字符,把这一串非中文添加一个解析记录。然后重启named
参考:https://blog.csdn.net/m0_66349719/article/details/130245965