DNS主辅和分IP解析

Posted chaoyiyang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DNS主辅和分IP解析相关的知识,希望对你有一定的参考价值。

Table of Contents

  1. DNS 服务器原理
    1. DNS 存在的意义
    2. 域名转 IP 的过程
  2. 搭建主-辅 DNS 服务器
  3. 实现 DNS 分 IP 查询

DNS 服务器原理

DNS 存在的意义

  • 理论上当我们要访问一个网站时,直接输入 IP 地址和端口号就可以正常使用.但有更多时候我们
    是在地址栏上输入一串网址.虽然我们输的是一串字符串,但它在后台会被转化为一串 IP 地址.
    而且万一网站的主机 IP 变了,那还要重新记 IP.而且现代的网页往往还存在链接,如果链接也用
    IP,如果对面的服务器换 IP 那么我们还要去改网页的代码….这是 B/S 结构面对的问题.
  • 另一个情形是 C/S 结构的应用,客户端要和服务器端交互肯定是要知道服务器的 IP 的.但如果
    在开发客户端时把服务器的 IP 写死,万一服务器的 IP 换了还得去改代码…..
  • 为了防止出现上面两种情况,很早以前就出现的 DNS 这个概念

域名转 IP 的过程

技术图片

搭建主-辅 DNS 服务器

  1. 搭建主 DNS 服务器
    1. 改配置/etc/named.conf

      listen-on port 53 { localhost; }; #代表监听本机的所有ip
      allow-query { any; };             #代表允许所有ip查询
      dnssec-enable no;                 #关闭dnssec
    2. 加入/etc/named.rfc1912.zones

      zone "chaoyi.com" {
      type master;
      file "chaoyi.com.zone";
      };
    3. 在/var/named 下建立文件 chaoyi.com.zone

      $TTL 86400
      $ORIGIN chaoyi.com.
      @      IN       SOA     ns1.chaoyi.com. admin.chaoyi.com (
      2015042201
      1H
      5M
      7D
      1D )
      IN     NS       ns1
      IN     NS       ns2
      IN     MX 10    mx   
      ns1    IN       A       172.16.100.11
      ns2    IN       A       172.16.100.12
      mx     IN       A       172.16.100.13
      websrv IN       A       172.16.100.11
      websrv IN       A       172.16.100.12
      www    IN       CNAME   websrv
  2. 搭建辅 DNS 服务器
    1. 改配置/etc/named.conf

      listen-on port 53 { localhost; }; #代表监听本机的所有ip
      allow-query { any; };             #代表允许所有ip查询
      dnssec-enable no;                 #关闭dnssec
    2. 加入/etc/named.rfc1912.zones

      zone "chaoyi.com" IN {
      type slave;
      masters { 172.16.10.11; };
      file "slaves/chaoyi.com.zone";
      };
  3. 重启两边服务器

实现 DNS 分 IP 查询

设置 172.16.10.0/24 用 beijing 配置
172.16.11.0/24 用 guangzhow 配置

  1. 改配置/etc/named.conf
    在 option 前

    acl beijing { 172.16.10.0/24;};
    acl guangzhow { 172.16.11.0/24;};
    acl other { any;};

    在 option 里

    listen-on port 53 { localhost; }; #代表监听本机的所有ip
    allow-query { any; };             #代表允许所有ip查询
    dnssec-enable no;                 #关闭dnssec

    最后写入

    view beijingview {
    match-clients {beijing;};
    include "/etc/named.beijingview.zones";
    };
    view guangzhowview {
    match-clients {guangzhow;};
    include "/etc/named.guangzhowview.zones";
    };
    view otherview {
    match-clients {other;};
    include "/etc/named.rfc1912.zones";
    };
    把 include "/etc/named.rfc1912.zones"; 注释了
  2. 增加文件
    vim /etc/named.beijingview.zones

    zone "chaoyi.com" {
    type master;
    file "chaoyi.com.zone.bj";
    };

    vim /etc/named.zhengzhouview.zones

    zone "chaoyi.com" {
    type master;
    file "chaoyi.com.zone.zz";
    };
  3. 增加 zone
    vim /var/named/chaoyi.com.zone.bj

    $TTL 86400      ; 1 day
    @                       IN SOA  dns1 dnsadmin (
                                    3          ; serial
                                    86400      ; refresh (1 day)
                                    3600       ; retry (1 hour)
                                    604800     ; expire (1 week)
                                    10800      ; minimum (3 hours)
                                    )
                            NS      dns1.chaoyi.com.
    dns1                    A       172.16.100.10
    websrv                  A       1.1.1.1
    www                     CNAME   websrv

    vim /var/named/chaoyi.com.zone.gz

    $TTL 86400      ; 1 day
    @                       IN SOA  dns1 dnsadmin (
                                    3          ; serial
                                    86400      ; refresh (1 day)
                                    3600       ; retry (1 hour)
                                    604800     ; expire (1 week)
                                    10800      ; minimum (3 hours)
                                    )
                            NS      dns1.chaoyi.com.
    dns1                    A       172.16.100.10
    websrv                  A       3.3.3.3
    www                     CNAME   websrv

以上是关于DNS主辅和分IP解析的主要内容,如果未能解决你的问题,请参考以下文章

DNS 域名解析服务

003.DNS主从正反解析部署

003.DNS-主&辅服务器的配置总实验

shell脚本实现批量解析域名IP地址(支持多DNS)

Linux运维实战之DNS(bind)服务器的安装与配置

https网络编程——DNS域名解析获取IP地址