使用BIND9+MySql搭建一個(gè)簡(jiǎn)單的智能DNS

??公司之前就有個(gè)所謂的“融合性CND”產(chǎn)品震糖,什么叫CDN可以點(diǎn)這里看下躲撰,那什么又叫"融合性CDN"枫耳,過(guò)了一天明白了忍宋,就是把第三方成熟的CDN產(chǎn)品給封裝成帶有自己公司logo的接口寓落。約等于炊豪,比如你用某搜索引擎搜索CDN這個(gè)名詞溶诞,然后某搜索引擎的后臺(tái)程序鸯檬,打開(kāi)Google輸入CDN,然后再把搜索結(jié)果返回給你螺垢。這種產(chǎn)品喧务,現(xiàn)在有了個(gè)新名詞叫“融合性產(chǎn)品”赖歌。
??這種赤裸裸的優(yōu)秀產(chǎn)品,讓新接手的SM很不爽功茴,所以打算預(yù)研某些技術(shù)庐冯,看看能否慢慢替換一些第三方產(chǎn)品,首先瞄準(zhǔn)的就是CDN里面技術(shù)難度不是很高的“智能DNS解析”這塊坎穿,通俗來(lái)講展父,智能DNS解析,就是根據(jù)用戶(hù)的IP信息玲昧,返回給用戶(hù)相應(yīng)的邊緣節(jié)點(diǎn)栖茉,目的是提升用戶(hù)體驗(yàn)。舉個(gè)例子酌呆,某門(mén)戶(hù)網(wǎng)站衡载,域名www.xxxx.com,源站在北京(IPV4地址111.111.111.111)隙袁,然后建有兩個(gè)用于全網(wǎng)加速的邊緣節(jié)點(diǎn)痰娱,一個(gè)在濟(jì)南(IPV4地址222.222.222.222),一個(gè)在大連菩收,這時(shí)如果有個(gè)濟(jì)南用戶(hù)請(qǐng)求域名www.xxxx.com的IP地址,普通DNS會(huì)直接返回北京的地址111.111.111.111梨睁;智能DNS解析,會(huì)根據(jù)用戶(hù)的IP信息娜饵,發(fā)現(xiàn)這人在濟(jì)南坡贺,所以會(huì)返回222.222.222.222給用戶(hù),這樣離得近箱舞,估計(jì)用戶(hù)體驗(yàn)會(huì)更好(這里提一下遍坟,用戶(hù)體驗(yàn)好不好,影響因素不限于地理上的距離晴股,運(yùn)營(yíng)商是否相同愿伴,同時(shí)在線訪問(wèn)人數(shù),服務(wù)器軟硬件都有影響)电湘。
??本文適合給直接使用BIND9的網(wǎng)友勘誤隔节,沒(méi)有多少原理上的說(shuō)明,就是單純的羅列搭建的基本步驟寂呛。估計(jì)錯(cuò)誤很多怎诫,不排除完全錯(cuò)誤,不涉及BIND9的二次開(kāi)發(fā)贷痪,沒(méi)有源碼或者結(jié)構(gòu)上的解讀幻妓。強(qiáng)烈建議大家去看官網(wǎng)提供的BIND9運(yùn)維手冊(cè),跟BIND9-DLZ官網(wǎng)指導(dǎo)

1. 安裝BIND9所需的依賴(lài)

??首先我們要先下載跟安裝BIND9所需要的依賴(lài)軟件劫拢。上圖:

[root@ecs-dns bindDp]# ll *gz
-rw-r--r-- 1 root root 83709983 Sep  7 14:28 boost_1_59_0.tar.gz
-rw-r--r-- 1 root root  6897636 Sep  7 14:28 cmake-3.6.0.tar.gz
-rw-r--r-- 1 root root 50509574 Sep  7 14:29 mysql-5.7.16.tar.gz
-rw-r--r-- 1 root root  3131891 Sep  7 14:29 ncurses-6.0.tar.gz
-rw-r--r-- 1 root root 16420458 Sep  7 14:30 perl-5.24.4.tar.gz
-rw-r--r-- 1 root root   607698 Sep  7 14:30 zlib-1.2.11.tar.gz

