Linux版本搭建DNS服务器和配置域名使用,双网卡或者多网卡的配置版本

文章目录

Linux版本搭建DNS服务器和配置域名使用,双网卡或者多网卡的配置版本

实现效果

同一个域名,可以在两个网段同时访问,有一个网络故障,也能正常使用,实现网络高可以

1.介绍:

域名系统DNS(Domain Name System)

1)两种解析:

正向解析:根据域名查询IP地址,是DNS最基本也是最常用的功能
反向解析:根据IP地址查询域名,不怎么常用
域名是为了方便记忆而专门建立的一套地址转换系统,要访问一台互联网上的服务器,最终还必须通过IP地址来实现,域名解析就是将域名重新转换为IP地址的过程。这一过程通过域名解析系统DNS来完成。

2.服务器准备:

主机名 ip
dns200 192.168.56.200,192.168.132.200
centos121 192.168.56.121,192.168.132.121
centos122 192.168.56.122,192.168.132.122
centos123 192.168.56.123,192.168.132.123
win10 192.168.56.141,192.168.132.141

3.DNS服务器搭建(主机:dns200)

1)安装bind

yum install -y bind*

2)named 涉及的文件

/etc/named.conf              # bind主配置文件
/etc/named.rfc1912.zones     # 定义zone的文件
/etc/rc.d/init.d/named       # bind脚本文件
/etc/rndc.conf               # rndc配置文件
/usr/sbin/named-checkconf    # 检测/etc/named.conf文件语法
/usr/sbin/named-checkzone    # 检测zone和对应zone文件的语法
/usr/sbin/rndc               # 远程dns管理工具
/usr/sbin/rndc-confgen       # 生成rndc密钥
/var/named/named.ca          # 根解析库
/var/named/named.localhost   # 本地主机解析库
/var/named/slaves            # 从ns服务器文件夹

3)修改DNS总配置文件 vim /etc/named.conf

把下面两个改成

listen-on port 53 { any; }; //监听端口修改为any,就是监听所有网卡
llow-query     { any; }; //查询范围any,所有网段都可以查询。

删除:

zone "." IN {
        type hint;
        file "named.ca";
};

修改之后的配置文件

options {
        listen-on port 53 { any; };// ipv4监听端口和ip地址,默认只有本地的
        listen-on-v6 port 53 { ::1; }; // ipv6的监听端口和ip地址
        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";
        recursing-file  "/var/named/data/named.recursing";
        secroots-file   "/var/named/data/named.secroots";
        allow-query     { any; };

        recursion yes; // 递归还是迭代查询

        dnssec-enable yes; // dns安全扩展,可以改为no关闭
        dnssec-validation yes; //可以改为no关闭

        /* Path to ISC DLV key */
        bindkeys-file "/etc/named.root.key";

        managed-keys-directory "/var/named/dynamic";

        pid-file "/run/named/named.pid";
        session-keyfile "/run/named/session.key";
};

logging {
        channel default_debug {
                file "data/named.run";
                severity dynamic;
        };
};

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

4)修改总的区域配置文件 vim /etc/named.rfc1912.zones

4.1)正向总区域配置文件

删除全部内容,再填写内容:定义总的正向区域

view "LAN56" {
  match-clients { 192.168.56.0/24; };
  zone "test2.com" IN {
        type master;
        file "test2.com.zone.lan56";
  };
};
view "LAN132" {
  match-clients { 192.168.132.0/24; };
  zone "test2.com" IN {
        type master;
        file "test2.com.zone.lan132";
  };
};

5)区域配置文件

5.1)正向区域配置文件

/var/named/ZONE_NAME.zone区域配置文件
复制一个模板:

cd /var/named   
#复制配置模板
cp -p named.localhost test2.com.zone.lan56
cp -p named.localhost test2.com.zone.lan132

模板文件内容:

$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
        A       127.0.0.1
        AAAA    ::1

ZONE file的资源记录(RR:Resource Record)的格式:

name [TTL] IN rr_type value

编辑vim test2.com.zone.lan56(注释不要写到配置文件里,这里只是说明)

$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
        A    192.168.56.200  //本服务器地址
121     IN A    192.168.56.121 //121.test.com对应的ip
122     IN A    192.168.56.122
123     IN A    192.168.56.123

编辑vim test2.com.zone.lan132(注释不要写到配置文件里,这里只是说明)

$TTL 1D
@       IN SOA  @ rname.invalid. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      @
        A    192.168.56.200  //本服务器地址
121     IN A    192.168.132.121
122     IN A    192.168.132.122
123     IN A    192.168.132.123

5.2)反向区域配置文件(没有配置)

6)启动named服务

#用service
service named start(启动)|stop(关闭)|restart(重启)|status(运行状态查看)
#用systemctl
systemctl start(启动)|stop(关闭)|restart(重启)|status(运行状态查看) named

4.测试使用域名

1)win10

正向解析:

两个网卡分别设置ip4属性:DNS服务器地址(DNS地址要对应网段)

Linux版本搭建DNS服务器和配置域名使用,双网卡或者多网卡的配置版本
Linux版本搭建DNS服务器和配置域名使用,双网卡或者多网卡的配置版本

打开cmd,直接ping域名:121.test2.com
注意:这里的域名就是,正向区域配置文件配置信息的设置+总的区域配置文件配置信息的设置,组合成一个使用域名
如:121.test2.com
121:正向区域配置文件配置信息的设置
test2.com:总的区域配置文件配置信息的设置
展示效果:

>ping 121.test2.com

正在 Ping 121.test2.com [192.168.56.121] 具有 32 字节的数据:
来自 192.168.56.121 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.56.121 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.56.121 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.56.121 的回复: 字节=32 时间<1ms TTL=64

192.168.56.121 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 0ms,最长 = 0ms,平均 = 0ms

禁用121的网卡,域名解析会自动换成132网段连接
展示效果:

>ping 121.test2.com

正在 Ping 121.test2.com [192.168.132.121] 具有 32 字节的数据:
来自 192.168.132.121 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.132.121 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.132.121 的回复: 字节=32 时间<1ms TTL=64
来自 192.168.132.121 的回复: 字节=32 时间<1ms TTL=64

192.168.132.121 的 Ping 统计信息:
    数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
    最短 = 0ms,最长 = 0ms,平均 = 0ms

2)Linux

DNS服务器地址:vi /etc/resolv.conf
添加内容:

nameserver 192.168.56.200
nameserver 192.168.132.200

直接ping域名:122.test2.com
注意:这里的域名就是,正向区域配置文件配置信息的设置+总的区域配置文件配置信息的设置,组合成一个使用域名
如:122.test2.com
121:正向区域配置文件配置信息的设置
test2.com:总的区域配置文件配置信息的设置
展示效果:

[root@centos121 ~]ping 122.test2.com
PING 122.test2.com (192.168.56.122) 56(84) bytes of data.
64 bytes from 192.168.56.122 (192.168.56.122): icmp_seq=1 ttl=64 time=0.221 ms
64 bytes from 192.168.56.122 (192.168.56.122): icmp_seq=2 ttl=64 time=0.318 ms
64 bytes from 192.168.56.122 (192.168.56.122): icmp_seq=3 ttl=64 time=0.435 ms
64 bytes from 192.168.56.122 (192.168.56.122): icmp_seq=4 ttl=64 time=0.319 ms
64 bytes from 192.168.56.122 (192.168.56.122): icmp_seq=5 ttl=64 time=0.391 ms

5.完成配置

上一篇:Java接口自动化一——TestNG快速开始


下一篇:test2