部署DNS正向解析

  • 主配置文件(/etc/named.conf):

  用来定义bind服务程序的运行。

  • 区域配置文件(/etc/named.rfc1912.zones):

  用来保存域名和ip地址对应关系的所在位置。类似于图书的目录,对应着每个域和相应ip地址所在的具体位置,当需要查看或修改时,可根据这个位置找到相关文件。

  • 数据配置文件目录(/var/named):该目录用来保存域名和ip地址真是对应关系的数据配置文件。
  1. 主配置文件:/etc/named.conf
  2. 区域配置文件:/etc/named.rfc1912.zones
  3. 正向解析模板文件:/var/named/named.localhost
  4. 反向解析模板文件:/var/named/named.loopback
  • 首先配置防火墙规则

将INPU规则链设置为只允许指定网段的主机访问本机的53端口,拒绝来自其他所有主机的流量:

 [root@localhost ~]# iptables -I INPUT -s 192.168.127.0/ -p tcp --dport  -j ACCEPT
[root@localhost ~]# iptables -A INPUT -p tcp --dport -j REJECT
[root@localhost ~]# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
ACCEPT tcp -- 192.168.127.0/ anywhere tcp dpt:domain
ACCEPT udp -- anywhere anywhere udp dpt:domain
ACCEPT tcp -- anywhere anywhere tcp dpt:domain
ACCEPT udp -- anywhere anywhere udp dpt:bootps
ACCEPT tcp -- anywhere anywhere tcp dpt:bootps
REJECT tcp -- anywhere anywhere tcp dpt:domain reject-with icmp-port-unreachable
  • 下载bind

  bind,该包为DNS服务的主程序包

  bind-utils,该报为客户端工具,默认安装,用于搜索域名指令

    [root@localhost ~]# yum install bind bind-utils -y

  • 配置DNS主配置文件
 [root@localhost ~]# vim /etc/named.conf
options {
listen-on port { any; }; #127.0.0.1改成any;表示服务器上的所有IP地址均可提供DNS域名解析服务
listen-on-v6 port { ::; };
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; }; #把localhost改为any;表示允许所有人对本服务器发送DNS查询请求
  • 修改区域配置文件
 [root@localhost ~]# vim /etc/named.rfc1912.zones
zone "crucis.top" IN {
type master;
file "named.localhost";
allow-update { none; };
}; zone "localhost" IN {
type master;
file "named.localhost";
allow-update { none; };
};
  • 定义自己的域文件

  可以从/var/named目录中复制一份正向解析的模板文件(named.localhost),然后把域名和和ip地址的对应数据填写数据配置文件中并保存。再复制时记得加上-a参数,这可以保留原始文件的所有者、所属组、权限属性等信息,以便让bind服务程序顺利读取文件内容

 [root@localhost ~]# cd /var/named
[root@localhost named]# ls
data dynamic named.ca named.empty named.localhost named.loopback slaves
[root@localhost named]# cp named.localhost crucis.top.zone -a
  • 配置自己的域文件
 [root@localhost named]# vim crucis.top.zone
$TTL 1D
@ IN SOA @ rname.invalid. (
; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS @
A 127.0.0.1
www IN A 192.168.127.140
lc IN A 192.168.127.140
whq IN A 192.168.127.140
~
  • 重启服务

    [root@localhost named]# systemctl restart named

  • 使用自己配置的DNS服务器
  • 重启网卡

    [root@localhost network-scripts]# systemctl restart network

  • 验证
 [root@localhost ~]# nslookup
> www.crucis.top
Server: 192.168.127.140
Address: 192.168.127.140# ** server can't find www.crucis.top: NXDOMAIN

  

最新文章

  1. ABP源码分析十二:本地化
  2. CADisplayLink 及定时器的使用
  3. [PHP] - Laravel 5 的 Hello Wold
  4. java 时间转换
  5. html跳转倒计时
  6. Ubuntu14.10 更新源,现在很多源已经停用了建议使用ubuntu15以上
  7. 调皮的转义之addslashes
  8. lintcode 中等题:permutations II 重复数据的全排列
  9. JAVA TCP/IP Socket通信机制以及应用
  10. 全排列算法之Perm算法实现
  11. java_ log4j的基本配置参数
  12. 程序ajax请求公共组件app-jquery-http.js中url参数部分的项目应用
  13. 【日记】一次程序调优发现的同步IO写的问题,切记
  14. [Swift]LeetCode9. 回文数 | Palindrome Number
  15. [Linux]ln -al输出内容解析
  16. [Leetcode 62]机器人走路Unique Path 动态规划
  17. vue-cli + element-ui + webpack 新建项目
  18. Global Web Index发布社交网络现状调查,Snapchat增速领跑移动端所有App,四分之一Facebook用户年龄在45岁以上【转载+整理】
  19. 事件驱动模型 IO多路复用 阻塞IO与非阻塞IO select epool
  20. 1、Cocos2dx 3.0游戏开发找小三之前言篇

热门文章

  1. 老瞎眼 pk 小鲜肉 (线段树)
  2. sql防止注入的技巧
  3. oracle impdp 覆盖导入 table_exists_action关键字使用
  4. MySql大小写配置
  5. Oracle查看锁表和解锁
  6. mybatis标签selectkey无法返回主键值
  7. MySQL多表查询总结
  8. [Luogu] 宝藏
  9. Django基础之request对象
  10. heartrbeat实现web服务器高可用