然后我們按下面的順序涌哲,安裝BIND9的依賴(lài)胖缤。

1.1 在這里下載perl的源代碼,這里我下載的是perl-5.24.0.tar.gz版本阀圾;

tar zxvf perl-5.24.0.tar.gz
cp configure.gnu configure
./configure -des -Dprefix=/usr/local/perl
make
make test # 在這步結(jié)束的時(shí)候有一個(gè)error哪廓,但不影響我們后續(xù)的操作,test沒(méi)有完成100%
make install

1.2 在這里下載zlib源碼包初烘,然后安裝涡真;

tar zxvf zlib-1.2.11.tar.gz
cd zlib-1.2.11
./configure
make
make install

1.3 在這里下載cmake源碼包,cmake為mysql的依賴(lài)肾筐;

tar zxvf cmake-3.6.0.tar.gz
cd cmake-3.6.0
./bootstrap&&gmake&&make&&make install
# 這里的可能會(huì)出現(xiàn)如下的錯(cuò)誤
# Error when bootstrapping CMake:
# Cannot find appropriate C++ compiler on this system.
# 使用g++ -v命令發(fā)現(xiàn)沒(méi)安裝g++編譯器
# -bash: g++: command not found哆料,使用下面的yum命令安裝g++編譯器
yum install gcc-c++ libstdc++-devel

1.4 在這里下載ncurses源碼包;

tar zxvf ncurses-6.0.tar.gz
cd ncurses-6.0
./configure
make&&make install

1.5 在這里下載boost庫(kù)文件吗铐,此為mysql5.7.5以上版本所必須的东亦;

# 將boost_1_59_0.tar.gz解壓之后放在/usr/local/boost下,這里我嘗試將boost_1_62_0.tar.gz解壓唬渗,發(fā)現(xiàn)編譯的時(shí)候出現(xiàn)了問(wèn)題典阵,錯(cuò)誤解釋為需要59的,通過(guò)59解壓之后成功編譯镊逝。
mkdir -p /usr/local/boost
cp boost_1_59_0.tar.gz /usr/local/boost/
tar zxvf boost_1_59_0.tar.gz

1.6 我們?cè)?a target="_blank">這里下載mysql源碼包壮啊,我下載的是mysql-5.7.16.tar.gz版本的;

tar zxvf  mysql-5.7.16.tar.gz
cd  mysql-5.7.16
groupadd mysql
# 新增mysql組撑蒜,mysql需要
useradd -r -g mysql mysql
# 新增mysql組下面的mysql用戶(hù)
mkdir /usr/local/mysql
mkdir -p /data/mysqldb

cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DDOWNLOAD_BOOST=1 -DWITH_BOOST=/usr/local/boost -DMYSQL_DATADIR=/data/mysqldb -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DMYSQL_TCP_PORT=3306 -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1
# 這條執(zhí)行過(guò)程中會(huì)出現(xiàn)這種錯(cuò)誤 -bash: cmake: command not found歹啼,將cmake暫時(shí)添加到path中
# export PATH="/home/bindDp/cmake-3.6.0/bin/":"$PATH"
# 使用cmake --version驗(yàn)證下,如果出現(xiàn) cmake version 3.6.0 就OK了

make&&make install # 如果make出錯(cuò)執(zhí)行 make clean&&rm CMakeCache.txt
cd /usr/local/mysql/

bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/data/mysqldb
# 初始化數(shù)據(jù)庫(kù)

cp support-files/mysql.server /etc/init.d/mysqld # 復(fù)制mysql服務(wù)啟動(dòng)腳本
cp /usr/local/mysql/support-files/my-default.cnf /etc/my.cnf # 復(fù)制mysql服務(wù)啟動(dòng)配置文件

vi /etc/profile # 加入path路徑
export PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH
source /etc/profile # 使修改文件立即生效
chkconfig --level 35 mysqld on # 加入開(kāi)機(jī)自啟動(dòng)

2. 編譯并安裝BIND9

