2015年3月24更新 添加了要加的配置域名解析器(否则会找不到域名)
 
 
一、创建该实验的的模型
 
配置完gate虚拟机的两张网卡后,就启动gate的转发
[root@localhost root]# vi /etc/sysctl.conf
...
net.ipv4.ip_forward = 1
...
 
修改成以上的形式,net.ipv4.ip_forward=1是指表示转发,0表示不转发
 
vm1和vm2要添加到达对方的路由
vm1上:
# route add -net 192.168.128.0/24 gw 10.10.10.8
 
vm2上:
# route add -net 10.10.10.0/24 gw 192.168.128.8
 
通过ping命令互相ping通
 
 
二、开始BIND的设置:
 
1、打开/etc/name.conf
[root@localhost root]# vi /etc/named.conf

   
添加上了后面一段
zone "gr.org" IN {                    //指定一个域名为gr.org的正向区域
        type master;
        file "gr.org.db";                //指定文件名是gr.org.db
};
 
 
区域Type:
master: 主域服务
slave: 从域服务
stub: 只复制主域的NS记录,属于BIND特有功能.
hint: 设定初始化设置根域服务器所用的参数.
forward: 域转发设置
2、添加域名解析文件
添加一个gr.org的区域(zone),类型为主机(master,还有两种是slave和hint)
文件就在option定义的目录下/var/named
在该目录下创建gr.org.db文件
创建该文件,并插入以下的内容
[root@localhost root]# vi /var/named/gr.org.db
 
 
TTL
time to live 生存时间,默认为秒
@

表示相应的域名,表示一个域名定义的开始
这里代表gr.org

IN

表示后面的数据使用的是INTERNET标准

SOA

表示授权开始

ns.gr.org.

该域的主域名服务器

root.gr.org.

管理员邮件地址(这里的邮件地址中的用.来代替常见的邮件地址的@.)

20150317

serial(d. adams)表示配置文件的修改版本,格式是年月日当日修改的次数,每次修改时都应该修改这个数字,

要不然所做修改的不会更新到网上的其它DNS服务器的数据库上,即你所做的更新很可能对于不以你你的所配置

的DNS服务器数据库上,即你所做的更新很可能对于不以你的所配置的DNS服务器为DNS服务器的客户端来说就

不会反映出你的更新,也就对他们来说你更新是没意义的

6H

refresh,定义以单位(M分,H时,W周,默认是秒即不带单位)的刷新频率,即规定从域名服务器多长时间查

询一个主服务器,以服务器的数据的是最新的

30M

retry,以30分钟的时间间隔重试,即当从服务器试图在主服务器上查询更新时,而连接失败了,则这个值规定

了从服务器多长时间后重试

1W

expire,规定从服务器在向主服务器更新失败之后清除记录的时间

15M

minimum TTL,规定缓冲服务器不能与主服务器联系上的清除记录时间

NS

net server,表示该主机是域名服务器

A

address,定义了一条A记录,表示该主机名到IP地址的对应记录

MX

mail exchange,定义一条邮件记录

CNAME

定义了对应主机的一个别名

PTR

指一条反向域名解析PTR记录,类似A记录(PTR指针记录由IP地址提供商提供)

 (图表2016-11-02更新)
{
配置域名解析器
#cat > /etc/resolv.conf
nameserver 10.10.10.10
DNS客户机配置文件,用于设置DNS服务器的IP地址及DNS域名,还包含了主机的域名搜索顺序。该文件是由域名解析器(resolver,一个根据主机名解析IP地址的库)使用的配置文件。它的格式很简单,每行以一个关键字开头,后接一个或多个由空格隔开的参数。
resolv.conf的关键字主要有四个,分别是:
nameserver //定义DNS服务器的IP地址
domain //定义本地域名
search //定义域名的搜索列表
sortlist //对返回的域名进行排序
此处是2015/3/24完善的}
 
3、测试设置是否完成
设置完成后,可用cat命令查看是否设置完整,确认后
使用命令
 
