DNS

DNS

1.1.安装部署dns
yum install bind        ##安装
systemctl start named    ##开启
systemctl enable named   ##开机自启
systemctl stop firewalld  
systemctl disable firewalld

主配置文件  /etc/named.conf
子配置文件  /etc/name.rfc1912.zones
数据目录   /var/named

2.高速缓存dns
vim /etc/named.conf  
11 listen-on port 53 { any; }; ##所有网关开放53接口
17 allow-query     { any; };   ##允许所有人登录
18        forwarders {172.25.254.225;};   ###服务端去225主机提供


systemctl restart named     ##重启服务

测试:在服务端dig www.baidu.com,可以看到延迟为4021毫秒


在客户端编辑DNS指向文件,vim /etc/resolv.conf

nameserver  172.25.254.225

然后在客户端再进行测试,dig www.baidu.com ,便可以看到延迟降为0毫秒

3.权威dns的正向解析   就是将域名解析为IP地址
vim /etc/named.rfc1912.zones  ##子配置文件   
zone "westos.com" IN {       
        type master;
        file "westos.com.zone";   ##解析的文件
        allow-update { none; };


cd /var/named/  
cp -p named.localhost westos.com.zone    ##复制模版时复制权限


 vim westos.com.zone              ##解析文件编写
$TTL 1D                           ##记录可以保存一天
@       IN SOA  dns.westos.com. root.westos.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns.westos.com.    #域名的名称服务器
dns     A       127.25.254.225
www     A       172.25.254.111


systemctl restart named   ###重启
测试:
dig  www.westos.com   ##dig www.westos.com 之后就可以看到解析到的地址是刚才配置文件里面设置的地址

4.反向解析    就是将ip地址解析为网址
 vim /etc/named.rfc1912.zones

 zone "254.25.172.in-addr.arpa" IN {
          type master;
         file "westos.com.ptr";
         allow-update { none; };
 };


cd /var/named/

cp -p named.loopback westos.com.ptr


vim westos.com.ptr
$TTL 1D
@       IN SOA  dns.westos.com. root.westos.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns.westos.com.
dns     A       172.25.254.225
111     PTR     www.westos.com.

测试:dig -x 172.25.254.111    就可以看到172.25.254.111对应的域名为www.westos.com


5.双向解析
建立对外的数据文件
cd /var/named/     
 cp -p westos.com.zone westos.com.inter     ###建立一个对外部的数据文件
$TTL 1D
@       IN SOA  dns.westos.com. root.westos.com. (
                                        0       ; serial
                                        1D      ; refresh
                                        1H      ; retry
                                        1W      ; expire
                                        3H )    ; minimum
        NS      dns.westos.com.
dns     A       1.1.1.100
www     A       1.1.1.111


建立对外的子配置文件

cd /etc/
cp -p /etc/named.rfc1912.zones /etc/named.rfc1912.zones.inter    ##建立一个对外部的子配置文件
 vim /etc/named.rfc1912.zones.inter
  zone "westos.com" IN {
          type master;
          file "westos.com.inter";
          allow-update { none; };

编辑主配置文件
vim /etc/named.conf     ##主配置文件
  view localnet {            ##内部允许
         match-clients { 172.25.254.22;};
  zone "." IN {
          type hint;
          file "named.ca";
  };
  include "/etc/named.rfc1912.zones";    ##内部的数据文件
  include "/etc/named.root.key";
  };
  view any {             ##外部允许
         match-clients {any;};
  zone "." IN {
          type hint;
          file "named.ca";
  };
  include "/etc/named.rfc1912.zones.inter";   ##外部的数据文件
  include "/etc/named.root.key";
  };

systemctl restart named   重启服务

测试:不同主机dig  www.westos.com  可以看到,

在服务端主配置文件中内部允许172.25.254.125这台主机访问内部文件,所以125这台主机dig www.westos.com解析到的地址是172.25.254.111

服务端配置文件中没有允许172.25.254.25这台主机,所以直接访问到外部文件,所以解析到的地址是在westos.com.zone.inter中配置的1.1.1.111

6.辅助dns
主:
vim /etc/named.rfc1912.zones.inter
  zone "westos.com" IN {
          type master;
          file "westos.com.inter";
          allow-update { none; };
          also-notify{172.25.254.125;};
  };


 systemctl restart named
注意:每次更改A记录文件后必须更改serial的数值,这个数值最大值10位    

vim /var/named/westos.com.inter


辅助:
yum install bind
systemctl start named
systemctl stop firewalld
vim /etc/named.conf
vim /etc/named.rfc1912.zones
 25 zone "westos.com" IN {
 26         type slave;
 27         masters {172.25.254.122;};
 28         file "slaves/westos.com.inter";
 29         allow-update { none; };
 30 };

systemctl restart named

7.dns的远程更新
###基于ip
vim /etc/named.rfc1912.zones
  zone "westos.com" IN {
          type master;   
          file "westos.com.zone";
          allow-update { 172.25.254.125; };   ##允许谁更新
          also-notify{172.25.254.125;};
 };

chmod g+w /var/named/    ##加权限
在125这台主机上
[root@dns-slave ~]# nsupdate     
> server 172.25.254.225
> update add bbs.westos.com 86400 A 1.1.1.3    ##添加一个解析
> send
>

[root@localhost named]# rm -fr westos.com.zone.jnl 


###基于钥匙
   cp -p /etc/rndc.key /etc/westos.key    ###复制一个钥匙文件模版
    dnssec-keygen -a HMAC-MD5 -b 128 -n HOST westos     ##生成一个钥匙
    cat Kwestos.+157+54740.key            ###查看钥匙
  
    vim /etc/westos.key          ##编辑钥匙文件,
          key "westos" {            ##更改钥匙名字
                algorithm hmac-md5;
                secret "M0g+VtRMj7KWFpHMj11DWQ=="; ##把钥匙正确的哈希字符改过来   
         };

vim /etc/named.conf       ##主配置文件
       include "/etc/westos.key";

vim /etc/named.rfc1912.zones    ##子配置文件
            zone "westos.com" IN {
                    type master;
                    file "westos.com.zone";
                    allow-update { key westos; };    ##允许更新的类型
                    also-notify{172.25.254.125;};
            };

systemctl restart named   重启服务

测试:

scp Kwestos.+157+38729* root@172.25.254.125:/mnt/    ##把公钥密钥发给测试机

root@dns-slave mnt]# nsupdate -k Kwestos.+157+54740.private  ##测试机命令
> server 172.25.254.122
>  update add bbs.westos.com 86400 A 1.1.1.3  
> send
>

DDNS

1.在服务端搭建DHCP服务器

安装dhcp服务

yum install dhcp -y

2.配置dhcp文件

vim   /etc/dhcp/dhcpd.conf


客户端将网络模式改为dhcp,重启网络服务就可以重新获取到地址

将服务端的westos.com.zone文件里 www那行删除掉

服务端重启named服务

systemctl  restart  named

在客户端dig www.westos.com  解析到的地址是自己的IP

服务端改变地址池的范围,客户端重新获取地址

重新dig www.westos.com,看到解析的地址是IP地址



05-30
### DNS 配置教程与问题解决 DNS(Domain Name System,域名系统)是互联网中将域名转换为IP地址的服务。以下是关于DNS配置的详细信息和解决方案: #### 一、DNS服务的基本原理 DNS通过分布式数据库实现域名解析功能,其核心任务是将易于记忆的域名转换为计算机可识别的IP地址[^1]。域名空间采用层次化结构,由根域、顶级域、二级域等组成。 #### 二、DNS服务器类型 DNS服务器主要分为以下几种类型: - **主DNS服务器**:负责存储区域文件并提供权威解析。 - **辅DNS服务器**:从主DNS服务器同步数据,用于负载均衡和冗余备份。 - **缓存DNS服务器**:不存储区域文件,仅通过缓存机制加速查询响应速度[^1]。 #### 三、DNS查询方式 DNS查询分为递归查询和迭代查询两种方式: - **递归查询**:客户端向DNS服务器发送请求后,DNS服务器负责完成整个解析过程,并将最终结果返回给客户端。 - **迭代查询**:DNS服务器只返回自己知道的部分信息,客户端需要继续向其他DNS服务器发起查询直到获得最终结果。 #### 四、DNS缓存机制 为了提高查询效率和减轻服务器负担,DNS引入了缓存机制。缓存记录包括TTL(Time To Live)值,表示该记录在缓存中的有效时间。当TTL过期时,DNS服务器会重新获取最新记录[^1]。 #### 五、DNS服务的配置文件 Linux系统中常用的DNS服务软件是BIND(Berkeley Internet Name Domain)。其主要配置文件如下: - **named.conf**:全局配置文件,定义区域和模块加载。 - **zone文件**:包含具体域名到IP地址的映射关系。 配置示例: ```bash options { directory "/var/named"; allow-query { any; }; }; zone "example.com" IN { type master; file "example.com.zone"; allow-update { none; }; }; ``` 上述代码定义了一个名为`example.com`的主DNS区域,并指定了对应的zone文件[^1]。 #### 六、如何搭建DNS服务? ##### 服务端配置 1. 安装BIND软件包。 2. 编辑`named.conf`文件,添加或修改区域配置。 3. 创建或编辑zone文件,填写正向解析(A记录)和反向解析(PTR记录)。 4. 启动或重启DNS服务。 ```bash systemctl start named systemctl enable named ``` ##### 客户端配置 在客户端操作系统中设置DNS服务器地址。例如,在Windows系统中,可以通过网络适配器属性进行设置;在Linux系统中,编辑`/etc/resolv.conf`文件: ```bash nameserver 8.8.8.8 nameserver 8.8.4.4 ``` 此处以Google公共DNS为例[^2]。 #### 七、常见DNS问题及解决方法 1. **无法解析域名**:检查DNS服务器是否正常运行,确保客户端配置了正确的DNS地址。 2. **解析速度慢**:优化DNS缓存策略,减少递归查询次数。 3. **安全问题**:启用DNSSEC(Domain Name System Security Extensions),防止中间人攻击和数据篡改。 ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值