2.1 在這里下載bind的源代碼座菠,這里我下載的是bind-9.11.0.tar.gz版本狸眼;

??下載完成之后,進(jìn)入BIND9的源碼文件所在的目錄浴滴,然后使用如下命令解壓拓萌,配置,安裝:

tar zxvf bind9-v9_11.tar.gz
cd bind9-v9_11
./configure --prefix=/usr/local/bind/ --with-dlz-mysql=/usr/local/mysql --enable-threads --disable-chroot --enable-largefile --enable-epoll --without-python
# 這里可能需要手動(dòng)安裝OpenSSL`yum install openssl openssl-devel`
make
make install

??上述的各個(gè)flag解析如下:

--enable-largefile 啟用大文件支持
--prefix:(重要)表示bind9的安裝目錄巡莹,防止直接安裝在根目錄司志,被黑了之后甜紫,系統(tǒng)崩了
--sysconfdir:設(shè)置named.conf配置文件放置的目錄降宅,默認(rèn)是"$prefix/etc"
--localstatdir=/var:設(shè)置run/named.pid放置的目錄,默認(rèn)是“$prefix/var”
--with-libtool:將BIND的庫(kù)文件編譯為動(dòng)態(tài)共享庫(kù)文件囚霸,這個(gè)選項(xiàng)默認(rèn)是為選擇的
--enable-threads:多線程支持(官網(wǎng)解析是需要關(guān)閉)這個(gè)是個(gè)可研究的點(diǎn)腰根,下面詳細(xì)說(shuō)
--without-python:不依賴(lài)Python工具安裝
--disable-ipv6:關(guān)閉ipv6支持
--with-dlz-mysql:(重要)這是必須要有的,意思是當(dāng)編譯BIND9時(shí)候會(huì)編譯MySQL驅(qū)動(dòng)

--enable-threads這個(gè)標(biāo)簽拓型,很重要:
??官網(wǎng)的解釋是:BIND9使用MySQL的驅(qū)動(dòng)有一個(gè)額外的限制额嘿。MySQL針對(duì)C的API使用TLS瘸恼。因此MySQL要求上層APP的每個(gè)線程都要執(zhí)行一個(gè)MySQL的“thread initialization”來(lái)創(chuàng)建TLS。在DLZ驅(qū)動(dòng)程序API中册养,這是不可能安全地做到的东帅。因此BIND9只能單獨(dú)跑一個(gè)MySQL驅(qū)動(dòng)的單線程。為了保證BIND9只跑一個(gè)單線程球拦,應(yīng)該在啟動(dòng)named進(jìn)程時(shí)候加上參數(shù)"-n 1"靠闭。另外,編譯單線程的BIND9還可以通過(guò)--enable-threads標(biāo)簽坎炼,這個(gè)標(biāo)簽只在使用MySQL驅(qū)動(dòng)時(shí)候才是必須的愧膀,官網(wǎng)強(qiáng)烈建議使用非多線程的方式來(lái)使用MySQL驅(qū)動(dòng)。
??安裝完了之后谣光,現(xiàn)在我們可以先測(cè)試一下BIND9的安裝結(jié)果:

[root@ecs-dns bind9-v9_11]# /usr/local/bind/sbin/named -v
/usr/local/bind/sbin/named: error while loading shared libraries: libmysqlclient.so.20: cannot open shared object file: No such file or directory
# 結(jié)果出現(xiàn)錯(cuò)誤檩淋,無(wú)法裝載或打開(kāi)libmysqlclient.so.20,解決方法是用find命令找到libmysqlclient.so.20然后copy到/usr/lib64/下

[root@ecs-dns bind9-v9_11]# mv /usr/local/mysql/lib/libmysqlclient.so.20 /usr/lib64/
[root@ecs-dns bind9-v9_11]# /usr/local/bind/sbin/named -v
BIND 9.11.35 (Extended Support Version) <id:unset_id>

2.2 接下來(lái)我們需要配置named.cnf文件

??step1:先切換到正確的目錄