# service named start
启动服务,提示成功启动即可使用下面的命令来查看是否能连接到本机设置的DNS
{
如果要开机启动就是用下面的命令
chkconfig named on
此处是2015/3/24完善的}
(1)测试vm1上能否查询到该域名
# nslookup -sil www.gr.org
如果出现
**  server can't find www.gr.org: SERVFAIL
可以查看/etc/named.conf和/var/named/下的相关文件,这里是gr.org.db是否设置出错,一个地方出错都不会执行
 
(2)测试vm2上能否查询到该域名
成功之后,可以在vm2上查看是否存在
[root@localhost root]#  nslookup -sil www.gr.org
;; connection timed out; no servers could be reached
出现这个问题,很大程度上是由于gate机器上已经关掉该端口了,所以就使用关掉防火墙的简单方法开启该端口(53)。
在gate虚拟机上
# service iptables stop
 
(3)测试Windows上能否查询到该域名
使用Windows系统测试是否存在
先试试ping www.gr.org
看可不可以ping的通,一般可以的(应为我们也有这个网址被用了),那么如何判断是否是连我们的vm1的?
那就要断掉本地网络再试试ping命令
发现ping www.gr.org是不通的,而ping 10.10.10.10是通的,原因是没有设置DNS,设置方法如下:
1.关闭本地网络(以太网)
2.把vm1的DNS改为vm1的ip
再试试
>ping www.gr.org
 
4、在上面的基础上进行添加反向域名解析
(1)下面就要我们加上反向域名解析域区
# vi /etc/named.conf 
添加以下的语句(内容)
zone "10.10.10.in-addr.arpa" IN{                    //定义一个ip是10.10.10.*的反向域区
        type master;
        file "10.10.10.db";
};
注:如果在file下面加上一句allow-transfer {192.168.6.4;};
就是说指定从服务器,从服务器上面就要加上主服务器的ip即加上
master {192.168.6.3;};
 
(2)添加反向域名解析文件和配置
再用命令# vi /var/named/10.10.10.db
添加如下的配置信息
$TTL 86400
@       IN      SOA     ns.gr.org       root.gr.org.(
                20150317  6H  30M  1W  15M)
          IN      NS      ns.gr.org.
10      IN      PTR     ns.gr.org.
10      IN      PTR     www.gr.org.
11      IN      PTR     mail.gr.org.
 
注:
PTR        指一条反向域名解析PTR记录,类似A记录(PTR指针记录由IP地址提供商提供)
 
注:这里刚好是对称的,不容易看出,其实就比如192.168.133.0/24(就是用133.168.192的特殊域),后面的10,11就类似于用192.168.133.0/24的来表示就是10.133.168.192.in-addr.arpa(也就是192.168.133.10),这里是10.10.10.10.in-addr.arpa和11.10.10.10.in-addr.arpa
 
(3)测试配置是否完成
使用命令# rndc reload重启域名服务
通过# nslookup -sil 10.10.10.10
(在vm2也可以看到一样的信息)
就可以看到了信息
Server:         10.10.10.10
Address:        10.10.10.10#53

10.10.10.10.in-addr.arpa        name = www.gr.org.
10.10.10.10.in-addr.arpa        name = ns.gr.org.

有两条,证明我们的反向域名解析也配置好了
 
注:有什么意见或建议可以在评论区回复

