Linux系统工程师3.6企业DNS服务器搭建

目录

一.关于dns的名词解释

二.dns服务的安装与启用 :

三.高速缓存dns :

四:dns的正向解析 :

五.dns的反向解析 :

六.dns的双向解析

七.DNS的集群 :

八.DNS的更新


一.关于dns的名词解释

dns:
domain name service(域名解析服务)

#关于客户端:#
/etc/resolv.conf	##dns指向文件
nameserver 172.25.254.20

#测试:
host www.baidu.com	##地址解析命令
dig www.baidu.com	##地址详细解析信息命令


A记录			##ip地址叫做域名的Address 记录
SOA			##授权起始主机
dns顶级
.  13
次级
.com .net .edu .org ....

baidu.com

#关于服务端#
bind		##安装包
named		##服务名称
/etc/named.conf	##主配置文件
/var/named	##数据目录
端口		##53

关于报错信息:
1.no servers could be reached	##服务无法访问(服务开启?火墙?网络?端口?)
2.服务启动失败			##配置文件写错 journalctl -xe查询错误
3.dig 查询状态
NOERROR				##表示查询成功
REFUSED				##服务拒绝访问
SERVFAIL			##查询记录失败,(dns服务器无法到达上级,拒绝缓存)
NXDOMAIN			##此域名A记录在dns中不存在

二.dns服务的安装与启用 :

在服务器中 :     

 dnf install bind.x86_64  -y

systemctl enable --now named

netstat -antlupe | grep named

systemctl start firewalld

firewall-cmd --permanent --add-servive=dns

firewall-cmd --reload

 vim /etc/resolv.conf        写 nameserver 114.114.114.114

vim /etc/sysconfig/network        写GATEWAY=172.25.254.32

dns解析设置为114.114.114.114,网关设定为自己可以上网的真机ip,如果可以上网的主机与服务器不在同一网段,那么需要可以上网的主机先开启地址伪装功能,然后将其统一网段的ip设定成服务器的网关

在客户端中:

vim /etc/resolv.conf     写 nameserver 172.25.254.224(服务器ip)  

服务器中:

vim /etc/named.conf

将11,19改成 listen-on port 53 { any; };         ##在本地所有网络借口上开启53端口

                    allow-query     { any; };             ##允许查询A记录的客户端列表

                    dnssec-validation no ;              ##金庸dns检测使dns能够缓存外部信息到本机

systemctl restart named 

测试:在客户端中  dig www.baidu.com

 三.高速缓存dns :

服务器中:

vim /etc/named.conf

20行加 :forwarders { 114.114.114.114; } ;

然后在另外两台客户端中,

vim /etc/resolv.conf

写 nameserver 主机器ip,设可以上网的网关

然后分别dig相同的网站看访问时间的差别

tips:火墙允许dns

四:dns的正向解析 :

在服务器中:

vim /etc/resolv.conf        #将nameserver改成自己主机ip

vim /etc/named.conf         #注释掉原先的自己写的114 dns 

 vim /etc/named.rfc1912.zone

        zone "westos.org" IN {        ##维护的域名
                type master;        ##当前服务器位主dns
                file "westos.org.zone";    ##域名A记录文件
                allow-update { none; };    ##允许更新主机列表
        };

cd /var/named

ls

cp -p named.localhost westos.org.zone

ll                 #看组是否是named

vim /var/named/westos.org.zone

$TTL 1D				#TIME-TO-LIVE(dns地址保存时间长度)
@       IN SOA   dns.westos.org. root.westos.org. (			#SOA授权起始(Start of Authority)
                                        0       ; serial		#域名版本序列号
                                        1D      ; refresh		#刷新时间(辅助dns)
                                        1H      ; retry			#重试时间(辅助dns)
                                        1W      ; expire		#过期时间(辅助dns,查询失败过期停止对辅助域名的应答)
                                        3H )    ; minimum		#A记录最短有效期
        NS      dns.westos.org.		
dns     A       172.25.254.224
www     A       172.25.254.111

然后在客户端中进行测试:

五.dns的反向解析 :

服务器中:

vim /etc/named.rfc1912.zones 最后添加写

zone "254.25.172.in-addr.arpa" IN {         ##反着写
    type master;
    file "172.25.254.ptr";                              ##数据文件
    allow-update { none; };
};

cd /var/named/

cp -p named.loopback 172.25.254.ptr       ##复制模板

vim 172.25.254.ptr

systemctl restart named

测试: dig -x 172.25.254.224

六.dns的双向解析

实验环境:

客户端两台
    1.1.1.0网段                ##ifconfig ens3 1.1.1.124
    172.25.254.0网段      ##ifconfig ens3 172.25.254.123

服务端一台两个网段的ip

    1.1.1.224
    172.25.254.224

在1.1.1.0网段的客户机中(1.1.1.124)
    nameserver 1.1.1.224
在172.25.254.0网段的客户机中(172.25.254.123)
    nameserver 172.25.254.224

cd /var/named/

cp -p westos.org.zone westos.org.inter

vim westos.org.inter

cp -p /etc/named.rfc1912.zones  /etc/named.rfc1912.inters

vim /etc/named.rfc1912.inters

zone "westos.com" IN {
    type master;
    file "westos.org.inter";
    allow-update { none; };
};

 vim /etc/named.conf