[root@study etc]# pwd
/usr/local/bind/etc
[root@study etc]# ll
total 16
drwxr-xr-x 2 root root   96 Sep 21 16:26 acl
-rw-r--r-- 1 root root 1859 Aug 26 16:24 bind.keys
-rw-r--r-- 1 root root  860 Sep 16 17:32 named.conf
-rw-r--r-- 1 root root  479 Aug 26 16:25 rndc.conf
-rw-r--r-- 1 root root  479 Aug 26 16:26 rndc.key
drwxr-xr-x 2 root root   99 Sep 16 17:34 view:

??step2:生成named.conf配置文件

[root@ecs-dns etc]# cd /usr/local/bind/sbin
[root@ecs-dns sbin]# ./rndc-confgen -r /dev/urandom > /usr/local/bind/etc/rndc.conf
[root@ecs-dns sbin]#
[root@ecs-dns sbin]# cd /usr/local/bind/etc/
[root@ecs-dns etc]# tail -n10 rndc.conf | head -n9 | sed -e s/#\//g>named.conf

??step3:生成根服務(wù)器文件

[root@ecs-dns etc]# ../bin/dig > ./named.root

??step4:接下來(lái)正式配置named.conf文件

[root@study etc]# cat named.conf
key "rndc-key" {
        algorithm hmac-md5;
        secret "E4ghSPC882WXb50g58HHCA==";
};

controls {
        inet 127.0.0.1 port 953
                allow { 127.0.0.1; } keys { "rndc-key"; };
};
options {
    listen-on port 53 {127.0.0.1; 192.168.137.111;};
    directory "/usr/local/bind/var";
    pid-file "named.pid";
    allow-query{any;};
    forwarders{114.114.114.114;8.8.8.8;};
};

acl "dns-ip-list"{
    192.168.137.111;
};

include "/usr/local/bind/etc/acl/CMCC_CN_Shandong_acl.conf"; //中移-中國(guó)-山東ACL
include "/usr/local/bind/etc/acl/CUCC_CN_Shandong_acl.conf"; //電聯(lián)-中國(guó)-山東ACL
include "/usr/local/bind/etc/acl/default_acl.conf";
include "/usr/local/bind/etc/view/CMCC_CN_Shandong_view.conf"; //中移-中國(guó)-山東DLZ
include "/usr/local/bind/etc/view/CUCC_CN_Shandong_view.conf"; //中聯(lián)-中國(guó)-山東DLZ
include "/usr/local/bind/etc/view/default_view.conf";

??step5:配置acl文件如下:

[root@study acl]# cat CMCC_CN_Shandong_acl.conf
acl CMCC_CN_Shandong{
    {192.168.136.255; 192.168.137.1;};
};
[root@study acl]# cat CUCC_CN_Shandong_acl.conf
acl CUCC_CN_Shandong{
        192.168.137.2/32;
};
[root@study acl]# cat default_acl.conf
acl default{
    0.0.0.0/0;
};
[root@study acl]#

??step6:配置view文件如下:

[root@study view]# cat CMCC_CN_Shandong_view.conf
view "CMCC_CN_Shandong_view" {
        match-clients {CMCC_CN_Shandong;};
        dlz "Mysql zone" {
                database "mysql
                {host=127.0.0.1 dbname=example ssl=false port=3306 user=root pass=com}
                {select zone from dns_records where zone = '$zone$' and (view = 'CMCC' and country = 'CN' and province = 'Shandong' or view = 'DEFAULT') limit 1}
                {select ttl, type, mx_priority, case when lower(type)='txt' then concat('\"', data, '\"') when lower(type)='soa' then concat_ws(' ', data, resp_person, serial, refresh, retry, expire, minimum) else data end as mydata from dns_records where zone= '$zone$' and host = '$record$' and (view = 'CMCC' and country = 'CN' and province = 'Shandong' or view = 'DEFAULT')}
                {}
                {}
                {}
                {update data_count set count = count + 1 where zone ='$zone$' and (view = 'CMCC' and country = 'CN' and province = 'Shandong' or view = 'DEFAULT')}";
        };
};