(一)跟我一起玩Linux网络服务:DNS服务——BIND(/etc/named.conf、/var/named)设置实现和解释的更多相关文章

  1. (四)跟我一起玩Linux网络服务:DHCP服务配置之中继代理

    继第三部分的DHCP服务器的设置成功,我们来做一个中继代理服务器的配置吧. 我们的虚拟机结构如图: 具体参考: (一)跟我一起玩Linux网络服务:DNS服务——BIND(/etc/named.con ...

  2. 今晚,玩一玩linux上的DNS

    老哥遇到的问题, 我先按正规方式操作一波. 一,安装dns服务 yum install bind bind-utils -y 二,修改/etc/named.conf文件 options { liste ...

  3. (二)跟我一起玩Linux网络服务:BIND的自动部署(附上完整的代码)

    2015-03-24   如果看了我之前写的文章 DNS服务——BIND(/etc/named.conf./var/named)设置实现和解释,再来看这篇文章,你会发现部署BIND是件很简单的事情 如 ...

  4. LINUX中的DNS服务---DNS集群

    一.DNS集群的理解 在使用DNS的时候,为了缓解服务器的压力,会使用多个辅助DNS服务器来分担主DNS的工作.这些DNS就叫做DNS集群. 二.配置过程 1)在辅DNS中操作如下:(主机号为172. ...

  5. LINUX中的DNS服务---DNS正向、反向和双向解析

    一.DNS的正向解析 也就是域名解析为IP地址进行访问! 1)vim  /etc/named.conf   ---->  删除forwarders所在行 2)vim  /etc/named.rf ...

  6. LINUX中的DNS服务---高速缓存DNS

    一.什么是DNS     Domain Name System,域名系统.     万维网上作为域名和IP地址相互映射的一个分布式数据库,能够使用户更方便的访问互联网.他主要负责把域名和IP的相互转换 ...

  7. Postfix 邮件服务 - DNS服务

    DNS 服务 (系统需要配置静态 IP 地址) yum install bing* -y 一.配置 NDS 域名解析: 直接添加以下内容: [root@mail ~]# cat /etc/named. ...

  8. (三)跟我一起玩Linux网络服务:DHCP服务配置之主服务器配置

    我们今天来做DHCP服务器的配置,我们的前提示要实现用一台虚拟机做DHCP服务器 1.首先,我们要有DHCP软件,我们用到下面两个软件(可以使用其他方法从网上直接安装,具体方法网络搜索) dhcp-3 ...

  9. centos DNS服务搭建 DNS原理 使用bind搭建DNS服务器 配置DNS转发 配置主从 安装dig工具 DHCP dhclient 各种域名解析记录 mydns DNS动态更新 第三十节课

    centos  DNS服务搭建  DNS原理  使用bind搭建DNS服务器 配置DNS转发 配置主从  安装dig工具  DHCP  dhclient  各种域名解析记录  mydns DNS动态更 ...

随机推荐

  1. Hdu 4312-Meeting point-2 切比雪夫距离,曼哈顿距离,前缀和

    题目: http://acm.hdu.edu.cn/showproblem.php?pid=4312 Meeting point-2 Time Limit: 2000/1000 MS (Java/Ot ...

  2. SourceTree的基本使用

    1. SourceTree是什么 拥有可视化界面的项目版本控制软件,适用于git项目管理 window.mac可用 2. 获取项目代码 1. 点击克隆/新建 2. 在弹出框中输入项目地址,http或者 ...

  3. 使用js实现html锚功能,可以任意定位锚的位置,比锚更加灵活

    今天记录一个js功能,发现该功能很实用,拿出来跟大家分享. 这里我使用js的window.scrollTo()函数,该函数的用法给大家重复一下,语法为scrollTo(x,y),这里x表示在窗口文档显 ...

  4. I2C和SCCB协议的小区别和误区

    I2C采用的是7位地址数据,首字节最低位代表读写位,第二字节SUB寄存器高位为1表示自动加subaddress SCCB采用的是8位地址数据,比如0x42,B01000010 使用I2C协议时,第一次 ...

  5. angularjs开发常见问题-1(持续更新中...)

    angularJs中学习中- 1.刷新当前页面数据:$state.reload service.create(data).then(function (newItem) { flash.success ...

  6. 包的定义和导入-----package

    1.包的定义 其中:   . 表示当前路径 2.包的导入 一个类需要被外包访问的话,需要定义为public class. package org.lxh.demo08.a ; public class ...

  7. hdu 2821 Pusher(dfs)

    Problem Description PusherBoy is an online game http://www.hacker.org/push . There is an R * C grid, ...

  8. 在Eclipse中怎样公布创建的JavaWebproject

    博客<在Eclipse中怎样创建JavaWebproject>中图文并茂的说明了Eclipse中创建JavaWebproject的方法:博客<怎样为Eclipse开发工具中创建的Ja ...

  9. [Javascript] IIFE

    Javascript modules are a design pattern that allow you to encapsulate your code into smaller self ma ...

  10. 基于keepalived对redis做高可用配置---转载

    关于keepalived的详细介绍,请移步本人相关博客:http://wangfeng7399.blog.51cto.com/3518031/1405785 功能 ip地址 安装软件 主redis 1 ...