Linux基础学习-使用bind提供域名解析服务

本文介绍了如何使用BIND提供DNS域名解析服务,包括正向和反向解析实验,部署从服务器,安全加密传输,以及缓存服务区的设置,旨在确保稳定、高效的域名查询体验。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用BIND提供域名解析服务

DNS域名解析服务

为了降低用户访问网络资源的门槛,DNS(Domain Name System,域名系统)技术应运而生,这是一项用于管理和解析域名与IP地址对应关系的技术,就是能够接受用户输入的域名或IP地址,然后自动查找与之匹配的IP地址或域名,即将域名解析为IP地址(正向解析),或将IP地址解析为域名(反向解析).为了提供不间断、稳定且快速的域名查询服务,保证互联网的正常运转,提供了下面三种类型的服务器.

  • 主服务器(在特定区域内具有唯一性,负责维护该区域内的域名与IP地址之间的对应关系)
  • 从服务器(从主服务器中获得域名与IP地址的对应关系并进行维护,以防主服务器宕机等情况)
  • 缓存服务器(通过向其他域名解析服务器查询获得域名与IP地址的对应关系,并将经常查询的域名信息保存到服务器本地,以此来提高重复查询时的效率)

13台根DNS服务器的信息

名称管理单位地理位置IP地址
AINTERNIC.NET美国费吉尼亚洲198.41.0.4
B美国信息科学研究所美国加利福尼亚州128.9.0.107
CPSINet美国费吉尼亚州192.33.4.12
D马里兰大学美国马里兰州128.8.10.90
E美国航空航天管理局美国加利福尼亚州192.203.230.10
F因特网软件联盟美国加利福尼亚州192.5.5.241
G美国国防部网络信息中心美国费吉尼亚州192.112.36.4
H美国陆军研究所美国马里兰州128.63.2.53
IAutonomica公司瑞典斯德哥尔摩192.36.148.17
JVeriSign公司美国费吉尼亚州192.58.128.30
KRIPE NCC英国伦敦193.0.14.129
LIANA美国费吉尼亚州199.7.83.42
MWIDE Project 日本东京202.12.27.33

安装bind服务程序

[root@qdlinux ~]# yum install bind-chroot
//主配置文件/etc/named.conf
//区域配置文件/etc/named.rfc1912.zones
//数据配置文件目录/var/named