[root@study view]# cat CUCC_CN_Shandong_view.conf
view "CUCC_CN_Shandong_view" {
        match-clients {CUCC_CN_Shandong;};
        dlz "Mysql zone" {
                database "mysql
                {host=127.0.0.1 dbname=example ssl=false port=3306 user=root pass=com}
                {select zone from dns_records where zone = '$zone$' and (view = 'CUCC' and country = 'CN' and province = 'Shandong' or view = 'DEFAULT') limit 1}
                {select ttl, type, mx_priority, case when lower(type)='txt' then concat('\"', data, '\"') when lower(type)='soa' then concat_ws(' ', data, resp_person, serial, refresh, retry, expire, minimum) else data end as mydata from dns_records where zone= '$zone$' and host = '$record$' and (view = 'CUCC' and country = 'CN' and province = 'Shandong' or view = 'DEFAULT')}
                {}
                {}
                {}
                {update data_count set count = count + 1 where zone ='$zone$' and (view = 'CUCC' and country = 'CN' and province = 'Shandong' or view = 'DEFAULT')}";
        };
};
[root@study view]# cat default_view.conf
view "default_view" {
        match-clients {default;};
        dlz "Mysql zone" {
                database "mysql
                {host=127.0.0.1 dbname=example ssl=false port=3306 user=root pass=com}
                {select zone from dns_records where zone = '$zone$' and view = 'DEFAULT' limit 1}
                {select ttl, type, mx_priority, case when lower(type)='txt' then concat('\"', data, '\"') when lower(type)='soa' then concat_ws(' ', data, resp_person, serial, refresh, retry, expire, minimum) else data end as mydata from dns_records where zone= '$zone$' and host = '$record$' and view = 'DEFAULT'}
                {}
                {}
                {}
                {update data_count set count = count + 1 where zone ='$zone$' and view = 'DEFAULT'}";
        };
};
[root@study view]#

2.3 配置數(shù)據(jù)庫(kù)內(nèi)容,包括建表語(yǔ)句萄金,以及插入語(yǔ)句

??step1:建表語(yǔ)句蟀悦,創(chuàng)建dns_records表,作為BIND9的主要域名解析依據(jù)

