Dns服务器是rhel6.3,ip=192.168.92.168,客户端也是rhel6.3,ip=192.168.92.169
Dns安装包做一个简单的解释:
Bind-chroot-9.8.2-…i686是把bind的目录放在一个目录下
Bind-dyndb-ldap-…i686是一个更新程序
Bind-libs-…i686是提供了实现域名解析功能必备的库文件
Bind-utils-…i686是对dns服务器的测试工具程序包,默认安装。
它们都是默认安装的
Bind-9.8…i686是主安装程序,这个要我们手动安装,我的原则是
Yum install bind*
安装所有bind开头的,总不会少什么东西,哈哈,当然只是我们这种新手才这么做!
如果你像我一样是新手,应该会问怎么没看到dns的字样,全是bind,因为bind是提供DNS服务的软件.
安装完成后我们来启动下dns服务看看,虽然我们什么都还没做!
service name restart
工作正常
DNS服务器配置IP与主机名
Setup
主Dns设置为本机IP,网关也填写正解的网关,不然访问不了其它网络包括外网
但我们看下,我们把客户端的dns设置成192.168.92.168,
还是上不了网的,因为还没有配置dns文件
我们来看下/etc/named.conf这个dns的主配置文件
cat /etc/named.conf
看directory是说dns的主目录在/var/named下
而它下面的chroot里也有个etc,包含了/etc/下与dns有关的文件,所以cat /etc/named.conf和cat /var/named/chroot/etc/named.conf是一样的!
option里的allow-query {localhost;};里面的localhost改成any,不然只有本机能解析,客户端无法查询,所以就无法解析了!
如果要访问外网,option里添加
forwarders {192.168.92.2;202.101.172.47;};填写正确的外部dns
Zone “.”是根区域,它的配置文件是fiel后面跟的named.ca,它包括了互联网上所有的根域名,type是指明区域的类型,hint是根的意思,所有区域文件在/var/named下面。我们就可以在这里创建自己的区域!
现在我们看下named.rfc1912.zones,这个区域文件,更详细点
cat /etc/named.rfc1912.zones
可以看到下面zone开头的都代表一个区域,
Zone “localhost”是本机正解,配置文件名为named.localhost
Zone “1.0.0.127.in-addr.arpa”是本机反解,配置文件名为named.empty
Type是master,代表主域
我们再看named.localhost这个配置文件
Ttl是生存周期,
第一个@是当前域
第二个@是DNS服务器全名
Rname.invalid.是管理员邮箱,如果邮箱是[email protected],在这里可以写成root,如果写全就是root.kevin.com,因为@在这里表示本机的意思,所以就以.代替。
0 // serial,这是一个序列号,主从dns服务器之间更新的依据。
1D // refresh,更新时间,从dns服务器多久主动请求更新一次。
1H // retry,重试时间,当从dns服务器更新失败后,多久再更新。
1W // expiry,失效时间,当从服务器多长时间没有成功更新时,就不再更新。
3H // minimum,相当于TTL值。
这几个参数的大小也是有限制的:
serial<=2^32=4294967296
refresh>=retry*2
refresh+retry<expiry
expiry>=retry*10
expiry>=7 day
D是天,W是星期,M是分,H是小时,纯数字是秒
NS @ NS记录,后面跟域名服务器的名称。@代表本机时,可以省略
www A 192.168.100.200 //主机记录
AAAA是IPV6的,我还不会呢,所以不说了!
修改主机名:
vi /etc/sysconfig/network
HOSTNAME=kevin.kevin.com
vi /etc/hosts
添加192.168.92.168 kevin.kevin.com
vi /etc/resolv.conf设置dns服务器
添加nameserver 192.168.92.168
下面我们就来新建一个正向区域和反向区域(反向你可以不做,在你自己了!)
注意大小写,这个在LINUX里是很重要的!
正向区域:
vi /etc/named.conf
zone “Kevin.com”IN {
type master;------主DNS
file “Kevin.con.zone”;--配置文件名
allow-update {any;};--允许更新
};
也要特别注意这里的引号!同时这里面的注释用的是//,而不是#了!
反向区域:
vi /etc/named.conf
zone “92.168.192.in-addr.arpa”IN {
type master;
file “Kevin.con.rev”;
allow-update {any;};
};
File后面的文件名可以随便起,你知道就行了!
完成后,用named-checkconf检查一下配置文件有没有什么语法错误,没提示就代表木有语法错误
现在去/var/named下创建这两个配置文件
但我们为了方便,最好用cp,来复制模板,这样省时省力
cp –p /var/named/named.localhost /var/named/kevin.com.zone
修改内容----注意大小写,注意顺序,同类型的要放在一起,不能一个NS,一个A,再一个CNAME,这样会出错,以前的版本里ns,mx,a等这些记录前都有个IN,比如,IN NS @
现在,我们可以加它,也可以不加它!
把第二个@改成DNS服务器的名称,注意后面有个.,这个.不能少,所有域名后加点代表这是一个完整的域名
邮箱写上,如果写全的,也要写.
@ A 192.168.92.168 是给当前域一个IP,这样你ping Kevin.com就可以通了
NS Kevin.kevin.com是说当前电脑是NS服务器
Kevin A 192.168.92.168是给kevin一个IP
www CNAME Kevin.kevin.com的结果就是www.kevin.com的IP也是192.168.92.168
以此类推
如果有邮件服务器,那么 MX记录,后面一定要有个代表优先级的数字,1-10
Zone的配置文件建完后可以named-checkzone检查下语法
检查hostname
如果主机名都不通
Vi /etc/named.conf
在option里的listen-on port 53后面要写本机IP:192.168.92.168
cp 后的-p是不更改文件权限,有人说加有人说不加,我也认为最好加上,不然可能会出现下面这个问题:
查看日志
会提示permission denied,权限不足
我们看下别的zone配置文件的权限
Ll /var/named
可以看到named.localhost是root named
而我们的kevin.com.zone是root root
修改
这样就正常了!
正向完了,现在看反向
反向配置文件跟正向配置文件基本是一样的,只是把A记录换成了PTR记录
前面是IP地址的最后一位,后面是域名,什么cname之类的都可以删了!
重启服务service named restart
反向解析正常
我们在客户端试下
前面我们已经手动配置过网卡IP了,dns设置为192.168.92.168
ifconfig 没看到eth0这个网卡
Ifconfig –a或ifconfig eth0可以看到有这个网卡
ifup eth0启用这个网卡
并查看IP设置
nslookup kevin.kevin.com
木有问题