Linux命令学习—DNS 服务器

1.1、DNS 服务器介绍

DNS domain name system 域名系统

1、网络中,计算机通过 IP 地址来通信

IP 地址记忆困难,为计算机起个好名字

域名概念的提出

DNS 服务:为主机建立 IP 地址与域名之间的映射关系,使用域名来唯一标识网络中的计算机

2、域名称的结构

根域

顶级域:通用域、国家域、反向域

二级域

主机名称

www    .sohu  .com  .cn
主机名 二级域 顶级域 根域

3、FQDN 完全合格的域名

主机名.主 DNS 后缀

4、DNS 解析的过程

DNS 解析不是域名,是主机名

域名查询的模式:

从查询方式上分:
   递归查询
   简单(迭代)查询
从查询内容上分 :
   正向搜索查询
   反向搜索查询

1.2、linux 下的 DNS

1.2.1、DNS 相关配置文件介绍

服务器端 BIND

/etc/hosts
/etc/resolv.conf

配置 DNS 服务器地址

/etc/named.caching-nameserver.conf

DNS 的主配置文件

/etc/named.rfc1912.zones

DNS 的区域声明存储配置文件

/var/named

DNS 数据库存放目录

/var/named/chroot/var/named

查询记录数据库存放目录

/var/named/chroot/var/named/slaves

辅助 DNS 的数据库目录

1.2.2、DNS 服务和安装

1、查看安装的 DNS 组件

#rpm -qa |grep bind

2、安装 DNS 服务缺少的软件包

caching-nameserver-9.3.3-7.el5.i386.rpm

包存放的位置,在安装光盘 Server 目录下

3、DNS 服务

service named start
service named stop
service named restart

4、配置本机的 DNS 服务器地址

#vi /etc/resolv.conf
nameserver 200.200.200.1

5、配置的加载

#rndc reload

1.3、配置主 DNS 服务器

1.3.1、编辑配置文件/etc/named.caching-nameserver.conf

字段解释:

options {
listen-on port 53 { 200.200.200.1; }; 监听指定主机的 53 号端口(ipv4)
# listen-on-v6 port 53 { ::1; }; 监听指定主机的 53 号端口(ipv6)
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";
query-source port 53;
query-source-v6 port 53;
# allow-query { localhost; }; 指定允许查询的主机
};
logging {
 channel default_debug {
 file "data/named.run";
 severity dynamic;
 };
};
view localhost_resolver {
# match-clients { localhost; }; 匹配的客户端为本机
match-destinations { localhost; };
recursion yes;
include "/etc/named.rfc1912.zones"; 指定包含的区域声明文件
};

1.3.2、编辑配置文件 /etc/named.rfc1912.zones

增加 2 个字段:字段含义

zone "baidu.com" IN { 声明正向区域
type master; 定义类型为主服务器
file "baidu.com.zone"; 指定正向数据库文件
allow-update { none; }; 允许更新主机
};
zone "200.200.200.in-addr.arpa" IN { 声明反向区域
type master; 指定服务类型
file "baidu.com.local"; 指定反向区域文件
allow-update { none; }; 允许更新的主机
};

1.3.3、进入 DNS 数据库目录

cd /var/named/chroot/var/named

1.3.4、生成反向解析文件

cp named.local baidu.com.local 反向解析文件
vi baidu.com.local
$TTL 86400
@ IN SOA www.baidu.com. root.www.baidu.com. ( 指定主机名
 1997022700 ; Serial
 28800 ; Refresh
 14400 ; Retry
 3600000 ; Expire
86400 ) ; Minimum
 IN NS www.baidu.com. 
1 IN PTR www.baidu.com. 生成反向指针记录 IP 为 1 的指向 www.baidu.com

1.3.5、生成正向解析文件

cp baidu.com.local baidu.com.zone
vi baidu.com.zone
$TTL 86400
@ IN SOA www.baidu.com. root.www.baidu.com. (
 1997022700 ; Serial
 28800 ; Refresh
 14400 ; Retry
 3600000 ; Expire
86400 ) ; Minimum
 IN NS www.baidu.com.
www IN A 200.200.200.1 生成主机记录 A www 主机名所对应的 IP 地址

1.3.6、DNS 常用记录和 DNS 的泛域名解析

A 主机记录
CNAME 别名记录
MX 邮件交换器记录
PTR 指针记录
* 别名记录可以实现泛名解析

