1、配置相关参数
yum install -y epel-release setenforce 0 /etc/init.d/iptables stop chkconfig iptables off
2、安装相关包
yum install bind bind-devel bind-utils
3、修改配置文件
一共有四个相关文件:named.ca(根域名配置)、named.conf(dns server主配置文件)、正向解析文件、逆向解析文件
named.ca:
$ dig -t NS . @192.168.1.1 > /tmp/named.ca # 查询根dns server,并保存为文件,用于named.conf引用 $ cat /tmp/named.ca ; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.47.rc1.el6_8.3 <<>> -t NS . @192.168.1.1 ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 54385 ;; flags: qr rd ra; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 0 ;; QUESTION SECTION: ;. IN NS ;; ANSWER SECTION: . 113146 IN NS j.root-servers.net. . 113146 IN NS k.root-servers.net. . 113146 IN NS l.root-servers.net. . 113146 IN NS m.root-servers.net. . 113146 IN NS a.root-servers.net. . 113146 IN NS b.root-servers.net. . 113146 IN NS c.root-servers.net. . 113146 IN NS d.root-servers.net. . 113146 IN NS e.root-servers.net. . 113146 IN NS f.root-servers.net. . 113146 IN NS g.root-servers.net. . 113146 IN NS h.root-servers.net. . 113146 IN NS i.root-servers.net. ;; Query time: 29 msec ;; SERVER: 192.168.1.1#53(192.168.1.1) ;; WHEN: Tue Dec 13 14:35:01 2016 ;; MSG SIZE rcvd: 228 |
named.conf:(配置文件使用;和//作为注释)
$ cat named.conf // // named.conf // // Provided by Red Hat bind package to configure the ISC BIND named(8) DNS // server as a caching only nameserver (as a localhost DNS resolver only). // // See /usr/share/doc/bind*/sample/ for example named configuration files. // # 主配置 options { listen-on port 53 { 192.168.10.102; }; # 定义端口绑定的ipv4地址, //listen-on-v6 port 53 { ::1; }; # 定义端口绑定的ipv6地址, directory "/var/named"; # named服务工作目录, dump-file "/var/named/data/cache_dump.db"; # dump数据文件路径, statistics-file "/var/named/data/named_stats.txt"; # 静态文件路径, memstatistics-file "/var/named/data/named_mem_stats.txt"; # allow-query { any; }; # 允许客户端查询的ip地址,any为任意,例如:192.168.1.0/24;172.16.0.0/18等, recursion yes; # 递归查询,除根服务器外尽量开启, dnssec-enable yes; # 是否开启dns sec,dns sec可以验证dns数据有效性, dnssec-validation yes; # 是否进行dns sec验证, /* Path to ISC DLV key */ bindkeys-file "/etc/named.iscdlv.key"; # 设置内置key文件路径, pid-file "/var/run/named/named.pid"; # pid文件路径, managed-keys-directory "/var/named/dynamic"; # 设置dns sec动态key文件路径, }; # 日志相关配置 logging { channel default_debug { # 定义日志输出方式:syslog,file,stdout,stderr,文本文件。 file "data/named.log"; # 日志文件 severity dynamic; #多个级别:debug、info等 }; }; # 根域配置 zone "." IN { type hint; file "/tmp/named.ca"; # 前面生成的根域文件; }; zone "example.com" IN { # 定义example.com的域名正向解析配置 type master; # 域类型,类型可分为hint(根域),master(主dns),slave(从dns)。 file "/etc/ns.example.com"; # 正向解析文件 allow-update { none; }; # 是否允许 }; zone "10.168.192.in-addr.arpa" IN { # 定义逆向域名解析区域,此处zone的名字必须为ip地址反序+".in-addr.arpa" type master; # 域类型, file "/etc/10.168.192.zone"; # 逆向解析文件, allow-update { none; }; # 是否允许更新, }; include "/etc/named.rfc1912.zones"; # 包含其他配置文件 include "/etc/named.root.key"; |
正向解析文件:ns.example.com
$ cat ns.example.com $ TTL设定,定义区域中数据文件各项记录默认TTL值为86400,缺少不影响使用,会出现警告 $TTL 86400 @ IN SOA ns.example.com. root.example.com.( # SOA记录设定,"@"代表相应域名,也就是在named.conf中这顶的zone,SOA表示区域授权开始。每一个区域文件只能有一个SOA。SOA后面指定的是区域的授权主机名称和管理员邮箱。注意域名后有“.”。而且授权主机名称必须在DNS设置中能够找到一个A记录,也就是ns对应的那条A记录。@在配置文件中有其他含义,因此邮箱@用.代替。 2016121301 ; serial # serial 文件修改版本,格式为年月日加上修改次数,每次修改配置文件时应改动此数字。slave DNS进行信息同步时,会比较数值,当数值比自身值大时才会更新。 3H ; refresh # slave 与master同步的间隔时间; 15M ; retry # slave dns更新失败后,要隔多久进行重试; 1W ; expiry # slave dns同步失败后,多长时间清除对应记录; 1D) ; minimum # 默认最小TTL值,如果前面没有设定,此值为基准 # H:小时、D:天、W:周、M:分 # NS:定义此主机为域名服务器、MX:定义邮件交换服务器、A:定义A记录,即域名到IP的记录、CNAME:定义域名的别名; IN NS ns.example.com. # 定义NS IN MX 10 mail # 定义mail交换,优先级为10 IN A 192.168.10.102 ns IN A 192.168.10.102 www IN A 192.168.10.102 mail IN A 192.168.10.102 linux IN CNAME www |
逆向解析文件:10.168.196.in-addr-arpa
# 与正向解析类似,多出PTR选项,定义一个反向解析记录,及IP到URL的记录。
$ cat 10.168.192.zone $TTL 86400 10.168.192.in-addr.arpa. IN SOA ns.example.com. root.example.com. ( 2016121301 ; Serial 28800 ; Refresh 14400; ; Retry 3600000 ; Expire 86400 ) ; Minimum IN NS ns.example.com. 102 IN PTR mail.example.com. 102 IN PTR www.example.com. |
4、启动server
设置相关权限:
chown -R root.named /etc/named.conf /etc/ns.example.com/etc/10.168.192.zone /tmp/named.ca /etc/init.d/named start tail -f /var/log/messages # 查看启动日志 netstat -tlnup |grep 53 # 查看启动端口
5、nslookup测试域名
nslookup ns.example.com nslookup mail.example.com
本文出自 “千面” 博客,请务必保留此出处http://oslibo.blog.51cto.com/10854638/1882296
原文地址:http://oslibo.blog.51cto.com/10854638/1882296