**前言** : 很多时候,我们针对一个新版本功能的测试,一般情况下是打一个内部测试的包,测试完功能ok后,然后再打一个正式地址的线上包,理论上来说,只有连接服务器的地址是唯一变化的,但是毕竟打包是通过脚本打的,第一:不能确认是否有新的提交。第二:风险意识,认定第二次打包的东西和第一次打包的东西是不一样的。第三:测试角度来说,上线的包一定是经过测试的包,于是想通过内网DNS服务器解析线上域名到测试服,达到客户端不变,只用测试一个包,测试包即为上线包,同时无缝切换服务器的目的。更高级的办法是通过切换不同的WIFi来实现连接到不同服务器,本文暂不做讨论。此处的客户端操作为修改默认的DNS解析即可。 试验环境1. DNS服务器地址,IP : 192.168.34.168 域名 : dns.cq.com2. 客户端1: IP:192.168.34.120 域名:tc.cq.com3. 客户端2: IP:192.168.34.160 域名:xiongfei.cq.com 服务器搭建1. 拉取镜像 `docker pull sameersbn/bind`2. 启动DNS服务器docker run -d \
-p 53:53/tcp \
-p 53:53/udp \
-p 10000:10000/tcp \
-v /home/xiongfei/bind:/data \
–restart=always \
–name bind \
sameersbn/bind 修改配置文件1. 找到主配置文件:`name.conf`,内容大致如下:// This is the primary configuration file for the BIND DNS server named.
//
// Please read /usr/share/doc/bind9/README.Debian.gz for information on the
// structure of BIND configuration files in Debian, *BEFORE* you customize
// this configuration file.
//
// If you are just adding zones, please do that in /etc/bind/named.conf.local
include "/etc/bind/named.conf.options";
include "/etc/bind/named.conf.local";
include "/etc/bind/named.conf.default-zones"; 编辑 `/etc/bind/named.conf.options`文件,添加内容zone "cq.com" {
type master;
file "/data/bind/etc/cq/cq.com.forward.open";
};
zone "34.168.192.in-addr.arpa" {
type master;
file "/data/bind/etc/cq/cq.com.reverse.open";
};配置文件中产生了2个配置文件,一个正向解析的配置文件(cq.com.forward.open)和一个反向解析的配置文件(cq.com.reverse.open)3. 为了方便和直观,添加一个cq的目录,并创建两个文件,cq.com.forward.open文件内容:;
; BIND data file for local loopback interface
;
$TTL 604800
@ IN SOA dns.cq.com. root.cq.com. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS dns.cq.com.
@ IN A 192.168.34.168
@ IN A 192.168.34.160
@ IN A 192.168.34.120
dns IN A 192.168.34.168
tc IN A 192.168.34.160
xiongfei IN A 192.168.34.120
cq.com.reverse.open文件内容:;
; BIND data file for local loopback interface
;
$TTL 604800
@ IN SOA dns.cq.com. root.cq.com. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
604800 ) ; Negative Cache TTL
;
@ IN NS dns.cq.com.
168 IN PTR dns.cq.com.
160 IN PTR tc.cq.com.
120 IN PTR xiongfei.cq.com.4. 检查配置文件并重新加载:执行`named-checkconf` 如果没有任何返回标识配置文件没问题,使用`rndc reconfig`重新加载配置5. 测试:1. 首选DNS服务器设置为192.168.34.1682. 打开cmd,执行`nslookup` 如下显示表示成功3. 接着输入刚刚需要解析的域名:`xiongfei.cq.com `或者 `tc.cq.com`可以看到已经解析到正确的地址,其中`tc.cq.com`是一个可访问的网站,浏览器打开搞定!至此,以后就可以将任意域名通过修改本地DNS服务器,将线上的域名解析到测试服,功能测试完毕以后,关闭对该域名解析即可连接到线上服务器 扩展:解析外网DNS:1. `name.conf.local`文件添加内容2. 正向解析:3. 反向解析:4. 重启bind服务器,可以达到类似的效果
本文出自快速备案,转载时请注明出处及相应链接。
本文永久链接: https://www.175ku.com/27636.html