linux基础14--dns和web+dns

06-01 1554阅读

DNS:域名系统(Domain Name System)

 DNS协议是用来将域名转换为IP地址或将IP地址转换为相应的域名

DNS使用TCP和UDP端口53,给用户提供解析时一般使用UDP53

对于每一级域名长度的限制是63个字符,域名总长度则不能超过253个字符。

DNS采用分布式数据库结构提供服务:

顶级域名:.com .net .org .edu 以及国家或地区域名

高一级的服务器会存放下一级服务器的位置信息

域名从右向左可以体现层级结构,如下图所示:

linux基础14--dns和web+dns

 

DNS服务类型

主要服务器:

本地创建数据文件,又称权威服务器

辅助服务器:

本地有数据文件,从主服务器更新而来

缓存服务器:

本地无数据文件,利用缓存给客户提供服务,提高重复查询的效率

对客户端来讲,各服务器作用相同,都是进行域名解析、

域名访问web服务,实验内容图示:

linux基础14--dns和web+dns

配置web服务:

首先卸载httpd,避免造成干扰

可以先卸载rpm包的httpd,避免给初学者造成干扰

rpm  -q  httpd

rpm  -e  httpd  --nodeps

下载httpd

wget https://dlcdn.apache.org/httpd/httpd-2.4.58.tar.bz2

无法验证 dlcdn.apache.org 的由 “/C=US/O=Let's Encrypt/CN=R3” 颁发的证书

在后面添加:--no-check-certificate

tar解包,进入解包后的目录

tar xf httpd-2.4.58.tar.bz2

cd httpd-2.4.58

配置(检测软硬件环境,定制安装参数)

yum -y install gcc apr apr-devel cyrus-sasl-devel expat-devel libdb-devel openldap-devel apr-util-devel apr-util pcre-devel pcre

./configure --prefix=/usr/local/httpd

编译,安装

make && make install

echo $?           

ls /usr/local/httpd          

启动软件,测试

/usr/local/httpd/bin/apachectl start

netstat  -lntp | grep  httpd

关闭防火墙

systemctl  stop  firewalld

setenforce       0

  • 配置dns服务
  • 安装:

    yum -y install bind bind-chroot

    vim /etc/named.conf

    options {

            listen-on port 53 { any; };        #设置为在53端口监听。any;表示允许任何IP地址的主机连接到服务器

            listen-on-v6 port 53 { ::1; };     #::1;表示只允许本地IPv6地址(即localhost)连接到服务器

            directory       "/var/named";    #指定了BIND服务器存储数据文件的目录。在这里,数据文件存储在/var/named目录下

            dump-file       "/var/named/data/cache_dump.db";       #指定了缓存数据库的dump文件的路径,用于记录缓存中的数据

            statistics-file "/var/named/data/named_stats.txt";       #指定了用于记录BIND服务器运行统计信息的文件路径

            memstatistics-file "/var/named/data/named_mem_stats.txt";     #指定了用于记录BIND服务器内存使用统计信息的文件路径

            recursing-file  "/var/named/data/named.recursing";           #指定了用于记录递归查询的文件路径

            secroots-file   "/var/named/data/named.secroots";           #指定了用于记录DNSSEC根密钥的文件路径

            allow-query     { any; };       #指定了允许查询的主机。any;表示允许任何主机查询服务器   

    linux基础14--dns和web+dns

    vim /etc/named.rfc1912.zones

    添加:

    zone "zhanshen.com" IN {

            type master;

            file "test.com";

            allow-update {none;};

    };

    linux基础14--dns和web+dns

    cd /var/named

    cp -a named.localhost test.com

    vim test.com

    添加:

            $TTL 1D

    @       IN SOA  zhanshen.com. rname.invalid. (

                                            0       ; serial

                                            1D      ; refresh

                                            1H      ; retry

                                            1W      ; expire

                                            3H )    ; minimum

            NS      dns

    dns           A       192.168.10.4

    www        A       192.168.10.3 

    让我们逐行解释:

    $TTL 1D: 这是指定默认生存时间(Time-To-Live)为1天,即资源记录在DNS缓存中的存活时间为1天

    @ IN SOA www.zhanshen.com. rname.invalid. (: 这是SOA(Start of Authority)记录,指定了该区域的起始授权信息。具体解释如下:

      • @: 表示当前域名(www.zhanshen.com)。
      • IN: 表示Internet类别。
      • SOA: 表示Start of Authority。
      • www.zhanshen.com.: 域名的主要名称服务器。
      • rname.invalid.: 负责管理该域名的邮箱地址。这里的 rname.invalid. 仅用作示例,并不是真实的邮箱地址。
      • 0: 序列号,用于标识DNS区域文件的版本号。
      • 1D: 刷新时间,表示多久后从主服务器重新获取数据(1天)。
      • 1H: 重试时间,表示如果无法从主服务器获取数据,多久后再次尝试(1小时)。
      • 1W: 过期时间,表示多久后数据被认为无效(1周)。
      • 3H: 最小时间,表示对资源记录的缓存过期时间(3小时)。

        NS www.zhanshen.com.: 指定了一个名称服务器(Name Server),即www.zhanshen.com是该域名的主要名称服务器。

        www A 192.168.10.3: 指定了一个A记录,将www.zhanshen.com解析为IPv4地址192.168.10.3。

        naws AAAA ::1: 指定了一个AAAA记录,将naws.zhanshen.com解析为IPv6地址::1。

        这段文本定义了一个简单的DNS区域文件,指定了域名www.zhanshen.com的基本DNS资源记录

        DNS中可注册的记录类型

        A                               主机记录,正向查询记录

        PTR                  指针记录,反向查询记录

        SOA                  权威机构,主从复制时,从服务器的认证服务

        NS                    名称服务,指定服务器名

        MX                   邮件交换器

        CNAME           别名记录,用于发布,隐藏真实服务器名

        启动

        systemctl  start  named-chroot

        netstat -lnutp | grep named

        测试

        nslookup www.test.com 127.0.0.1

        关闭防火墙

        systemctl  stop  firewalld

        setenforce       0

        注意:别忘了在网卡设置里删除指定的dns

        客户端访问web服务

        编辑网卡配置文件

        vim  /etc/sysconfig/network-scripts/ifcfg-ens33

        DEVICE=ens33

        ONBOOT=yes                                   

        IPADDR=192.168.111.131

        NETMASK=255.255.255.0

        GATEWAY=192.168.111.2               #同网段通信,网关可不配置

        DNS1=192.168.111.130                  #实际dns服务器ip

        1. 通过域名访问网站测试:

        curl  www.test.com

        提醒:测试时关闭web服务器、dns服务器的防火墙

免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们。

相关阅读

目录[+]

取消
微信二维码
微信二维码
支付宝二维码