宏观 配置和管理DNS服务器

域名系统(DNS)的概念

DNS 是域名系统(Domain Name System)的缩写,它是一种组织域层次结构的计算机和网络服务命名系统。DNS
的作用是将域名转换为网络可以识别的 IP 地址,并将查询结果保存起来,以便在需要时告诉客户端。

宏观

服务器
安装bind服务
配置DNS 服务器的参数和区域配置:named.conf
创建并配置区域文件

DNS 查询过程

端口类型默认端口号说明
查询端口UDP 53用于处理客户端的 DNS 查询请求
缓存更新端口TCP 9953用于区域数据缓存更新,实现 DNS 服务器之间的数据同步
DNS 查询过程包括正向查询(域名->IP)和反向查询(IP->域名)。

DNS 服务器的角色

DNS 服务器负责接收客户端的查询请求,并根据请求类型进行相应的查询和响应。

配置和管理DNS服务器

1. 安装DNS服务器

  • bind - DNS服务器
  • bind-chroot - 将进程隔离在一个受限目录
    DNS服务器软件包通常称为BIND,主要包含以下组件:
  • named - 真正的DNS服务器守护进程
  • rndc - 远程管理DNS的命令行工具
  • dig - DNS查找调试工具
  • host - DNS查找工具
  • nsupdate - 动态DNS更新的工具

在将Linux服务器上安装DNS服务。在Debian/Ubuntu系统上使用:

sudo apt-get install bind  bind-chroot -y 

在CentOS/RHEL系统上使用:

sudo yum install bind  bind-chroot -y

2.理解 DNS 服务器配置文件

  • named.conf 文件
    named.conf 文件是 DNS 服务器的全局配置文件,用于设置 DNS 服务器的参数和区域配置。

  • resolv.conf 文件
    resolv.conf 文件用于配置 DNS 客户端的 DNS 服务器地址。

  • zone 文件
    zone 文件是 DNS 服务器的区域配置文件,用于存储域名的 IP 地址信息。

(1) 使用root用户身份编辑named.conf文件:

sudo vim /etc/named.conf

(2) 定义监听地址和查询访问权限:
在options 中添加或者修改

  • listen-on port 53 { any; };:指定 DNS 服务器监听的端口号,这里使用的是标准 DNS 端口号 53。any 表示允许来自任何 IP 地址的查询请求。
  • listen-on-v6 port 53 { ::1; };:指定 DNS 服务器监听的 IPv6 端口号,这里使用的是 IPv6 本地的回环地址 ::1。如果你的 DNS 服务器不支持 IPv6,可以忽略这个设置。
  • directory “/var/named”;:指定 DNS 服务器的配置文件和数据文件所在的目录,这里设置为 /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”;:指定内存使用情况的输出文件路径和名称。
  • recursion yes;:指定 DNS 服务器是否支持递归查询,这里设置为 yes 表示启用递归查询。
  • allow-query { any; };:指定允许哪些 IP 地址进行查询请求,这里设置为 any 表示允许任何 IP 地址进行查询。
listen-on port 53 { 192.168.1.101; };
allow-query { localhost; 192.168.1.0/24; };

(3) 引入正向查找区域文件:

#后缀为"example.com"自定义
zone "example.com" IN {
    type master;
    file "/var/named/example.com.zone";
};
# example.com.zone文件路径
(4) 引入反向查找区域文件:
#自定义
zone "1.168.192.in-addr.arpa" IN {
    type master;
    file "/var/named/192.168.1.zone"; };
 # 192.168.1.zone文件路径

(5) 保存文件并退出编辑。

查看配置文件是否错误

named-checkconf /etc/named.conf

3.创建/编辑正反区域文件

使用模板创建正反区域文件,在var/named中:
├── named.localhost # 正向查找区域文件模板
├── named.loopback #反向查找区域文件模板
创建并复制模板
正向查找区编辑:自己创建example.com.zone,可以自定义,在配置文件中调用

[root@localhost named]# cat example.com.zone 
$TTL 1D
@	IN SOA	@ rname.invalid. (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
	NS	@
	A	127.0.0.1
	AAAA	::1
#-------------------------------------正向查找区
news    A       192.168.10.50
wed     A       192.168.10.60

反向查找区编辑:自己创建192.168.1.zone 可以自定义,在配置文件中调用

[root@localhost named]# cat 192.168.1.zone 
$TTL 1D
@	IN SOA	@ rname.invalid. (
					0	; serial
					1D	; refresh
					1H	; retry
					1W	; expire
					3H )	; minimum
	NS	@
	A	127.0.0.1
	AAAA	::1
	PTR	localhost.
#-----------------------------------反向查找区
50      PTR     news.zeng.com.
60      PTR     wed.ang.com.

交互式查验域名系统的设置和功能是否正常。

使用命令:==nslookup ==
nslookup 的主要功能和用法包括:

  1. 查询域名对应的 IP 地址。基本命令是:nslookup domain
  2. 查询某一 IP 地址的域名。命令是:nslookup ip-address
  3. 检查域名服务器的工作情况。命令是:nslookup -server dns-server-ip
  4. 进行反向查询,从 IP 确认域名。命令是:nslookup -x ip-address
  5. 查看本地 DNS 服务器的缓存。命令是:nslookup -type=cache
  6. 交互模式,进行多次查询。命令是:nslookup -interactive
  7. 指定使用的 DNS 服务器进行查询。命令是:nslookup -server=ip domain

用DNS

  1. 查找计算机当前使用的DNS服务器
    在Windows下,可以通过"控制面板"-“网络和Internet设置”-"网络连接"查看当前使用的DNS服务器IP地址。
    在Linux下,可以通过编辑/etc/resolv.conf文件查看。
  2. 配置要使用的DNS服务器IP地址
    在Windows下,可以在网络连接的属性中,选择“Internet协议版本4(TCP/IPv4)”,然后将自己的DNS服务器IP填入"首选DNS服务器"和"备用DNS服务器"。
    在Linux下,可以直接编辑/etc/resolv.conf文件,在"nameserver"后面添加自己的DNS服务器IP。
  3. 刷新DNS缓存
    Windows下可以在命令提示符下输入ipconfig /flushdns刷新。
    Linux下可以使用service nscd restart或rndc flush命令。
  4. 测试解析
    ping一个域名,看是否会解析到正确的IP地址,以确认使用的是自己配置的DNS。
  5. 配置网关/路由器
    如果是通过网关/路由器上网,还需要在网关中配置要使用的自定义DNS服务器。
  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值