linux下DNS简介及简单配置

简介:
             redhat 下DNS配置 
     1.域名系统( Domain Name System 简称 DNS) 是为了方便访问Internet而采用的一种分布式的域名--->IP地址映射查询和管理的方法,它主要的功能是实现主机名到IP地址的转换。
     2.DNS系统包括DNS服务器与DNS客户端,提供DNS服务的主机称为DNS主机,也叫域名服务器,提出“域名查询”请求的主机叫DNS客户端。
    注:DNS客户端也具有简单的DNS查询功能 ,它是以文本方式保存在自己的系统中,linux下一共有三个文件,文件名为:/etc/host.conf resolv.conf hosts
windows下: WINDOWS\system32\drivers\etc\hosts
     3.DNS查询原理
        客户端发送的每条查询信息都包括指定的查询类型,DNS域名的类别及合格的DNS域名(FQDN),当需要域名解析时,先在本机进行域名解析(即在客户端的host.conf resolv.conf及hosts文件中查询),如果查询不到,就将这个请求发送给自己的域名解析服务器,进行域名解析。
       4.DNS的查询过程
        在查询之前先要了解概念
        1> 查询方式:递归查询,迭代查询 
           递归查询:递归查询一般发生在DNS客户端到DNS服务器之间
           迭代查询:迭代查询一般发生在DNS服务器与DNS服务器之间
        2> 查询内容
           正向查询: 由域名查找IP地址
           反向查询:由IP地址查找域名
        3>查询过程:
           1》当客户端要查询一个域名时,如www.redhat.com,客户端首先会查询自己本身有没有记录。
           2》在客户端本身没有找到要的域名之后,客户端就将域名的查询提交给本地的DNS,这个属于递归查询
           3》如果本地DNS服务器也没有查询到,则它就会把查询传递到要服务器,根服务器把".com"DNS服务器IP地址返回给本地DNS服务器,迭代查询。
           4》''.com"服务器会把"redhat.com"的DNS服务器的IP地址发送给本地服务器。
           5》经过"redhat.com"的DNS服务器查询之后得到www.redhat.com的IP地址再传送给客户端。
      5.DNS资源记录类型
        DNS服务器在提供名称解析服务时,就会查询自己的数据库,在该数据库中包含DNS区域资源信息的资源记录。常见的资源记录有:
         1>SOA:起始授权记录(Start of Authority Record) 在一个区域必须是唯一的,定义了区域的全局参数,进行整个区域的管理设置。
         2>NS:名称服务器记录(Name Server) 在一个区域至少有一条,记录了某个区域的授权服务器。
         3>A:地址记录(Address) 把FQDN映射到IP地址
         4>CANME:别名记录(Canonical Name) 也被称为规范名字,可以帮助用户隐藏网络实现的细节
         5>PTR:反向地址记录(domian name PoinTeR) 把IP地址照射到FQDN
         6>MX:邮件交换记录(Mail eXchange) 指向一个邮件服务器,用于电子邮件系统发邮件时根据收信人的地址后缀来定位邮件服务器。
         7>SRV:服务资源记录(Service Resource Record) 一般为微软的活动目录设置时的应用
         8>TXT(Text):注释或非关键的信息
         9>KEY(Public Key):保存一个关于DNS名称的公钥
         10>SIG(Signatrue):指出带签名和身份认证的区信息
    6.BIND安装
     LINUX下DNS的实现所用的软件:bind
     安装:
     
    bind:BIND服务器软件
    bind-chroot:为BIND提供chroot机制的软件包,可以用来改变程序执行时的根目录位置,防止黑客入侵DNS服务器后对系统造成大的破坏。如果不使用chroot保护 BIND可以不安装。
    caching-nameserver:BIND配置文件的例子。
   7.DNS配置
       在使用了chroot机制之后DNS配置文件目录为:/var/named/chroot/
      对于DNS的配置可以通过以下示例来讲解。

    示例 简单DNS配置
    拓扑图
          

     注: DNS服务器IP地址为: 192.168.2.10
           windows2003IP地址为:192.168.2.20
           客户机redhat5.4 IP地址为: 192.168.2.12
      步骤:
       1.创建全局配制文件,可以使用named.caching-nameserver.conf作为模板
       [root@localhost etc]# cp -p named.caching-nameserver.conf named.conf
         (一定要带上-p参数,用于继承named用户权限)
       2.配置全局配置文件:named.conf
           [root@localhost etc]# cd /var/named/chroot/etc
           [root@localhost etc]# vi named.conf
    内容配置如下:
     options {
        listen-on port 53 { any; }; //指定BIND侦听的本机IP地址的53端口
        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; }; 接受任何客户端的DNS请求
        allow-query-cache { any; };
       };
    logging {
       channel default_debug {
       file "data/named.run";
        severity dynamic;
       };
    };
   view localhost_resolver { //视图名字,可修改可不修改
      match-clients { any; }; //指定当前view处理源IP任何的查询请求
      match-destinations { any; }; //指定当前view处理目的IP任何的查询请求
      recursion yes;
     include "/etc/named.rfc1912.zones"; //主配置文件路径及文件名,文件名可修改可不修改
   };
   3.配置主文件
     [root@localhost etc]# vi named.rfc1912.zones 
     增加如下内容:
      zone "abc.com" IN { //定义一个名为:abc.com的正向查找区域
      type master; //指定类型为主要区域
      file "abc.com.zone"; //指定区域主配置文件
      allow-update { none; }; 
     };
      zone "2.168.192.in-addr.arpa" IN { //定义一个名为2.168.192.in-addr.arpa的反向解析区域,此区域存放192.168.2.0/24的PTR记录." .in-addr.arpa "为固定写法,IP地址是反着写的
      type master; //指定类型为主要区域
      file "2.168.192.local"; //指定区域主配置文件
      allow-update { none; };
    };
   4.配置区域文件
     对于正向区域文件配置
     root@localhost etc]# cd ../var/named
     root@localhost named]# cp -p localhost.zone abc.com.zone
     root@localhost named]# vi abc.com.zone 
   修改后内容
   $TTL 86400 //默认TTL值
   @ IN SOA ns.abc.com. root (  
    // @ 代表区域名称,即abc.com ns.abc.com.代表BIND服务所在主机的FQDN,注意最后有一个" . " ,不可以去掉.root是管理员邮箱地址
           42; serial (d. adams) //正向解析区域的序列号
           3H ; refresh //主DNS与辅DNS序列号对比时间.
           15M ; retry //refresh对比失败后,在一定时间内可重试的时间  
           1W ; expiry //主DNS与辅DNS更新不正常时,辅DNS还可以提供解析服务的时间.
           1D ) ; minimum //可视为TTL

           @ IN ns ns.abc.com. //ns记录
           ns IN A 192.168.2.10
           www IN A 1.1.1.1
           ftp IN A 2.2.2.2
           ftp1 IN CNAME ftp //别名
           @ IN MX 10 mail.abc.com. //MX记录
           mail IN A 3.3.3.3
        对于反向区域文件配置
         [root@localhost named]# cp -p named.local 2.168.192.local
         [root@localhost named]# vi 2.168.192.local 
    内容修改如下
       $TTL 86400
       @ IN SOA ns.abc.com. root.localhost. (
                 1997022700 ; Serial
                 28800 ; Refresh
                 14400 ; Retry
                 3600000 ; Expire
                 86400 ) ; Minimum
                 @ IN NS ns.abc.com.
                 2 IN PTR www.abc.com.
                 3 IN PTR ftp.abc.com.
                 4 IN PTR mail.abc.com.
          意义如上,域名后面的" . "均不能去掉.
      5.配置成功,启动named服务
        [root@localhost named]# service named start
       启动 named: [确定]
     6.客户端进行检测
      客户机IP地址配置
         
      正向测试
        
      反向测试
   










