设为首页 收藏本站
查看: 1123|回复: 0

[经验分享] linux 的 DNS 和 bind

[复制链接]

尚未签到

发表于 2018-5-16 07:51:28 | 显示全部楼层 |阅读模式
  bind作为dns的主要实现的应用,所以就显得尤为重要;
  一般的CentOS中,需要我们用yum装一个bind;然后用启动bind程序;然后在查看是否处于活动状态;
  named 就是 DNS 服务
DSC0000.jpg

  然后查看bind的主配置文件;在/etc/named.conf中;然后有许多选项;
DSC0001.jpg

  选项的意思:

  全局配置段:
  options {
  listen-on port 53 { 127.0.0.1; 172.16.1.74; };
  //在启动DNS服务时,named进程所监听的套接字;[any|none]
  directory "/var/named";
  //定义解析库(区域数据库文件)的根目录;在主配置文件中添加此配置语句之后,可以在后面定义区域数据库时使用相对路径;
  allow-query     { localhost; };
  //访问控制语句,意思是允许本服务器处理那些主机发送来的解析查询请求;默认是localhost,即:只允许本机以127.0.0.1发送查询请求;
  recursion yes;
  //允许本服务器为所有查询请求做递归查询;
  allow-recursion { 172.16.1.74/16; };
  //访问控制指令:允许那些客户端做递归查询;
  pid-file "/run/named/named.pid";
  //定义存放主进程pid文件的路径;
  };
  区域配置段:

  zone "FQDN" IN {
  //声明一个区域名称;此名称要使用FQDN来表示;如:qhdlink.com
  type master;
  //区域的类型:
  master:主区域:
  slave:辅助区域;
  hint:提示区域,仅能在根域上设置;
  forward:转发区域;
  file "named.localhost";
  //存放于该域有关的解析信息的数据库文件的路径;如果是相对路径,则相对于在主配置文件的全局配置端中的"directory"指令所定义的目录而言;
  注意:文件的所有权和权限设置必须能够让named用户有读取权限;
  allow-update { none; };
  //访问控制指令,允许那些客户端对数据库内容进行动态更新;主要用于DDNS;
  allow-transfer { 172.16.0.0/16; };
  //访问控制指令:允许那些主机能够从当前服务器进行区域传送;
  allow-recursion { 172.16.1.74/16; };
  //访问控制指令:允许那些许那些客户端做递归查询;
  allow-query{ address_match_element; ... };
  //访问控制指令:允许那些主机进行区域内的解析查询;
  allow-update { address_match_element; ... };
  //访问控制指令:允许那些主机向当前服务器发送区域变更通知;
  };
  在配置完bind的配置文件之后;需要用named-checkconf来检测文件的书写格式是否正确;
  在检测完以后,配置文件的内容并不会立即生效;因此我们需要重新读取named程序;可以用systemctl命令;也可以用 rndc reload 来读取;
  区域配置文件示例:
  zone "FQDN" IN {
  type master;
  file "FQDN.zone";
  allow-update { none; };
  allow-tranfer { none; };
  }
  当区域配置文件配置完之后,我们需要在其数据库添加记录;
DSC0002.jpg

  在数据库中,有各种记录书写的格式,简要介绍各种记录的书写格式;
  SOA:
  DN|FQDN:当前域的域名,如:qhdlink.com.
   或者使用"@"代替域名;@符号会使用主配置文件中定义的域名来代替;
  VALUE:由以下几个部分组成:
      1.当前域中的主名称服务器的FQDN;
  2.当前域的数据库管理员的邮箱地址,需要使用"."来代替"@": root.qhdlink.com.
  3.主名称服务器进行区域传送的相关时间参数的定义:
  (Serial Refresh Retry Expeir TTL)
  (Serial ;
  Refresh ;
  Retry ;
  Expeir ;
  TTL;)
  NS记录:
  name:当前域的域名;可以写完全合格域名FQDN;可以写@占位;还可以省略不写;如果省略不写,则意味着该资源记录的名称与其上一条资源记录的名称相同;
  value:当前区域内被授权的名称服务器的FQDN;
  注意:
  1.一个域中有多少台名称服务器,就需要写多少个NS资源记录;
  2.每个NS资源记录都必须要有一个A记录与之对应;
  MX记录:
  name:当前域的域名;可以写完全合格域名FQDN;可以写@占位;还可以省略不写;如果省略不写,则意味着该资源记录的名称与其上一条资源记录的名称相同;
  RR_TYPE: MS Priority
  value:当前域中有效的邮件服务器的FQDN;
  注意:
  1.一个域中,可以有多条MX资源记录,通过优先级的大小决定被使用的次序;
  2.每个MX资源记录都必须对应一条A记录;
  A记录:
  name:域中指定主机的FQDN;
  value;该主机上真实有效的Ipv4地址;
  示例:
  www.qhdlink.com. 43200 IN  A   192.168.1.1
  www 43200 IN  A   192.168.1.1
  泛域名:
  *.qhdlink.com. 43200 IN  A   192.168.1.1
  * 43200 IN  A   192.168.1.1
  直接域名解析:
  qhdlink.com. 43200 IN  A   192.168.1.1
  通常,泛域名或直接域名都是为了防止用户写错名称而导致无法给出正确的解析结果;
  CNAME记录:
  name:域中指定主机的别名;
  value:真正的主机的FQDN;
  示例:
  ftp.qhdlink.com [86400] IN CNANE www.qhdlink.com.
  ftp [86400] IN CNANE www
  PTR记录:
  name:将IP地址的四个八位组反过来,将IP地址中的主机部分加上反向域的域名后缀;
  如果IP地址是 :172.16.1.100/16,其对应的名称的写法;
  100.1 IN PTR www.qhdlink.com.
  100.1.16.172.in-addr.arpa. IN PTR www.qhdlink.com.
  value:域中与指定的IP地址对应的FQDN;
  注意:value部分必须写FQDN,绝对不能省略域名后缀,最后必须以"."结尾;否则bind程序会将反向域的域名补在名称之后;
  当写完了配置文件中的域所对应的数据库内容之后,需要用named-checkzone命令进行检测数据的书写格式是否正确;
  named-checkzone FQDN FQDN.zone

  当配置完成之后,我们用rndc reload重载配置文件之后,就可以完成本地域名解析了;
  测试域名解析的几个常用命令;dig,host,nslookup
DSC0003.jpg

DSC0004.jpg

DSC0005.jpg

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-460767-1-1.html 上篇帖子: linux timer 下篇帖子: 近期学习Linux的总结
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表