|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的好朋友们!DNS智能剖析的本色:基于分歧的来历,dns办事器前往分歧的了局
DNS战略剖析最基础的功效是能够智能的判别会见您网站的用户,然后依据分歧的会见者把您的域名分离剖析成分歧的IP地点。如会见者是网通用户,DNS战略剖析办事器会把你的域名对应的网通IP地点剖析给这个会见者。DNS战略剖析办事器会把您域名对应的电信IP地点剖析给这个会见者。
实行情况:dns办事器是在centos6.432位操纵体系上完成的,两头用了一台H3C的防火墙。Internet用的是一台电脑pc摹拟的。
实行顶用到的mysql-5.5.15-linux2.6-i686.tar.gz能够到mysql的官方网站www.mysql.com下载,
也能够到http://pan.百度.com/disk/home?frm=hao123下载,
bind-9.8.6-P1.tar.gz能够到http://pan.百度.com/disk/home?frm=hao123下载。
收集拓扑图以下:
实验了局预期:内网用户剖析出来的地点是192.168.80.12,外网地点剖析出来的地点是61.130.130.1.
[root@localhost~]#tar-zxvfmysql-5.5.15-linux2.6-i686.tar.gz-C/usr/local/
把源码解压到/usr/local/目次下
[root@localhost~]#cd/usr/local/
[root@localhostlocal]#ln-smysql-5.5.15-linux2.6-i686mysql
进进解压好的目次,为了便利会见给此目次创立一个快速体例
[root@localhostlocal]#cdmysql
[root@localhostmysql]#vimINSTALL-BINARY
进进mysql目次,里边有一个INSTALL-BINARY文件,这是个装置匡助文档,能够看到以下步调先容:
[root@localhost~]#groupaddmysqlsts
[root@localhost~]#useradd-r-gmysqlmysql
创立一个mysql组并增加一个账号mysql
[root@localhostmysql]#chown-Rmysql.
[root@localhostmysql]#chgrp-Rmysql.
改动一切文件的一切者和一切组都改成mysql
[root@localhostmysql]#scripts/mysql_install_db--user=mysql
以sql的身份来初始化数据库
[root@localhostmysql]#chown-Rroot.
[root@localhostmysql]#chown-Rmysqldata
再把一切者和一切组改返来
[root@localhostmysql]#cpsupport-files/my-medium.cnf/etc/my.cnf
将support-files/my-medium.cnf拷贝到/etc/my.cnf,是不是掩盖选择y。
[root@localhostmysql]#cpsupport-files/mysql.server/etc/init.d/mysqld
[root@localhostmysql]#chmoda+x/etc/init.d/mysqld
给mysqld实行权限
[root@localhostmysql]#servicemysqldstart
启动办事mysqld。
发明呈现毛病:
假如呈现此毛病的话,就把方才做的下令从头实行一遍:
[root@localhostmysql]#chown-Rmysql.
[root@localhostmysql]#chgrp-Rmysql.
[root@localhostmysql]#scripts/mysql_install_db--user=mysql
[root@localhostmysql]#chown-Rroot.
[root@localhostmysql]#chown-Rmysqldata
后边拷贝的那两步就不必重做了,然后再次入手下手mysqld办事,运转乐成!
[root@localhostmysql]#netstat-tupln|grep3306
检察mysqld端口是不是翻开
端口已翻开。
[root@localhostmysql]#chkconfig--addmysqld
[root@localhostmysql]#chkconfigmysqldon
将mysqld设为开机主动启动。
[root@localhostmysql]#vim/etc/profile
PATH=$PATH:/usr/local/mysql/bin
为了便利利用目次下的bin文件,将它到场到体系文件中:
[root@localhostmysql]#./etc/profile
从头读取profile文件:(从头登录也能够)
[root@localhostmysql]#mysqladmin-uroot-ppassword123然后间接回车
给mysql创立一个***用户,暗码为123
到这里,mysql已装置终了。
接下里装置bind:
[root@localhost~]#tar-zxvfbind-9.8.6-P1.tar.gz-C/usr/local/src/
解压bind装置包
[root@localhost~]#cd/usr/local/src/
[root@localhostsrc]#ll
total4
drwxrwxr-x.1210132wheel4096Oct1608:09bind-9.8.6-P1
[root@localhostsrc]#cdbind-9.8.6-P1/
切换到bind目次
[root@localhostbind-9.8.6-P1]#./configure--prefix=/usr/local/bind9--with-dlz-mysql=/usr/local/mysql--enable-threads=no--disable-openssl-version-check
[root@localhostbind-9.8.6-P1]#make&&makeinstall实行make下令已makeinstall
[root@localhostbin]#cd/usr/local/bind9/
进进此目次,此目次为bind的装置目次
[root@localhostbind9]#cdsbin/
[root@localhostsbin]#./rndc-confgen-a
实行此下令会在/usr/local/bind9/etc/下发生一个rndc.key文件
[root@localhostsbin]#./rndc-confgen>../etc/named.conf
天生named.conf文件
以上两步最好不要在终端中做,由于在终端中做文件生的出格慢,最好是间接在体系中实行下令。
如今进进/usr/local/bind9/etc/目次会发明个中有三个文件:
进进named.conf文件:
往失落第20行至23行前边的#:
修正option以下:
directory"/usr/local/bind9/etc/";
pid-file"/usr/local/bind9/var/run/named.pid";
allow-query{any;};
recursionno;
version"gaint-d1"
在此文件中创立“lan”和“wan”两个会见把持链表:
并在此文件中增加以下内容:
view"lan-view"{
match-clients{lan;};
dlz"Mysqlzone"{
database"mysql
{host=127.0.0.1dbname=mydatassl=falseuser=rootpass=123}
{selectzonefromlan_dns_recordswherezone=$zone$}
{selectttl,type,mx_priority,casewhenlower(type)=txtthenconcat(",data,")32whenlower(type)=soathenconcat_ws(,data,resp_person,serial,refresh,retry,expire,minimum)33elsedataendfromlan_dns_recordswherezone=$zone$andhost=$record$}";
};
};
view"wan-view"{
match-clients{wan;};
dlz"Mysqlzone"{
database"mysql
{host=127.0.0.1dbname=mydatassl=falseuser=rootpass=123}
{selectzonefromwan_dns_recordswherezone=$zone$}
{selectttl,type,mx_priority,casewhenlower(type)=txtthenconcat(",data,")
whenlower(type)=soathenconcat_ws(,data,resp_person,serial,refresh,retry,expire,minimum)
elsedataendfromwan_dns_recordswherezone=$zone$andhost=$record$}";
};
到此处为止,bind也基础装置完成。
接上去给数据库中增加内容:
[root@localhostetc]#mysql-uroot-p
Enterpassword:
以***身份登录mysql
mysql>createdatabasemydata;
创立数据库mydate
mysql>usemydata;
翻开mydate
创立lan表:
createtablelan_dns_records(
zonevarchar(255),
hostvarchar(255),
typevarchar(255),
datavarchar(255),
ttlint(11),
mx_priorityvarchar(255),
refreshint(11),
retryint(11),
expireint(11),
minimumint(11),
serialbigint(20),
resp_personvarchar(255),
primary_nsvarchar(255)
);
创立wan表:
createtablewan_dns_records(
zonevarchar(255),
hostvarchar(255),
typevarchar(255),
datavarchar(255),
ttlint(11),
mx_priorityvarchar(255),
refreshint(11),
retryint(11),
expireint(11),
minimumint(11),
serialbigint(20),
resp_personvarchar(255),
primary_nsvarchar(255)
);
能够看到如今数据库中有以下表:
mysql>insertintolan_dns_records(zone,host,type,data,ttl,retry)values(abc.com,www,A,192.168.80.12,86400,15);
mysql>insertintowan_dns_records(zone,host,type,data,ttl,retry)values(abc.com,www,A,61.130.130.1,86400,15)
两表格中各拔出一笔记录。
此时可看到数据库中的两个表中有以下数据:
利用/usr/local/bind9/sbin/named-g-d1-c/usr/local/bind9/etc/named.conf指令测试:
发明堕落,短少一个libmysqlclient.so.18库文件
实在这个文件时存在的,在/usr/local/mysql/lib/目次下,
[root@localhostsbin]#vim/etc/ld.so.conf.d/mysql.conf
在/etc/ld.so.conf.d/下任意建一个文件,好比叫做mysql.conf然后将此库文件的路径写进:
/usr/local/mysql/lib/
[root@localhostsbin]#ldconfig
实行ldconfig革新缓存。
[root@localhostetc]#ifconfigeth0:061.130.130.10netmask255.255.255.0
给网卡eth0再加个地点61.130.130.0/24网段内的,以便测试之用。
[root@localhostetc]#digwww.abc.com@192.168.80.12
[root@localhostetc]#digwww.abc.com@61.130.130.10
测试了局以下:
然落后进防火墙设置:
[H3C]inteth0/0
[H3C-Ethernet0/0]ipadd192.168.80.254255.255.255.0
[H3C-Ethernet0/0]inteth0/4
[H3C-Ethernet0/4]ipadd61.130.130.100255.255.255.0
[H3C-Ethernet0/0]quit
[H3C]firewallzonetrust
[H3C-zone-trust]addinteth0/4
[H3C-zone-trust]quit
[H3C]firewallzoneuntrust
[H3C-zone-untrust]addinteth0/0
[H3C-Ethernet0/4]natserverprotocoludpglobal61.130.130.153inside192.168.80.1253
设置完成后能够测试一下:
测试乐成!
如果您觉得本篇CentOSLinux教程讲得好,请记得点击右边漂浮的分享程序,把好文章分享给你的小伙伴们! |
|