service mysqld start
mysql -u root -p  //設(shè)置mysql的密碼
mysql> create database example;    //建立example數(shù)據(jù)庫(kù)
use example;
CREATE TABLE `dns_records` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,
  `zone` varchar(255) NOT NULL,
  `host` varchar(255) NOT NULL DEFAULT '@',
  `type` enum('A','MX','CNAME','NS','SOA','PTR','TXT','AAAA','SVR','URL') NOT NULL,
  `data` varchar(255) DEFAULT NULL,
  `ttl` int(11) NOT NULL DEFAULT '3600',
  `mx_priority` int(11) DEFAULT NULL,
  `view` char(20) NOT NULL DEFAULT 'DEFAULT' COMMENT 'name of ISP',
  `country` char(10) NOT NULL DEFAULT 'DEFAULT',
  `province` char(30) NOT NULL DEFAULT 'DEFAULT',
  `priority` tinyint(3) unsigned NOT NULL DEFAULT '255',
  `refresh` int(11) NOT NULL DEFAULT '28800',
  `retry` int(11) NOT NULL DEFAULT '14400',
  `expire` int(11) NOT NULL DEFAULT '86400',
  `minimum` int(11) NOT NULL DEFAULT '86400',
  `serial` bigint(20) NOT NULL DEFAULT '20210810',
  `resp_person` varchar(64) NOT NULL DEFAULT 'ddns.net',
  `primary_ns` varchar(64) NOT NULL DEFAULT 'ns.ddns.net.',
  `data_count` int(11) NOT NULL DEFAULT '0',
  `created_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `updated_time` datetime NOT NULL DEFAULT CURRENT_TIMESTAMP,
  `deleted` tinyint(4) NOT NULL DEFAULT '0' COMMENT '0 normal, 1 deleted',
  PRIMARY KEY (`id`),
  KEY `type` (`type`),
  KEY `host` (`host`),
  KEY `zone` (`zone`)
) ENGINE=MyISAM AUTO_INCREMENT=11 DEFAULT CHARSET=utf8;

??step2:向dns_records表中插入數(shù)據(jù)

# 配置正向解析的數(shù)據(jù)包括一條SOA記錄捡絮,一條NS記錄熬芜,一條A記錄,兩條測(cè)試用記錄福稳,一個(gè)CNAME涎拉,一個(gè)A記錄
INSERT INTO `example`.`dns_records`(`zone`, `host`, `type`, `data`, `ttl`, `mx_priority`, `view`, `country`, `province`, `priority`, `refresh`, `retry`, `expire`, `minimum`, `serial`, `resp_person`, `primary_ns`, `data_count`) VALUES ('bboyxxx.top', '@', 'SOA', 'ns1', 86400, NULL, 'DEFAULT', 'DEFAULT', 'DEFAULT', 255, 3600, 15, 86400, 3600, 2016111600, 'node02.example.com.', 'node02.example.com.', 0);
INSERT INTO `example`.`dns_records`(`zone`, `host`, `type`, `data`, `ttl`, `mx_priority`, `view`, `country`, `province`, `priority`, `refresh`, `retry`, `expire`, `minimum`, `serial`, `resp_person`, `primary_ns`, `data_count`) VALUES ('bboyxxx.top', 'ns1', 'A', '117.73.10.239', 86400, NULL, 'DEFAULT', 'DEFAULT', 'DEFAULT', 255, 3600, 15, 86400, 3600, 2016111600, 'node02.example.com.', 'node02.example.com.', 0);
INSERT INTO `example`.`dns_records`(`zone`, `host`, `type`, `data`, `ttl`, `mx_priority`, `view`, `country`, `province`, `priority`, `refresh`, `retry`, `expire`, `minimum`, `serial`, `resp_person`, `primary_ns`, `data_count`) VALUES ('bboyxxx.top', '@', 'NS', 'ns1.bboyxxx.top.', 86400, NULL, 'DEFAULT', 'DEFAULT', 'DEFAULT', 255, 3600, 15, 86400, 3600, 2016111600, 'node02.example.com.', 'node02.example.com.', 0);
INSERT INTO `example`.`dns_records`(`zone`, `host`, `type`, `data`, `ttl`, `mx_priority`, `view`, `country`, `province`, `priority`, `refresh`, `retry`, `expire`, `minimum`, `serial`, `resp_person`, `primary_ns`, `data_count`) VALUES ('bboyxxx.top', 'fc8f3da3c8a2925084c689e3229a0abb', 'CNAME', 'tudu.vinson.fun.wsdvs.com.', 86400, NULL, 'DEFAULT', 'DEFAULT', 'DEFAULT', 255, 3600, 15, 86400, 3600, 2016111600, 'node02.example.com.', 'node02.example.com.', 0);
INSERT INTO `example`.`dns_records`(`zone`, `host`, `type`, `data`, `ttl`, `mx_priority`, `view`, `country`, `province`, `priority`, `refresh`, `retry`, `expire`, `minimum`, `serial`, `resp_person`, `primary_ns`, `data_count`) VALUES ('bboyxxx.top', 'fc8f3da3c8a2925084c689e3229a0abb', 'A', '111.111.111.111', 3600, NULL, 'CMCC', 'CN', 'Shandong', 255, 28800, 14400, 86400, 86400, 20210810, 'ddns.net', 'ns.ddns.net.', 0);

3. 來(lái)吧展示

??host系統(tǒng)為windows操作系統(tǒng),ipv4地址:192.168.137.1,打開(kāi)CMD直接用nslookup命令測(cè)試fc8f3da3c8a2925084c689e3229a0abb.bboyxxx.top的圆,根據(jù)上面配置的acl文件鼓拧,192.168.137.1這個(gè)地址配置在CMCC_CN_Shandong_acl.conf里面,那么按照CUCC_CN_Shandong_view.conf這個(gè)view文件的配置越妈,應(yīng)該返回的結(jié)果是111.111.111.111

C:\Users\xxxxxx>nslookup
默認(rèn)服務(wù)器:  JTBJNEWDC002.home.xxxxxx.com
Address:  10.150.1.11

> server 192.168.137.111
默認(rèn)服務(wù)器:  [192.168.137.111]
Address:  192.168.137.111

>  fc8f3da3c8a2925084c689e3229a0abb.bboyxxx.top
服務(wù)器:  [192.168.137.111]
Address:  192.168.137.111

名稱(chēng):    fc8f3da3c8a2925084c689e3229a0abb.bboyxxx.top
Address:  111.111.111.111

??VM機(jī)為Linux操作系統(tǒng)季俩,ipv4地址:192.168.137.111,打開(kāi)terminal直接用nslookup命令測(cè)試fc8f3da3c8a2925084c689e3229a0abb.bboyxxx.top,根據(jù)上面配置的acl文件梅掠,192.168.137.111這個(gè)地址配置在default_acl.conf里面酌住,那么按照default_view.conf這個(gè)view文件的配置,應(yīng)該返回的結(jié)果是一個(gè)CNAME并解析成111.206.176.90

[root@study ~]# nslookup
> server 192.168.137.111
Default server: 192.168.137.111
Address: 192.168.137.111#53
>
> fc8f3da3c8a2925084c689e3229a0abb.bboyxxx.top
Server:         192.168.137.111
Address:        192.168.137.111#53

fc8f3da3c8a2925084c689e3229a0abb.bboyxxx.top    canonical name = tudu.vinson.fun.wsdvs.com.
Name:   tudu.vinson.fun.wsdvs.com
Address: 111.206.176.90

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末阎抒,一起剝皮案震驚了整個(gè)濱河市酪我,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌且叁,老刑警劉巖都哭,帶你破解...
    沈念sama閱讀 219,188評(píng)論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡欺矫,警方通過(guò)查閱死者的電腦和手機(jī)纱新,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,464評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)穆趴,“玉大人脸爱,你說(shuō)我怎么就攤上這事∥疵茫” “怎么了阅羹?”我有些...
    開(kāi)封第一講書(shū)人閱讀 165,562評(píng)論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)教寂。 經(jīng)常有香客問(wèn)我捏鱼,道長(zhǎng),這世上最難降的妖魔是什么酪耕? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 58,893評(píng)論 1 295
  • 正文 為了忘掉前任导梆,我火速辦了婚禮,結(jié)果婚禮上迂烁,老公的妹妹穿的比我還像新娘看尼。我一直安慰自己,他們只是感情好盟步,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,917評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布藏斩。 她就那樣靜靜地躺著,像睡著了一般却盘。 火紅的嫁衣襯著肌膚如雪狰域。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 51,708評(píng)論 1 305
  • 那天黄橘,我揣著相機(jī)與錄音兆览,去河邊找鬼。 笑死塞关,一個(gè)胖子當(dāng)著我的面吹牛抬探,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播帆赢,決...
    沈念sama閱讀 40,430評(píng)論 3 420
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼小压,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了椰于?” 一聲冷哼從身側(cè)響起怠益,我...
    開(kāi)封第一講書(shū)人閱讀 39,342評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎廉羔,沒(méi)想到半個(gè)月后溉痢,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,801評(píng)論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡憋他,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,976評(píng)論 3 337
  • 正文 我和宋清朗相戀三年孩饼,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片竹挡。...
    茶點(diǎn)故事閱讀 40,115評(píng)論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡镀娶,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出揪罕,到底是詐尸還是另有隱情梯码,我是刑警寧澤,帶...
    沈念sama閱讀 35,804評(píng)論 5 346
  • 正文 年R本政府宣布好啰,位于F島的核電站轩娶,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏框往。R本人自食惡果不足惜鳄抒,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,458評(píng)論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望椰弊。 院中可真熱鬧许溅,春花似錦、人聲如沸秉版。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 32,008評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)清焕。三九已至并蝗,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間秸妥,已是汗流浹背借卧。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 33,135評(píng)論 1 272
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留筛峭,地道東北人铐刘。 一個(gè)月前我還...
    沈念sama閱讀 48,365評(píng)論 3 373
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像影晓,于是被迫代替她去往敵國(guó)和親镰吵。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,055評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容