1.3.7、修改数据库文件的属主和属组

       创建的文件的属组和属主为 root,对 named 服务来说是没有权限的,需要将数据库文件的属主和属组修改 为虚拟用户 named

chown named.named baidu.com.zone
chown named.named baidu.com.local

1.3.8、使用本机和客户端测试

host 命令和 nslookup 命令

1.4、配置 DNS 的简单负载均衡

在 DNS 的正向文件中添加一条记录

www IN A 200.200.200.1
www IN A 200.200.200.11

在 DNS 的反向文件中添加一条记录

1 IN PTR www.baidu.com
11 IN PTR www.baidu.com 

1.5、配置 DNS 的转发器

编辑配置文件/etc/named.caching-nameserver.conf

增加一条记录

options {
listen-on port 53 { 200.200.200.1; }; 监听指定主机的 53 号端口(ipv4)
 forwarders {200.200.200.2;}; 添加转发 DNS 服务地址为 200.200.200.2
# listen-on-v6 port 53 { ::1; }; 监听指定主机的 53 号端口(ipv6)

1.6、配置辅助 DNS 服务器

1.6.1、主 DNS 服务器中的配置

zone "baidu.com" IN { 声明正向区域
type master; 定义类型为主服务器
file "baidu.com.zone"; 指定正向数据库文件
allow-update { 200.200.200.2; }; 允许更新 200.200.200.2 进行区域复制
};
zone "200.200.200.in-addr.arpa" IN { 声明反向区域
type master; 指定服务类型
file "baidu.com.local"; 指定反向区域文件
allow-update { 200.200.200.2; }; 允许更新 200.200.200.2 进行区域复制
};

1.6.2、辅助 DNS 配置

编辑配置文件 /etc/named.rfc1912.zones

zone "huayu.com" IN { 声明正向区域
 type slave; 指定服务类型为辅助
 file "slaves/huayu.com.zone"; 指定正向区域文件
 masters{200.200.200.2;}; 指定主 DNS 服务器地址
# allow-update { none; };
};
zone "200.200.200.in-addr.arpa" IN { 声明反响区域
 type slave; 指定服务器类型为辅助
 file "slaves/huayu.com.local"; 指定反向文件
 masters{200.200.200.2;}; 指定主 DNS 服务器地址
# allow-update { none; };
};

相关推荐

  1. Linux命令学习DNS 服务器

    2024-04-21 02:18:02       19 阅读
  2. Linux命令学习—FTP 服务器

    2024-04-21 02:18:02       16 阅读
  3. Linux命令学习—DHCP 服务器

    2024-04-21 02:18:02       15 阅读
  4. linux配置DNS主从服务器

    2024-04-21 02:18:02       35 阅读
  5. Linux 配置DNS服务

    2024-04-21 02:18:02       15 阅读
  6. 每天学习一个Linux命令dd

    2024-04-21 02:18:02       12 阅读
  7. Linux命令学习—Apache 服务器(下)

    2024-04-21 02:18:02       14 阅读
  8. Linux命令学习—Apache 服务器(上)

    2024-04-21 02:18:02       14 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-04-21 02:18:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-04-21 02:18:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-04-21 02:18:02       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-04-21 02:18:02       20 阅读

热门阅读

  1. Linux下多版本cuda切换

    2024-04-21 02:18:02       21 阅读
  2. React + 项目(从基础到实战) -- 第六期

    2024-04-21 02:18:02       17 阅读
  3. ARM-学习day8

    2024-04-21 02:18:02       13 阅读
  4. Vue3不用任何构建的原始HTML

    2024-04-21 02:18:02       14 阅读
  5. ARM_day8:基于iic总线的通信

    2024-04-21 02:18:02       16 阅读
  6. 【rust编译错误解读】

    2024-04-21 02:18:02       19 阅读
  7. 【无标题】

    2024-04-21 02:18:02       13 阅读
  8. P2483 【模板】k 短路 / [SDOI2010] 魔法猪学院

    2024-04-21 02:18:02       17 阅读
  9. npm run build 自动生成dist.zip

    2024-04-21 02:18:02       15 阅读
  10. linux xfrm框架详细介绍

    2024-04-21 02:18:02       18 阅读
  11. [CLS] 输出向量 和 [MASK] 向量

    2024-04-21 02:18:02       13 阅读
  12. TCP协议复习

    2024-04-21 02:18:02       15 阅读
  13. SpringBoot将上传的文件保存到临时文件

    2024-04-21 02:18:02       15 阅读