很多企业都通过Linux来搭建自己的DNS服务器来提高网路效率,在此我们来学习如何搭建Master DNS服务器。
首先,确定是否搭建yum仓库,并有软件包可用,如DVD光盘是否挂载。
一、安装DNS服务所需要的软件包
DNS所需要的软件包有:
Bind-9.3.3-7.el5
Bind-utils-9.3.3-7.el5
Bind-chroot-9.3.3-7.el5
Caching-nameserver-9.3.3-7.el5
1.查询软件包是否安装
rpm -aq bind
rpm -aq bind-utils
rpm -aq bind-chroot
rpm -aq caching-nameserver
2.使用yum安装所需要的软件(确定yum仓库已经搭建好)
mount /dev/cdrom /media/ 挂载DVD光盘
挂载成功显示:mount:block device /dev/cdrom is write-protected, mounting read-only
yum install bind bind-utils bind-chroot caching-nameserver 使用yum安装软件包
二、搭建Master DNS
在搭建之前必须关掉防火墙和SELINUX服务才会成功搭建好,方法:
setup 进入服务列表进行关闭
1.设置确定DNS服务器的IP地址
system-config-network 进入Devernet Configuration
界面:
Devernet Configuration
Name eth0
Device eth0
Use DHCP [ ]
Static IP 192.168.200.1
Netmask 255.255.255.0
Default gateway IP
确定启动网卡并确认网卡配置(任选一种方法即可)
重启网络服务的几种方法:
1) service network restart
2) /etc/rc.d/init.d/network restart
3) ifdown eth0
ifup eth0
确认网卡配置
ifconfig eth0
2.设置确定DNS服务器的主机名
hostname 检查主机名
hostname server.example.com 重新设置主机名
hostname 再次确认
如上修改在DNS服务器重启后又会恢复原来的主机名,要想下次启动也生效,需要做如下修改:
vi /etc/sysconfig/network 编辑相应文件
内容编辑
NETWORKING=yes
NETWORKING IPV6=no
HOSTNAME=server.example.com 在HOSTNAME后修改为正确的主机名
3.调整DNS服务器的解析顺序
vi /etc/nsswitch.conf 编辑相应文件
内容编辑
17# dns Use DNS (Domain in Name Service)
18# files Use the local files
19# db Use the local database (.db) files
20# compat Use NIS on compat mode
21# hesiod Use Hesiod for user lookups
22# [NOTFOUND-return] Stop searching if not found so far
23#
24
25# To use db, put the "db" in front of "files" for enteries you want to be
26# looked up first in the databases
27#
28# Example:
29# passwd: db files nisplus nis
30# shadow: db files nisplus nis
31# group: db files nisplus nis
32
33 passwd: files
34 shadow: files
35 group: files
36
37# hosts: db files nisplus nis dns
38 hosts: dns files 将原来files dns的顺序改为dns files; 当执行解析时先从DNS服务器解析,在解析host文件
39
40# Example - obey only what nisplus tells us...
4.创建并修改主配置控制文件
cd /var/named/chroot/etc/ 切换文件目录
ls 查看所在目录之下的文件并寻找目标文件
cp -p named.caching-nameserver.conf named.conf 复制目标文件并重命名为named.conf
vi named.conf 编辑named.conf文件
内容编辑
//
options {
listen-on port 53 {172.0.0.1;localhost;} DNS为哪个网络接口提供服务
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";
query-source port 53;
query-source-v6 port 53;
allow-query {localhost;localnets;}; 本服务器为谁提供查询请求服务
};
logging {
channel default_debug {
file "data/named.run";
serverity dynamic;
};
};
view localhost_resolver {
match-clients {localhost;localnets;};
match-destinations {localhost;};
recursion yes;
include "/etc/named.rfc1912.zones";
};
备注:
查询控制
* 代表所有; any 代表所有; localhost 代表本机; localnets 代表本机所连的网段; none 空
5.创建查询区域
cd /var/named/chroot/etc/ 切换目录
必须保证当前的路径在/var/named/chroot/etc/下,若不在,使用cd /var/named/chroot/etc/改变路径再编辑区域文件
vi named.rfc1912.zones 编辑文件
内容编辑(增加一个正向区域和一个反向区域并作若干修改)
zone "example.com" IN {
type master;
file "example.zone";
allow-update {none;};
};
zone "200.168.192.in-addr.arpa" IN {
type master;
file "example.local";
allow-update {none;};
};
6.复制创建正、反向解析文件
cd /var/named/chroot/var/named/ 切换目标文件目录
ls 查看并寻找目标文件
cp -p localhost.zone example.zone 复制并重命名目标文件
cp -p named.local example.local 复制并冲重命名目标文件
7.编辑正向解析文件
vi example.zone
内容编辑
$TTL 86400
@ IN SOA server.example.com. root.example.com. (
42 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS server.example.com.
IN MX 10 mail.example.com.
IN A 192.168.200.1
mail IN A 192.168.200.2
server IN A 192.168.200.1
www IN A 192.168.200.3
ftp IN A 192.168.200.4
rhel IN CNAME www
8.编辑反向解析文件
vi example.local
内容编辑
$TTL 86400
@ IN SOA server.example.com. root.example.com. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS server.example.com.
1 IN PTR server.example.com.
2 IN PTR mail.example.com.
3 IN PTR www.example.com.
4 IN PTR ftp.example.com.
9.指定本机DNS服务为自己
vi /etc/resolv.conf
内容编辑
search example.com
nameserver 192.168.200.1
10.重新启动DNS服务(任选一种方法)
1) /etc/rc.d/init.d/named restart
2) service named restart
备注:
start 开启服务; stop 停止服务; restart 重新启动服务; status 查看服务状态
11.测试
1) nslookup测试
nslookup
> 192.168.200.1
> mail.example.com
> 192.168.200.3
> rhel
2)使用host测试
host rhel.example.com
host 192.168.200.1
host mail.example.com
3)使用dig命令测试
dig example.com
4)使用ping命令测试
ping rhel.example.com
ping mail.example.com
首先,确定是否搭建yum仓库,并有软件包可用,如DVD光盘是否挂载。
一、安装DNS服务所需要的软件包
DNS所需要的软件包有:
Bind-9.3.3-7.el5
Bind-utils-9.3.3-7.el5
Bind-chroot-9.3.3-7.el5
Caching-nameserver-9.3.3-7.el5
1.查询软件包是否安装
rpm -aq bind
rpm -aq bind-utils
rpm -aq bind-chroot
rpm -aq caching-nameserver
2.使用yum安装所需要的软件(确定yum仓库已经搭建好)
mount /dev/cdrom /media/ 挂载DVD光盘
挂载成功显示:mount:block device /dev/cdrom is write-protected, mounting read-only
yum install bind bind-utils bind-chroot caching-nameserver 使用yum安装软件包
二、搭建Master DNS
在搭建之前必须关掉防火墙和SELINUX服务才会成功搭建好,方法:
setup 进入服务列表进行关闭
1.设置确定DNS服务器的IP地址
system-config-network 进入Devernet Configuration
界面:
Devernet Configuration
Name eth0
Device eth0
Use DHCP [ ]
Static IP 192.168.200.1
Netmask 255.255.255.0
Default gateway IP
确定启动网卡并确认网卡配置(任选一种方法即可)
重启网络服务的几种方法:
1) service network restart
2) /etc/rc.d/init.d/network restart
3) ifdown eth0
ifup eth0
确认网卡配置
ifconfig eth0
2.设置确定DNS服务器的主机名
hostname 检查主机名
hostname server.example.com 重新设置主机名
hostname 再次确认
如上修改在DNS服务器重启后又会恢复原来的主机名,要想下次启动也生效,需要做如下修改:
vi /etc/sysconfig/network 编辑相应文件
内容编辑
NETWORKING=yes
NETWORKING IPV6=no
HOSTNAME=server.example.com 在HOSTNAME后修改为正确的主机名
3.调整DNS服务器的解析顺序
vi /etc/nsswitch.conf 编辑相应文件
内容编辑
17# dns Use DNS (Domain in Name Service)
18# files Use the local files
19# db Use the local database (.db) files
20# compat Use NIS on compat mode
21# hesiod Use Hesiod for user lookups
22# [NOTFOUND-return] Stop searching if not found so far
23#
24
25# To use db, put the "db" in front of "files" for enteries you want to be
26# looked up first in the databases
27#
28# Example:
29# passwd: db files nisplus nis
30# shadow: db files nisplus nis
31# group: db files nisplus nis
32
33 passwd: files
34 shadow: files
35 group: files
36
37# hosts: db files nisplus nis dns
38 hosts: dns files 将原来files dns的顺序改为dns files; 当执行解析时先从DNS服务器解析,在解析host文件
39
40# Example - obey only what nisplus tells us...
4.创建并修改主配置控制文件
cd /var/named/chroot/etc/ 切换文件目录
ls 查看所在目录之下的文件并寻找目标文件
cp -p named.caching-nameserver.conf named.conf 复制目标文件并重命名为named.conf
vi named.conf 编辑named.conf文件
内容编辑
//
options {
listen-on port 53 {172.0.0.1;localhost;} DNS为哪个网络接口提供服务
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";
query-source port 53;
query-source-v6 port 53;
allow-query {localhost;localnets;}; 本服务器为谁提供查询请求服务
};
logging {
channel default_debug {
file "data/named.run";
serverity dynamic;
};
};
view localhost_resolver {
match-clients {localhost;localnets;};
match-destinations {localhost;};
recursion yes;
include "/etc/named.rfc1912.zones";
};
备注:
查询控制
* 代表所有; any 代表所有; localhost 代表本机; localnets 代表本机所连的网段; none 空
5.创建查询区域
cd /var/named/chroot/etc/ 切换目录
必须保证当前的路径在/var/named/chroot/etc/下,若不在,使用cd /var/named/chroot/etc/改变路径再编辑区域文件
vi named.rfc1912.zones 编辑文件
内容编辑(增加一个正向区域和一个反向区域并作若干修改)
zone "example.com" IN {
type master;
file "example.zone";
allow-update {none;};
};
zone "200.168.192.in-addr.arpa" IN {
type master;
file "example.local";
allow-update {none;};
};
6.复制创建正、反向解析文件
cd /var/named/chroot/var/named/ 切换目标文件目录
ls 查看并寻找目标文件
cp -p localhost.zone example.zone 复制并重命名目标文件
cp -p named.local example.local 复制并冲重命名目标文件
7.编辑正向解析文件
vi example.zone
内容编辑
$TTL 86400
@ IN SOA server.example.com. root.example.com. (
42 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS server.example.com.
IN MX 10 mail.example.com.
IN A 192.168.200.1
mail IN A 192.168.200.2
server IN A 192.168.200.1
www IN A 192.168.200.3
ftp IN A 192.168.200.4
rhel IN CNAME www
8.编辑反向解析文件
vi example.local
内容编辑
$TTL 86400
@ IN SOA server.example.com. root.example.com. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS server.example.com.
1 IN PTR server.example.com.
2 IN PTR mail.example.com.
3 IN PTR www.example.com.
4 IN PTR ftp.example.com.
9.指定本机DNS服务为自己
vi /etc/resolv.conf
内容编辑
search example.com
nameserver 192.168.200.1
10.重新启动DNS服务(任选一种方法)
1) /etc/rc.d/init.d/named restart
2) service named restart
备注:
start 开启服务; stop 停止服务; restart 重新启动服务; status 查看服务状态
11.测试
1) nslookup测试
nslookup
> 192.168.200.1
> mail.example.com
> 192.168.200.3
> rhel
2)使用host测试
host rhel.example.com
host 192.168.200.1
host mail.example.com
3)使用dig命令测试
dig example.com
4)使用ping命令测试
ping rhel.example.com
ping mail.example.com
转载于:https://blog.51cto.com/mylinux1847300/345177