首页 > 代码库 > dns在企业网络中的应用

dns在企业网络中的应用

主辅dns服务器:

41E864FD5F974CF8B18C638AF67C8FD9 

dns服务器能够自动备份主dns服务器的数据,当主dns服务器损坏时,辅dns服务器进行工作。

实验步骤:

[root@wang ~]# mkdir /media/cdrom   安装所需要的dns

[root@wang ~]# mount /dev/cdrom /media/cdrom

[root@wang ~]# yum --disablerepo=\* --enablerepo=c6-media install bind bind-chroot bind-utils -y

[root@wang ~]# cd /var/named/chroot/etc/

[root@wang etc]# service named start    开启dns服务器

[root@wang etc]# vim named.conf     编辑配置文件

options {

        listen-on port 53 { any; };     改为any

        listen-on-v6 port 53 { ::1; };

        directory       "/var/named";

        dump-file       "/var/named/data/cache_dump.db";

        statistics-file "/var/named/data/named_stats.txt";

        memstatistics-file "/var/named/data/named_mem_stats.txt";

        allow-query     { any; };      改为any

        forwarders       { 192.168.2.100; };

        recursion yes;

[root@wang etc]# vim named.rfc1912.zones     编辑区域配置文件

zone "abc.com" IN {

        type master;

        file "abc.com.zone";

        allow-update { none; };

};                            //增加此区域

[root@wang etc]# cd ../var/named/     切换目录

[root@wang named]# cp -p named.localhost abc.com.zone   拷贝一个区域文件进行修改

[root@wang named]# vim abc.com.zone

$TTL 1D

@       IN SOA  ns.abc.com. rname.invalid. (

                                        1       ; serial

                                        2M      ; refresh//每隔2分钟同步一次(实验需要)

                                        1M      ; retry  //每隔1分钟重试一次

                                        1W      ; expire

                                        3H )    ; minimum

@       IN NS   ns.abc.com.

ns      IN A    192.168.2.50

www     IN A    1.1.1.1

ftp     IN A    2.2.2.2

[root@wang named]# service iptables stop   关闭防火墙

[root@wang named]# setenforce 0   设置访问策略

再打开一台centos,做辅dns服务器

[root@wang ~]# mkdir /media/cdrom   安装所需要的dns

[root@wang ~]# mount /dev/cdrom /media/cdrom

[root@wang ~]# yum --disablerepo=\* --enablerepo=c6-media install bind bind-chroot bind-utils -y

[root@wang ~]# cd /var/named/chroot/etc/

[root@wang etc]# service named start    开启dns服务器

[root@station21 etc]# vim named.rfc1912.zones   编辑区域配置文件

 zone "abc.com" IN {

          type slave; 26         masters { 192.168.2.50; };

          file "slaves/abc.com.zone";

  };            //添加此配置参数    

[root@station21 etc]# rndc reload     更新配置

[root@station21 ~]# tail -f /var/log/messages   查看日志,传输成功

Aug 16 23:40:01 station21 named[1492]: zone abc.com/IN: transferred serial 1

Aug 16 23:40:01 station21 named[1492]: transfer of ‘abc.com/IN‘ from 192.168.2.50#53: Transfer completed: 1 messages, 6 records, 183 bytes, 0.002 secs (91500 bytes/sec)

[root@station21 etc]# cd ../var/named/

[root@station21 named]# cd slaves/

[root@station21 slaves]# ll

total 4

-rw-r--r-- 1 named named 331 Aug 16 23:40 abc.com.zone   找到区域文件

主服务器更新dns地址信息。

[root@wang named]# vim abc.com.zone

07C86F365A6948829E6BE27D9F96AC75 

[root@wang named]# rndc reload

dns服务器同步成功

Aug 16 23:53:18 station21 named[1492]: zone abc.com/IN: Transfer started.

Aug 16 23:53:18 station21 named[1492]: transfer of ‘abc.com/IN‘ from 192.168.2.50#53: connected using 192.168.2.100#54422

Aug 16 23:53:18 station21 named[1492]: zone abc.com/IN: transferred serial 2

Aug 16 23:53:18 station21 named[1492]: transfer of ‘abc.com/IN‘ from 192.168.2.50#53: Transfer completed: 1 messages, 7 records, 204 bytes, 0.002 secs (102000 bytes/sec)

Dns授权与转发

2台dns服务器在不同的地区,一台是父域dns服务器,另一台是子域dns服务器,父域dns服务器授权给子域dns服务器进行服务和转发

实验拓扑:

FEEE0860EE734362AAB5295C148076EA 

实验步骤:

父域用windowserver2003进行配置:

控制面板→添加和删除程序→网络服务→域名系统,确定进行安装

然后打开dns

D0F54962366E47ABB40B338929D182F5 

右键正向查找区域,新建区域下一步

0B961C3EC2F1422BBBD321326B3B1A19 

下一步

D7A5D163C4614D1EB11C3BCA0E9D5478 

输入区域名称为abc.com

68E49E54E398489B9379EF0A49781045 

下一步,再下一步

5B8110ED8C4846E6B484299FC3F980F3 

完成

B4D270EB3F294903BF7901AA281999EE 

右键abc.com 属性

改起事授权机构为:

4B523B15DBF14C8FBCCD62D31514CE41 

设置名称服务器

781D0676735D410A8D3205AD8FB06C49 

再右键abc.com  新建域(创建子域)

C96E5C1A399B4DE3BADE70C25F9A4EEB 

创建bj子域

在父域当中添加a记录  右键abc.com 新建主机

E293890C04614529BE05E5A8240E6112 

右键bj子域,新建主机

64D03E9A46434D8AAAB9A8C782430C9F 

右键abc.com 新建委派

4F3AE1A8210E4089AA1BDD9B968345A7 

委派sh.abc.com 域

23B7AB4D77114758BF86BD73DE232556 

输入委派信息

8FB0941D97F24C1E9188A277F8AADBD7 

下一步 , 完成

 sh子域用centos进行配置

[root@wang ~]# cd /var/named/chroot/etc

[root@wang etc]# service named start  开启dns服务器

[root@wang etc]# vim named.conf    编辑配置文档

options {

        listen-on port 53 { any; };         //改为any

        listen-on-v6 port 53 { ::1; };

        directory       "/var/named";

        dump-file       "/var/named/data/cache_dump.db";

        statistics-file "/var/named/data/named_stats.txt";

        memstatistics-file "/var/named/data/named_mem_stats.txt";

        allow-query     { any; };      //改为any

        forwarders       { 192.168.2.100; };   //查找不到dns将进行转发的ip

        recursion yes;

[root@wang etc]# vim named.rfc1912.zones  编辑区域声明文件

zone "sh.abc.com" IN {

        type master;

        file "sh.abc.com.zone";

        allow-update { none; };     //新增此条目

[root@wang etc]# cd /var/named/chroot/var/named/    进入目录

[root@wang named]# cp -p named.localhost sh.abc.com.zone   拷贝区域文件以供修改

[root@wang named]# vim sh.abc.com.zone   编辑区域文件

$TTL 1D

@       IN SOA  ns.sh.abc.com. rname.invalid. (

                                        1       ; serial

                                        1D      ; refresh

                                        1H      ; retry

                                        1W      ; expire

                                        3H )    ; minimum

@       IN NS   ns.sh.abc.com.

ns      IN A    192.168.2.50

www     IN A    3.3.3.3

[root@wang named]# named-checkconf /var/named/chroot/etc/named.conf   检查主配置文档是否有问题

[root@wang named]#named-checkzonesh.abc.com.zone /var/named/chroot/var/named/sh.abc.com.zone   检查区域文件配置是否正确

测试机:

打开一台window sever2003 做测试机

先将dns改为192.168.2.100 

DD0F147CFF4248C89F5ECB585A8E9AF6 

www.abc.com 域名解析成功

2FFE96DCED4C48AC93590BAAC86FB9BA 

www.bj.abc.com 域名解析成功

2304948CD6084E60B4363A94D0BFEC71 

www.sh.abc.com 解析成功

然后将测试机的指向设置为192.168.2.50

9CA95934BAA044D9A92FD0A70B728884 

www.sh.abc.com解析成功    其他的也解析成功

A74169FEC96F4D63B84C86D9F52FF75F 

98E0BEA7154840C9BFD77C1C346F1002 

智能dns(视图的使用)

拓扑图:

4EC354B132C04E748A246A2F1D8DAAE8 

实验目的:内网的用户用内部dns访问www.abc.com   外网的用户将dns指向192.168.20.1经过dnat转换用域名访问内网的的web服务器

实验步骤:

DNS服务器:

[root@wang ~]# mkdir /media/cdrom   安装所需要的dns

[root@wang ~]# mount /dev/cdrom /media/cdrom

[root@wang ~]# yum --disablerepo=\* --enablerepo=c6-media install bind bind-chroot bind-utils -y

[root@wang ~]# cd /var/named/chroot/etc/

[root@wang etc]# service named start    开启dns服务器

[root@wang etc]# vim named.conf  编辑dns服务器的配置文档

options {

        listen-on port 53 { any; };      //将127.0.0.1 改为any

        listen-on-v6 port 53 { ::1; };

        directory       "/var/named";

        dump-file       "/var/named/data/cache_dump.db";

        statistics-file "/var/named/data/named_stats.txt";

        memstatistics-file "/var/named/data/named_mem_stats.txt";

        allow-query     { any; };    //将127.0.0.1 改为any

        forwarders       { 192.168.2.100; };

        recursion yes;

[root@wang etc]# cd /usr/share/doc/bind-9.8.2/sample/etc    //进入样例文件夹查看样例文件
514A706E324D45B9AE0AEAB95ECF134F

[root@wang etc]# vim named.conf     根据样例编辑配置文件

acl lan-user {          //内网用户使用

         192.168.2.0/24;

};

acl wan-user {          //外网用户使用

         any;

};                 //添加视图访问列表

view    "lan-view"

{

         match-clients  { lan-user; };

         recursion yes;

         zone "." IN {

         type hint;

         file "named.ca";

};

 

include "/etc/named.rfc1912.zones";

};

view    "wan-view"           //添加一个wan视图(外网用户使用)

{

         match-clients  { wan-user; };

         zone "." IN {

         type hint;

         file "named.ca";

         };  

         zone "abc.com" IN {

         type master;

         file "abc.com.wan";

};

};    

[root@wang etc]# vim named.rfc1912.zones   写入区域

zone "abc.com" IN {

        type master;

        file "abc.com.lan";

        allow-update { none; };

};              //添加一个区域即可(模拟访问的是abc.com区域)

[root@wang etc]# cd ../var/named/    //进入区域文件目录

[root@wang named]# cp -p named.localhost abc.com.lan    复制区域文件(新做区域文件,复制其他的修改更方便)

[root@wang named]# vim abc.com.lan    编辑此区域文件

$TTL 1D

@       IN SOA  ns.abc.com. rname.invalid. (

                                        1       ; serial

                                        1D      ; refresh

                                        1H      ; retry

                                        1W      ; expire

                                        3H )    ; minimum

@       IN NS   ns.abc.com.

ns      IN A    192.168.2.50

www     IN A    192.168.2.100

改为如此即可

[root@wang named]# cp -p abc.com.lan abc.com.wan    再拷贝个wan区域进行编辑

[root@wang named]# vim abc.com.wan     

$TTL 1D

@       IN SOA  ns.abc.com. rname.invalid. (

                                        1       ; serial

                                        1D      ; refresh

                                        1H      ; retry

                                        1W      ; expire

                                        3H )    ; minimum

@       IN NS   ns.abc.com.

ns      IN A    192.168.2.50

www     IN A    192.168.20.1

这里将www.abc.com的域名

[root@wang named]# rndc reload    dns服务器进行更新

server reload successful

Web服务器:

windowserver 2003 web服务器

到控制面板

E7599361B40A46F7ADFCECB315DB0E3D添加和删除程序

然后添加和删除windows组件

75271661E46F497ABF3BEDAF446420A8 

找打应用服务器,前面不打勾进去

4C917C864D544040BFF170FC88320A17 

找到iis打勾确定,等待安装完成(需要有安装光盘的镜像)

然后建个小html文件测试使用

1C32F152421D4922B6CA992352D399C0 

如图所示

打开iis服务管理器,网站→默认站点→属性

将主目录更改为刚才网页文件放的目录

D69EA41DC10D40B1AE2F976DFFC12840 

将默认文档设置为index.html

然后可以浏览测试下

防火墙配置(用centos替代)

 再打开一台centos虚拟机,添加2块网卡,一块是仅主机,一块桥接

[root@station21 ~]# ifconfig eth0 192.168.2.1   仅主机网卡地址

[root@station21 ~]# ifconfig eth1 192.168.20.1   桥接网卡地址

[root@station21 ~]# vim /etc/sysctl.conf     打开数据包转发能力

877994147151436C84258CF3606C7614   将其改为1

然后将web服务器和dns服务器的网关全部设置为192.168.2.1

[root@station21 ~]# iptables -t nat -A PREROUTING -d 192.168.20.1 -p udp --dport 53 -i eth1 -j DNAT --to 192.168.101    做dnsDNAT

[root@station21 ~]# iptables -t nat -A PREROUTING  -d 192.168.20.1 -i eth1 -p tcp --dport 80 -j DNAT --to 192.168.2.100        web的DNAT

进行测试:

再打开一台虚拟机,dns设置为192.168.20.1 ip地址设置为192.168.20.0网段(外网),桥接模式

72C758BBD5EE4E2E8064327B35D6301E 

然后访问www.abc.com

3501933FF6C04C9790F29AC15DA39044 

然后将ip地址设置为内网,dns设置为192.168.2.50,仅主机模式

CC0E01CC2644486E818E176AC157F4FF 

访问www.abc.com

2141F38EED07490D81ED3A5DBDB2D965 

 

实验成功

DLZ对视图的实现

bind的一种补丁,目的是将bindmysql结合在一起使用

E7476F1DE09248F8B0B2C2994155C072 

[root@wang ~]# mkdir /media/cdrom   

[root@wang ~]# mount /dev/cdrom /media/cdrom

[root@wang ~]# yum --disablerepo=\* --enablerepo=c6-media groupinstall "Development tools" "Server Platform Development" -y     安装需要的开发工具包来安装mysql

mysql-5.5.15-linux2.6-i686.tar.gz 需要下载mysql软件包进行安装

bind-9.8.6-P1.tar.gz  需要bind源码包

[root@wang ~]# tar -zxvf mysql-5.5.15-linux2.6-i686.tar.gz -C /usr/local/   拆解mysql

[root@wang ~]# rpm -qa |grep mysql    在安装之前查看是否安装有mysql包,有的话请卸载掉

[root@wang ~]# cd /usr/local/  切换目录

[root@wang local]# ln -s mysql-5.5.15-linux2.6-i686 mysql  将目标文件夹做个短链接

[root@wang local]# cd mysql   切换mysql目录

[root@wang mysql]# vim INSTALL-BINARY   查看帮助文档进行安装

 shell> useradd -r -g mysql mysql

 80 shell> cd /usr/local

 81 shell> tar zxvf /path/to/mysql-VERSION-OS.tar.gz

 82 shell> ln -s full-path-to-mysql-VERSION-OS mysql

 83 shell> cd mysql

 84 shell> chown -R mysql .

 85 shell> chgrp -R mysql .

 86 shell> scripts/mysql_install_db --user=mysql

 87 shell> chown -R root .

 88 shell> chown -R mysql data

[root@wang ~]# groupadd mysql     添加mysql

[root@wang ~]# useradd -r -g mysql mysql  添加系统账号mysql组为mysql

[root@wang mysql]# setenforce 0  在继续下一步之前最好关闭selinux

[root@wang mysql]# service iptables stop   关闭防火墙

[root@wang mysql]# chown -R mysql:mysql .  改变当前所有用户组均为mysql

[root@wang mysql]# scripts/mysql_install_db --user=mysql   对mysql数据库的data文件夹里的文件进行初始化

CA2CA50B4F2C428A96204AF26884A154 

如果提示少了一个库文件,请安装相应的库文件

[root@wang mysql]# ll /media/cdrom/Packages/ |grep libaio

-r--r--r--. 3 root root    21616 Jul  3  2011 libaio-0.3.107-10.el6.i686.rpm

-r--r--r--. 2 root root    13524 Jul  3  2011 libaio-devel-0.3.107-10.el6.i686.rpm  查找一下有2个包,安装上去

[root@wang mysql]# yum --disablerepo=\* --enablerepo=c6-media install libaio* -y  安装

[root@wang mysql]# scripts/mysql_install_db --user=mysql  重新执行

[root@wang mysql]# ll data/mysql/  查看下已经有了数据

[root@wang mysql]# chown -R root .  将当前所有对象所有者改为管理员

[root@wang mysql]# chown -R mysql data/  将data的所有者改为mysql

[root@wang mysql]# cd support-files/   

[root@wang support-files]# ll

D70DC4D7318B43C0992523DCF99EFE09 

my-large.cnf  针对内存大的环境    my-small.cnf针对内存小的环境

my-medium.cnf  针对2g左右的内存

[root@wang support-files]# cp my-medium.cnf /etc/my.cnf   将文件拷贝过去

[root@wang support-files]# cp mysql.server /etc/init.d/mysqld  将启动文件也拷贝过去

[root@wang support-files]# chmod a+x /etc/init.d/mysqld   将文件权限改为可执行

[root@wang support-files]# service mysqld start  开启mysql

[root@wang support-files]# chkconfig --add mysqld

[root@wang support-files]# chkconfig mysqld on   加入到开机启动项

[root@wang support-files]# netstat -tupln |grep mysqld

tcp        0      0 0.0.0.0:3306                0.0.0.0:*                   LISTEN      2717/mysqld       查看端口,已经启动

[root@wang mysql]# vim /etc/profile   编辑path目录

PATH=$PATH:/usr/local/mysql/bin     新加入path路径

[root@wang mysql]# . /etc/profile  重新读取profile文件

[root@wang mysql]# mysql   访问mysql数据库

mysql> show databases;  查看数据库表

[root@wang mysql]# mysqladmin -u root -p password ‘123‘  给数据库添加管理员口令

[root@wang mysql]# mysql -u root -p   用口令登入

mysql> show databases;

mysql> use mysql;

 mysql> show tables;

mysql> desc user;

mysql> select user,host,password from user;

01696B87D2D2499BA2B30C21B8F6C40C 

查看到密码添加成功

mysql> \q  退出mysql

5940E16116284214A8DE8A211C6712A1 创建mydata数据库表格

mysql> use mydata;   选中数据库

mysql>create table lan_dns_records (

zone varchar (255),

host varchar (255),

type varchar (255),

data varchar (255),

ttl int(11),

mx_priority varchar (255),

refresh int(11),

retry int(11),

expire int(11),

minimum int(11),

serial bigint(20),

resp_person varchar (255),

primary_ns varchar (255)

);           创建内部用户的表格

mysql> create table wan_dns_records ( zone varchar (255), host varchar (255), type varchar (255), data varchar (255), ttl int(11), mx_priority varchar (255), refresh int(11), retry int(11), expire int(11), minimum int(11), serial bigint(20), resp_person varchar (255), primary_ns varchar (255) );

创建外部用户的dns表格

 

mysql> show tables;

+------------------+

| Tables_in_mydata |

+------------------+

| lan_dns_records  |

| wan_dns_records  |

+------------------+         出现了2张表

mysql> desc lan_dns_records;  进入lan表查看

mysql> \q

Bye

[root@wang mysql]# cd

[root@wang ~]# ll    回到系统,切换到管理员家目录

[root@wang ~]# cd /usr/local/mysql

[root@wang mysql]# vim /etc/ld.so.conf.d/mysql.conf  编辑一个库配置文件

/usr/local/mysql/lib     添加lib文件路径

[root@wang mysql]# ldconfig  刷新库配置文件

[root@wang mysql]# cd /usr/include/ 切换到include目录

[root@wang include]# ln -s /usr/local/mysql/include/ mysql   对include文件做个链接

[root@wang ~]# tar -zxvf bind-9.8.6-P1.tar.gz -C /usr/local/src/  解压bind

[root@wang ~]# cd /usr/local/src/bind-9.8.6-P1/  切换到解压的目录

[root@wang bind-9.8.6-P1]# ./configure --prefix=/usr/local/bind9 --with-dlz-mysql=/usr/local/mysql --enable-threads=no --disable-openssl-version-check

编译bind

[root@wang bind-9.8.6-P1]# make && make install  安装

[root@wang bind-9.8.6-P1]# cd /usr/local/bind9/   切换至bind9目录

[root@wang bind9]# vim /etc/profile   编辑profile文件

PATH=$PATH:/usr/local/mysql/bin:/usr/local/bind9/bin:/usr/local/bind9/sbin   添加path目录(在刚才添加的基础上)

[root@wang bind9]# . /etc/profile   更新库配置文件

在本地终端配置

[root@wang ~]# cd /usr/local/bind9/etc/

[root@wang ~]# rndc-confgen -a   生成钥匙文件将会产生一个钥匙文件

[root@wang bind9]# cd etc/

[root@wang etc]# rndc-confgen >>named.conf  将文件输出重定向named.conf

[root@wang etc]# cat rndc.key >>named.conf   将密钥导入到named.conf文件中

[root@wang etc]# vim named.conf  编辑配置文件

删除之前的密钥信息,除了新的密钥配置,其他修改为

acl "lan-user" {

192.168.2.0/24;

};

acl "wan-user" {

any;

};

recursion no;

version "gaint-d1";

allow-query-cache { any; };

};

view "lan-view" {

match-clients {lan-user;};

dlz "Mysql zone" {

database "mysql

{host=127.0.0.1 dbname=mydata ssl=false user=root pass=123}

{select zone from lan_dns_records where zone=‘$zone$‘}

else data end from lan_dns_records where zone=‘$zone$‘ and host=‘$record$‘}";

};

};

 

view "wan-view" {

match-clients {wan-user;};

dlz "Mysql zone" {

database "mysql

{host=127.0.0.1 dbname=mydata ssl=false user=root pass=123}

{select zone from wan_dns_records where zone =‘$zone$‘}

{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 from wan_dns_records where zone=‘$zone$‘ and host=‘$record$‘}";

};

};

controls {

inet 127.0.0.1 port 953

allow { 127.0.0.1; } keys { "rndc-key"; };

};

[root@wang etc]# named-checkconf /usr/local/bind9/etc/named.conf   检查配置文件是否正确

[root@wang etc]# /usr/local/bind9/sbin/named -g -d 1 -c /usr/local/bind9/etc/named.conf  打开named服务

[root@wang ~]# mysql -u root -p

Enter password:                   进入mysql

mysql> use mydata;

mysql> insert into lan_dns_records (zone,host,type,data,ttl,retry) values (‘abc.com‘,‘www‘,‘A‘,‘192.168.2.100‘,‘86400‘,‘15‘);

Query OK, 1 row affected (0.10 sec)   插入内部用户的表格

mysql> select * from lan_dns_records \G  查看添加的表格

mysql> insert into wan_dns_records (zone,host,type,data,ttl,retry) values (‘abc.com‘,‘www‘,‘A‘,‘192.168.20.1‘,‘86400‘,‘15‘);  插入外部用户的表格

[root@wang ~]# dig www.abc.com @192.168.2.50

DLV配置完成。然后设置下该机器的网关

[root@wang ~]# dig www.abc.com @192.168.2.50  测试

FFDD15BB659A44848A05A0D2CE5B5E39 

[root@wang ~]# dig www.abc.com @127.0.0.1

4F5795F1482546FBB9B82257BEBDC657 

都能得到dns地址

Web服务器:

windowserver 2003 web服务器

到控制面板

0CD2A2C1C5B2407F904889ACEB7076A4添加和删除程序

然后添加和删除windows组件

52C6D4E239714517951F2F82A8D3130B 

找打应用服务器,前面不打勾进去

85B405552BF9484EA3DF92B351F04C8E 

找到iis打勾确定,等待安装完成(需要有安装光盘的镜像)

然后建个小html文件测试使用

F8ED0F7F25BE4845A8D6FBD4D76495B1 

如图所示

打开iis服务管理器,网站→默认站点→属性

将主目录更改为刚才网页文件放的目录

3C1F698831AF478C9CC6E74C0F25EB20 

将默认文档设置为index.html

然后可以浏览测试下

防火墙配置(用centos替代)

 再打开一台centos虚拟机,添加2块网卡,一块是仅主机,一块桥接

[root@station21 ~]# ifconfig eth0 192.168.2.1   仅主机网卡地址

[root@station21 ~]# ifconfig eth1 192.168.20.1   桥接网卡地址

[root@station21 ~]# vim /etc/sysctl.conf     打开数据包转发能力

11A12B13CA444B00AE7A90B668DE4F7B   将其改为1

然后将web服务器和dns服务器的网关全部设置为192.168.2.1

[root@station21 ~]# iptables -t nat -A PREROUTING -d 192.168.20.1 -p udp --dport 53 -i eth1 -j DNAT --to 192.168.101    做dnsDNAT

[root@station21 ~]# iptables -t nat -A PREROUTING  -d 192.168.20.1 -i eth1 -p tcp --dport 80 -j DNAT --to 192.168.2.100        web的DNAT

进行测试:

再打开一台虚拟机,dns设置为192.168.20.1 ip地址设置为192.168.20.0网段(外网),桥接模式

8497571672FE438D8F8941293ED4C31E 

然后访问www.abc.com

DCF732E292324C7D9E3F85614208A5FB 

然后将ip地址设置为内网,dns设置为192.168.2.50,仅主机模式

F5D0C3470DF24A02BA62C50445ADEA83 

访问www.abc.com

5388EC9AD671442ABE4222753DDB3516 

 

Dns轮询

实现负载均衡。回复dns服务器为不同的回答。

[root@wang ~]# mkdir /media/cdrom   安装所需要的dns

[root@wang ~]# mount /dev/cdrom /media/cdrom

[root@wang ~]# yum --disablerepo=\* --enablerepo=c6-media install bind bind-chroot bind-utils -y

[root@wang ~]# cd /var/named/chroot/etc/

[root@wang etc]# service named start    开启dns服务器

[root@wang etc]# vim named.conf     编辑配置文件

options {

        listen-on port 53 { any; };     改为any

        listen-on-v6 port 53 { ::1; };

        directory       "/var/named";

        dump-file       "/var/named/data/cache_dump.db";

        statistics-file "/var/named/data/named_stats.txt";

        memstatistics-file "/var/named/data/named_mem_stats.txt";

        allow-query     { any; };     

        recursion yes;

[root@wang etc]# vim named.rfc1912.zones

zone "abc.com" IN {

        type master;

        file "abc.com.zone";

        allow-update { none; };

};   加入此内容

[root@wang named]# cp -p named.localhost abc.com.zone   复制区域

[root@wang named]# vim abc.com.zone  编辑区域

$TTL 1D

@       IN SOA  ns.abc.com. rname.invalid. (

                                        1       ; serial

                                        1D      ; refresh

                                        1H      ; retry

                                        1W      ; expire

                                        3H )    ; minimum

@       IN NS   ns.abc.com.

ns      IN A    192.168.2.50

www     IN A    1.1.1.1

www     IN A    2.2.2.2

~                         

www.abc.com 编辑为2dns地址

[root@wang named]# rndc reload

测试2台虚拟机,每台都查询dns

第一台虚拟你解析为1.1.1.1

0AF515C018C54B0CB1E9804D85DC1E92 

第一台虚拟你解析为2.2.2.2

AFD22566ABBB4FDEAC655374A076DC0E 

实现了轮询的结果

 

 


本文出自 “你猜我是谁” 博客,请务必保留此出处http://whhhj.blog.51cto.com/9289395/1568900

dns在企业网络中的应用