本文转自 guodong810 51CTO博客,原文链接:http://blog.51cto.com/guodong810/1030073,如需转载请自行联系原作者
目录
相关文章
|
4月前
|
Ubuntu Linux 网络安全
Linux服务器之Ubuntu的安装与配置
Ubuntu Desktop是目前最成功、最流行的图形界面的Linux发行版;而Ubuntu Server也在服务器端市场占据了较大的份额。今天为大家详细介绍了Ubuntu Server的安装与配置,希望对你能有所帮助。关于VMware、VirtualBox等虚拟化软件的使用,朱哥还会在后续的文章中为大家详细介绍,敬请关注!
|
2月前
|
存储 Linux 开发工具
Linux环境下使用Buildroot配置软件包
使用Buildroot可以大大简化嵌入式Linux系统的开发和维护工作,但它需要对Linux系统和交叉编译有深入的理解。通过上述步骤,可以有效地配置和定制软件包,为特定的嵌入式应用构建高效、稳定的系统。
296 11
|
9月前
|
存储 缓存 网络协议
阿里云特惠云服务器99元与199元配置与性能和适用场景解析:高性价比之选
2025年,阿里云长效特惠活动继续推出两款极具吸引力的特惠云服务器套餐:99元1年的经济型e实例2核2G云服务器和199元1年的通用算力型u1实例2核4G云服务器。这两款云服务器不仅价格亲民,而且性能稳定可靠,为入门级用户和普通企业级用户提供了理想的选择。本文将对这两款云服务器进行深度剖析,包括配置介绍、实例规格、使用场景、性能表现以及购买策略等方面,帮助用户更好地了解这两款云服务器,以供参考和选择。
|
9月前
|
安全 Linux 开发工具
【Linux】vim使用与配置教程
Vim是一款功能强大的文本编辑器,广泛应用于Linux环境,是开发者和系统管理员的必备工具。本文介绍了Vim的基本操作与简单配置,涵盖命令模式、插入模式和底行模式的使用方法,以及光标定位、复制粘贴、搜索替换等常用技巧。同时,文章还提供了实用的分屏操作和代码注释方法,并分享了通过`.vimrc`文件进行个性化配置(如显示行号、语法高亮、自动缩进等)的技巧,帮助用户提升文本编辑效率。掌握这些内容,能让Vim更好地服务于日常工作与开发需求。
641 3
|
7月前
|
域名解析 应用服务中间件 Shell
使用nps配置内网穿透加域名解析
使用nps配置内网穿透加域名解析
886 76
|
5月前
|
Kubernetes Linux 网络安全
Rocky Linux 8.9配置Kubernetes集群详解,适用于CentOS环境
初始化成功后,记录下显示的 `kubeadm join`命令。
290 0
|
7月前
|
关系型数据库 MySQL Java
安装和配置JDK、Tomcat、MySQL环境,以及如何在Linux下更改后端端口。
遵循这些步骤,你可以顺利完成JDK、Tomcat、MySQL环境的安装和配置,并在Linux下更改后端端口。祝你顺利!
486 11
|
6月前
|
Linux 网络安全 开发工具
在Linux下配置gitee与Github的远程仓库
注意,git push后,是输入你的账号与密码。这个步骤可以通过特殊设置省去,但是一开始还是不要太省。
354 0
|
8月前
|
安全 Linux 网络安全
在Linux(CentOS和AWS)上安装更新的git2的方法并配置github-ssh
经过以上这些步骤,你现在就能在GitHub上顺利往返,如同海洋中的航海者自由驰骋。欢迎你加入码农的世界,享受这编程的乐趣吧!
375 10
|
9月前
|
Java Linux 应用服务中间件
在Rocky Linux 9上安装JDK并配置环境变量!
本教程介绍在Rocky Linux 9上安装JDK并配置环境变量的完整步骤。首先更新系统,清理旧版本JDK相关包及残留文件,确保环境干净。接着搜索并安装所需版本的JDK(如OpenJDK 17),验证安装是否成功。然后查找JDK安装路径,配置全局环境变量`JAVA_HOME`和`PATH`,最后验证环境变量设置。按照此流程操作,可顺利完成Java开发环境搭建,支持多版本切换(如JDK 8/11/17)。生产环境请谨慎操作,避免影响现有服务。
1497 21

相关产品

  • 云解析DNS
  • 推荐镜像

    更多
  • DNS