#zone "." IN {
##       type hint;
##       file "named.ca";
##};
#
##include "/etc/named.rfc1912.zones";
##include "/etc/named.root.key";


view localnet {
        match-clients { 1.1.1.0/24; };
        zone "." IN {
                type hint;
                file "named.ca";
        };
        include "/etc/named.rfc1912.inters";
        
};

view any {
        match-clients { any; };
        zone "." IN {
                type hint;
                file "named.ca";
        };
        include "/etc/named.rfc1912.zones";
        
};

systemctl restart named 

测试:分别在两台客户端dig同一个地址,显示不同的ip解析

七.DNS的集群 :

主dns    (ip是223 dns也改成自己的)

        vim /var/named/westos.org.zone

	$TTL 1D
	@       IN SOA   dns.westos.org. root.westos.org. (
                                        	2021080603      ; serial
                                        	1D      ; refresh
                                        	1H      ; retry
                                        	1W      ; expire
                                        	3H )    ; minimum
               	 	NS      dns.westos.org.
	dns             A       172.25.254.223
	www             CNAME   lee.a
	lee.a           A       172.25.254.121
	lee.a           A       172.25.254.221
	westos.org      MX 1    172.25.254.223.

vim /etc/named.rfc1912.zones 

zone "westos.com" IN {
        type master;
        file "westos.com.zone";
        allow-update { none; };
        also-notify { 172.25.254.123; };    ##数据变化主动通知的辅助dns
}; 

次dns(ip是123,dns改成自己的)

        dnf install bind -y

        systemctl disable --now firewalld

        vim /etc/named.conf

 vim /etc/named.rfc1912.zones

	zone "westos.org" IN {
        type slave;        ##dns状态位辅助dns
        masters {172.25.254.223;};    ##主dns的ip
        file "slaves/westos.org.zone";    ##同步数据文件
	};

ls /var/named -l 看slaves 是不是属于named 

systemctl restart named

测试:在dns主机上更改数据文件,并增加serial序列号,重启named

          辅助DNS机上看到信息已与主机同步。

 

八.DNS的更新

        在服务器中:

        dnf install dhcp-server -y

        cp /usr/share/doc/dhcp-server/dhcpd.conf.example  /etc/dhcp/dhcpd.conf

 

        vim /etc/dhcp/dhcpd.conf 

rpm -qc bind

dnssec-keygen -a HMAC-SHA256 -b 128 -n HOST westoskey     ##生成秘钥 

mv Kwestoskey.+163+63449.private  Kwestoskey.+163+63449.key    /mnt        ##将两把钥匙移动到mnt目录

cd /mnt
ls

cat Kwestoskey.+163+63449.private
cat Kwestoskey.+163+63449.key

 

vim /etc/westos.key 

    key "westoskey" {
        algorithm hmac-sha256;
        secret "8SxQ/8DZM6zyaYQx4vth7Q==";        ##改写成为自己生成的密钥
};

 

vim /etc/named.conf 

写一句 include"/etc/westos.key";

vim /etc/named.rfc1912.zones 

vim /etc/dhcp/dhcpd.conf 

    systemctl restart dhcpd
    systemctl restart named 

测试 :客户端中,设置客户端网络为dhcp,保证ip可以从dhcp服务中获取。更改客户端主机名为westosb.westos.com
        dig westosb.westos.com

        1.查看/etc/resolv.conf内容,没有nameserver

        2.重启网卡获取ip。查看/etc/resolv.conf内容,nameserver为服务器ip,说明获取成功,ip为172.25.254.71.

         3.主机名为westosb.westos.org 属于westos.org这个域

        4.dig westosb.westos.org

 

 

 

 

 

 

 

 

 

 

 

        

        

Linux系统中安装特定版本的Python(如Python 3.6),你可以通过几个步骤来完成: 1. **使用包管理器**:如果你的Linux发行版有官方软件仓库提供Python 3.6,例如Ubuntu、Debian 或 CentOS,你可以打开终端并运行相应的命令: - 对于基于Debian/Ubuntu的系统,如Ubuntu 18.04及以后的版本: ``` sudo apt-get update sudo apt-get install python3.6 ``` - 对于CentOS/RHEL: ``` sudo yum install epel-release sudo yum install python36 ``` 如果上述命令不可用,可能是因为该版本已过期,你可以考虑添加EPEL额外存储库然后升级到较新的Python版本。 2. **使用Anaconda(推荐)**:Anaconda是一个流行的Python数据科学平台,它包含了多种版本的Python。在终端中: ``` wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh bash Miniconda3-latest-Linux-x86_64.sh ``` 完成安装后,激活一个新的环境并安装Python 3.6: ``` conda create -n myenv python=3.6 conda activate myenv ``` 3. **从源码编译安装**:如果以上方法都不适用,你可能需要下载Python源码手动编译。首先,访问Python官网下载3.6的源代码(https://www.python.org/downloads/source/)。然后按照文档说明解压、配置(`./configure --prefix=/path/to/installation`)、编译(`make`)和安装(`sudo make altinstall`)。记得替换`/path/to/installation`为你想要安装的位置。 安装完成后,检查是否成功安装了Python 3.6: ``` python3.6 --version ``` 这将显示安装的Python 3.6版本。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值