//13和19行修改为any,表示服务器上的所有IP地址均可提供DNS域名解析服务
//以及允许所有人对本服务器发送DNS查询请求
 12 options {
 13         listen-on port 53 { any; };
 14         listen-on-v6 port 53 { ::1; };
 15         directory       "/var/named";
 16         dump-file       "/var/named/data/cache_dump.db";
 17         statistics-file "/var/named/data/named_stats.txt";
 18         memstatistics-file "/var/named/data/named_mem_stats.txt";
 19         allow-query     { any; };

正向解析实验

如果在实验中遇到了bind服务启动失败,可以执行named-checkconfnamed-checkzone命令分别检查主配置文件与数据配置文件中的语法或参数的错误.

//编辑区域配置文件
zone "linuxprobe.com" IN {
type master;//主区域
file "linuxprobe.com.zone";//域名与IP地址解析规则保存的文件位置
allow-update {none;};//允许哪些客户机动态更新解析信息
};
//cd /var/named进入此目录
//拷贝一份named.localhost文件为linuxprobe.com.zone
//cp -a named.localhost linuxprobe.com.zone
//编辑此文件
$TTL 1D
@       IN SOA  linuxprobe.com. root.linuxprobe.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      ns.linuxprobe.com.
ns      IN A    192.168.56.5
www     IN A    192.168.56.5

//为了检验解析结果,要把DNS地址指向本机IP地址.
//重启网络服务nslookup www.linuxprobe.com,查看解析验证结果.

反向解析实验

//编辑区域配置文件
zone "linuxprobe.com" IN {
type master;
file "linuxprobe.com.zone";
allow-update {none;};
};
//
zone "56.168.192.in-addr.arpa" IN {//表示192.168.56.0/24网段的反向解析区域
type master;
file "192.168.56.arpa";
};
//cd /var/named进入此目录
//拷贝一份named.loopback为192.168.56.arpa
//cp -a named.loopback 192.168.56.arpa
//编辑此文件
$TTL 1D
@       IN SOA  linuxprobe.com. root.linuxprobe.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      ns.linuxprobe.com.
ns      IN A    192.168.56.5
5       PTR     www.linuxprobe.com.

//重启bind服务,服务名称是named,检验解析结果,nslookup www.linuxprobe.com
//nslookup
//192.168.56.5

部署从服务器

//主服务器修改配置文件
zone "linuxprobe.com" IN {
type master;
file "linuxprobe.com.zone";
allow-update {192.168.56.15;};
};
//
zone "56.168.192.in-addr.arpa" IN {
type master;
file "192.168.56.arpa";
allow-update {192.168.56.15;};
};
//从服务器修改配置文件
zone "linuxprobe.com" IN {
type slave;
masters { 192.168.56.5; };
file "slaves/linuxprobe.com.zone";
};
//
zone "56.168.192.in-addr.arpa" IN {
type slave;
masters { 192.168.56.5; };
file "slaves/192.168.56.arpa";
};

//重启服务
//cd /var/named/slaves进入此目录
//发现数据配置文件已经从主服务器同步过来了

安全的加密传传输

参数作用
-a指定加密算法,包括RSAMD5(RSA)、RSASHA1、NSEC3RSASHA1、NSEC3DSA等等
-b密钥长度(HMAC-MD5的密钥长度在1~512为之间)
-n密钥的类型(HOST表示与主机相关)
[root@qdlinux named]# dnssec-keygen -a HMAC-MD5 -b 128 -n HOST master-slave
Kmaster-slave.+157+62715

[root@qdlinux named]# cd /var/named/chroot/etc/
//编辑文件vim transfer.key
key "master-slave" {
algorithm hmac-md5;
secret "iQ5v7U8p/sowiGeaaqmlog==";
};
//修改权限
chown root:named transfer.key
chmod 640 transfer.key
ln transfer.key /etc/

//主配置文件加载密钥验证功能
include "/etc/transfer.key";
allow-query {any;}
allow-transfer { key master-slave; };

//如果从服务器不做配置,那么现在是不能从主服务器同步数据文件的
//从服务器配置
cd /var/named/chroot/etc/
//编辑文件vim transfer.key
key "master-slave" {
algorithm hmac-md5;
secret "iQ5v7U8p/sowiGeaaqmlog==";
};
//修改权限
chown root:named transfer.key
chmod 640 transfer.key
ln transfer.key /etc/

//修改主配置文件
include "/etc/transfer.key";

server 192.168.56.5{
  keys { master-slave; };  
};

分离解析技术

//首先注释这几行
zone "." IN {
        type hint;
        file "named.ca";
};

//编辑区域配置文件
acl "china" {122.71.115.0/24;};
acl "american" {106.185.25.0/24;};
view "china" {
match-clients {"china";};
zone "linuxprobe.com"{
type master;
file "linuxprobe.com.china";
};
};

view "american" {
match-clients {"american";};
zone "linuxprobe.com"{
type master;
file "linuxprobe.com.american";
};

//建立数据配置文件
//cd /var/named进入此目录
//cp -a named.localhost linuxprobe.com.china
//cp -a named.localhost linuxprobe.com.american
//编辑这两个文件分别如下
$TTL 1D
@       IN SOA  linuxprobe.com. root.linuxprobe.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      ns.linuxprobe.com.
ns      IN A    122.71.115.10
www     IN A    122.71.115.10

$TTL 1D
@       IN SOA  linuxprobe.com. root.linuxprobe.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      ns.linuxprobe.com.
ns      IN A    106.185.25.10
www     IN A    106.185.25.10

//重启bind服务
//验证解析结果,配置网卡模拟两个国家用户,查看解析结果,解析地址是不同的.

部署缓存服务区

 12 options {
 13         listen-on port 53 { any; };
 14         listen-on-v6 port 53 { ::1; };
 15         directory       "/var/named";
 16         dump-file       "/var/named/data/cache_dump.db";
 17         statistics-file "/var/named/data/named_stats.txt";
 18         memstatistics-file "/var/named/data/named_mem_stats.txt";
 19         allow-query     { any; };
 20 #       allow-transfer { key master-slave; };
 21         forwarders      { 202.102.128.68; };
//服务器一块网卡用于外网,一块用于内网,客户机一块网卡为内网
//服务器上主配置文件做以上修改,重启服务,客户机DNS指向服务器内网的网卡地址.这样客户机就可以正常解析了.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值