最近操作系统要结课,老师要求在redhat上配置各种服务器角色,包括dhcp、ftp、web、dns。前三个都还好,但就dns,被折磨的死去活来的,真让人头大。还好在同学的帮助下最后配置成功,实现了正向和反向解析,决定写篇随笔加深一下印象。

我是在VMware里面安装了redhat的虚拟机,然后把光盘加载进来,在光盘里面安装各种服务,这样免去的繁琐的命令安装。首先双击光盘,Ctrl+F弹出搜索框,输入所要搜索的文件(配置dns是我们需要的是bind文件),选择光盘,搜索出来后双击安装就可以了。全程无痛有没有(看下图)。

使用rpm -qa bind 命令查看是否安装成功,安装成功后,会返回安装版本信息(如下图)。

下面,就是更改、添加一些配置文件了。

首先我们修改主配置文件/etc/named.conf,在修改前可以先进行备份:使用cp -p /etc/named.conf /etc/named.conf.bak

options {
** listen-on port { any; };      
** listen-on-v6 port { any; };
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";
** allow-query { any; }; recursion yes; ** dnssec-enable yes;
** dnssec-validation yes; 注:前面带星号的为修改的地方

然后修改/etc/named.rfc1912.zones,这一步的作用是添加正向和反向解析。

//正向区域配置
zone "hello.com" IN {        //hello.com为自己设置的域名,你当然也可以设置其他自己喜欢的
type master;
file "hello.com.zone";
allow-update { none; };
};
//反向区域配置
zone "x.168.192.in-addr.arpa" IN {    //x为自己的网段。
type master;
file "hello.com.local";
allow-update { none; };
};

最后我们在创建正向文件和反向文件。先来添加正向文件。添加/var/named/hello.com.zone。

我们可以先使用以下命令复制一份named.local文件并重命名为hello.com.zone,这样我们只需要更改hello.com.zone文件就可以了,省去了写一些相同代码的麻烦。

cp -p /var/named/named.localhost /var/named/hello.com.zone

复制完之后,更改文件内容如下。

$TTL 1D
@ IN SOA @ rname.invalid. (
; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 192.168.x.y      //x为网段,y为IP
www A 192.168.x.y 注:一定要注意对齐。

再来添加反向解析文件。添加/var/named/hello.com.local。同样可以使用命令复制一份named.local文件并重命名为hello.com.local,然后更改文件内容如下:

$TTL 1D
@ IN SOA hello.com. root (
; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 192.168.1.92
AAAA ::
IN PTR www.hello.com.

最后我们配置dns文件。配置/etc/resolv.conf文件。

nameserver x.x.x.x        为自己IP地址

然后使用nslookup命令进行正向和反向解析。

正向解析:nslookup www.hello.com ,如果返回配置的IP地址,则解析成功。

反向解析:nslookup “所配置的IP地址”,如果返回域名,则解析成功。

(ps:本人太菜,若有错误的地方欢迎大佬随时责骂。。。。xixixii)

最新文章

  1. *HDU 2451 数学
  2. MySoft.Data 2.7.3版本的GitHub托管(ORM升级封装)
  3. 分析app和wap手机网站的不同
  4. jQuery核心之那些有效的方法
  5. poj3334Connected Gheeves(二分)
  6. hdu 1867 A + B for you again
  7. Mysql统计同一字段不同值的个数
  8. hibernate异常
  9. 分享一本书<<谁都不敢欺负你>>
  10. angular指令的简单练习
  11. ssr 服务端安装教程
  12. Memcached - In Action
  13. 强化学习(六):n-step Bootstrapping
  14. 【转】Python3 configparse模块(配置)
  15. map的使用注意事项
  16. 【Spark 深入学习 04】再说Spark底层运行机制
  17. go语言template包中模板语法总结
  18. * 和-> 优先级
  19. 从jar包还原出java源码(项目文件)
  20. LCA(离线算法)

热门文章

  1. git 命令修改commit时的用户名和邮箱地址
  2. 莱杰:期刊进口流程(文件 ID 1591640.1)
  3. 逻辑回归原理介绍及Matlab实现
  4. html5中 table数据导出到excel文件
  5. WebAPI Delete方法报错405 Method Not Allowed
  6. 从Windows系统服务获取活动用户的注册表信息(当前活动用户的sessionId. 当前活动用户的 hUserToken)
  7. StepShot4.3.0安装包_KeyGen发布
  8. jquery 显示图片
  9. mysql索引创建&查看&删除
  10. 零元学Expression Blend 4 – Chapter 21 以实作案例学习MouseDragElementBehavior