精华内容
下载资源
问答
  • DNS请求分析

    千次阅读 2016-05-04 17:40:47
    对当前 DNS 服务器进行 DNS 查询分析

    经监控中心报告, 我电脑出现 DNS 并发过大现象, 下面是分析过程

    环境

    pdns-recursor-3.7.2-1.x86_64
    pdns-static-3.4.4-1.x86_64
    mariadb-server-5.5.41-2.el7_0.x86_64

    测试过程, 抓取 dns 数据包, 另存为文件 dns.pcap

    tcpdump -c 100000 -ni eth0 udp port 53 -w dns.pcap

    利用 dnstop 生成报告

    dnstop -l 4 dns.pcap > dnstop.report

    简单报告分析

    主机请求比例分析

    Sources            Count      %   cum%
    -------------- --------- ------ ------
    10.198.128.212       496    1.0    1.0
    10.198.128.219       482    1.0    2.0
    10.198.128.213       394    0.8    2.7
    10.198.128.209       392    0.8    3.5
    10.198.128.210       388    0.8    4.3
    10.198.128.214       384    0.8    5.1
    10.198.128.216       354    0.7    5.8
    10.198.128.215       352    0.7    6.5
    .......

    DNS回应比例

    Destinations      Count      %   cum%
    ------------- --------- ------ ------
    10.198.128.23     49999  100.0  100.0
    10.199.129.22         2    0.0  100.0

    DNS请求类型

    Query Type     Count      %   cum%
    ---------- --------- ------ ------
    A?             49907   99.8   99.8
    PTR?              46    0.1   99.9
    AAAA?             46    0.1  100.0
    SOA?               2    0.0  100.0

    DNS 回应正确错误比例

    Opcode     Count      %   cum%
    ------ --------- ------ ------
    Query      50001  100.0  100.0
    
    Rcode       Count      %   cum%
    ------- --------- ------ ------
    Noerror     50001  100.0  100.0

    DNS查询比例

    Query Name                      Count      %   cum%
    --------------------------- --------- ------ ------
    sh.vclound.com                  25000   50.0   50.0
    zabbix.vclound.com              24883   49.8   99.8
    mirrors.vclound.com                37    0.1   99.8
    199.10.in-addr.arpa                26    0.1   99.9

    结果, DNS 请求主要来自于 zabbix 监控请求导致.

    展开全文
  • WireShark抓DNS请求和回复数据报的分析

    万次阅读 多人点赞 2019-01-12 18:15:10
    我们简单理解DNS功能是把域名转成IP地址,我们先发送一个NDS请求数据包到本地域名服务器去找,找不到我们就去根域名服务器去找,根域名找不到我们再把顶级域名服务器地址回复给本地域名服务器,然后本地域名服务器到...

    1 DNS简单理解

    我们简单理解DNS功能是把域名转成IP地址,我们先发送一个NDS请求数据包到本地域名服务器去找,找不到我们就去根域名服务器去找,根域名找不到我们再把顶级域名服务器地址回复给本地域名服务器,然后本地域名服务器到顶级域名服务器去查询,如果依然找不到,同理,再到权限域名服务器去找 ,如果不清楚再到我的这篇博客里面去看下


    DNS的理解

     

     

     

    2 DNS请求数据包和回复数据包的格式

    我们先用Wireshake抓包NDS请求包,然后在WireShake里面输入dns过滤就行,图片如下

     

     

    1) DNS请求头部的分析

    我们点击wireshake第一条数据,图片如下

    我们从这里可以知道,NDS请求的数据报的格式是UDP(User Datagram Protocol),默认端口是53,但是会不会可能是TCP协议呢?后面会将到。

    DNS只有两种报文:查询报文、回答报文,两者有着相同格式

    然后后面我们看到Transaction ID和Flags,然后后面还有正文内容 Questions、Answer RRs、Authority RRs、Additional RRs 

    请求的数据报文格式如下

     

    Transaction ID 会话标识(2字节)
    Flags 标志(2字节)
    数量字段(总共8字节):Questions、Answer RRs、Authority RRs、Additional RRs 各自表示后面的四个区域的数目

    所以NDS请求头部是12个字节,给我记好了。

     

    Transaction ID
    请求的ID,请求和回答的报文ID一样

    DNS请求报文的Flags我展开如下

    DNS回复报文的Flags我展开如下

    这里我知道,Flag里面的Response字段,可以区分是DNS请求报文还是DNS回复报文

    我们还可以看到,期望递归和可用递归,以及回复状态码是否正确

     

    2)  DNS请求正文的分析

    不好意思,我的WireShare奔溃了,然后我换了一个NDS请求和回复数据包,但是不影响分析,正文格式如下

    我们看下WireShake NDS请求包 的数据

    我们知道这里有name,就是放域名的,然后大小不确定

    然后接下来是域名的长度也是大小,我们知道这里是9,

    我们还看到了Type,也就是资源记录的类型,一般A说明主机是IPv4,AAAA说明主机是IPv6

    然后我们也看到了Class, 对于Internet信息,总是IN

     

     

    3)  DNS回复包分析

    我们先看下WireShake的图

    我们发现NDS回复数据包比NDS请求数据包多了Answers字段,我们展开Answers开看下

    我们这里知道这里的Name是域名

    然后Type我上面也说了

    Class也说了

    然后Time to live 是缓存时间,表示的是资源记录的生命周期,一般用于当地址解析程序取出资源记录后决定保存及使用缓存数据的时间,这里单位是秒,

    然后Date length是指解析IP的大小,是4个字节,我们知道IP由网络地址和主机地址组成,是32个二进制位,四个字节,每个字节由八个二进制位组成!每个字节的取值范围是0~255

    最后面的Address是表示解析到的IP地址,这里我们看到是的194.66.233.215

     

     

     

     

     

     

    3 DNS请求什么时候用UDP协议和TCP协议

    上面的例子我们通过DNS请求报文分析,发现采用的是UDP协议,因为下面有User Datagram Protocol

    一般而言,我们DNS协议都是采用UDP协议,那会不会用TCP协议呢?什么时候用呢?

    答案是会,有下面场景会使用

    1 )NDS请求数据报的大小大于512个字节的时候

    我们先说下TCP和UDP协议的区别

    TCP基于面向连接的协议,数据传输可靠传输速度慢,适用于传输大量数据,可靠性要求高的场合。

    UDP协议面向非连接协议数据传输不可靠传输速度快,适用于一次只传送少量数据、对可靠性要求不高的应用环境

    而且我们知道UDP协议传输最大的数据是512个字节,当NDS请求数据报的大小大于512个字节的时候,实当解析器发出一个request后,返回的response中的tc删节标志比特位被置1时,说明反馈报文因为超长而有删节,所以这个时候将使用TCP重发requestTCP能将data stream分成多个segment,它就能用更多的segment来传送任意长度的数据

     

    2 ) 辅域名服务器会定时(一般时3小时)向主域名服务器进行查询以便了解数据是否有变动的时候

    辅助域名服务器:主域名服务器的备份

    辅域名服务器会定时(一般时3小时)向主域名服务器进行查询以便了解数据是否有变动。如有变动,则会执行一次区域传送,进行数据同步。区域传送将使用TCP而不是UDP,因为数据同步传送的数据量比一个请求和应答的数据量要多得多可靠的连接,保证了数据的准确性。 

     

    一般TCP支持的应用协议主要有:Telnet、FTP、SMTP

    UDP支持的应用层协议主要有:NFS(网络文件系统)、SNMP(简单网络管理协议)、DNS(主域名称系统)、TFTP(通用文件传输协议)等。

     

     

     

     

    4 总结

    1)DNS请求数据报和回复数据报的头部是12个字节,NDS回复数据报比DNS请求数据报多了Answers字段,这里面记录了缓存时间大小,域名的类型,解析的IP,IP地址的大小是4个字节

    2)NDS请求数据报的大小大于512个字节的时候NDS请求采用TCP协议

    3) 辅域名服务器会定时(一般时3小时)向主域名服务器进行查询以便了解数据是否有变动的时候NDS请求数据报采用TCP协议

    4)除了上面两种情况下,采用TCP协议,我们DNS请求采用UDP协议。     

     

     

     

     

     

    展开全文
  • DNS服务器进行域名(domain name)和与之相对应的IP地址 (IP address)转换。DNS中保存了一张域名(domain name)和与之相对应的IP地址 (IP address)的表,以解析消息的域名。 所以只需要观察哪个ip接收到大量的域名解析...

    用wireshark打开包,用dns协议过滤
    在这里插入图片描述DNS服务器进行域名(domain name)和与之相对应的IP地址 (IP address)转换。DNS中保存了一张域名(domain name)和与之相对应的IP地址 (IP address)的表,以解析消息的域名。

    所以只需要观察哪个ip接收到大量的域名解析的请求就可以判断了

    输入172.16.200.101,得到key

    在这里插入图片描述

    展开全文
  • centos7安装dns服务器

    千次阅读 2019-01-15 10:02:39
    DNS基础原理及配置详解 DNS服务器搭建与配置 ... 1.当客户端要解析一个域名时,客户端首先分析本地hosts文件,若... 2.DNS服务器接收到请求,首先分析服务器本地的缓存,看是否存在要解析的答案,有则直接返回  ...

    DNS基础原理及配置详解

    DNS服务器搭建与配置

    域名解析流程:(以www.johnson.com为例)
        1.
    当客户端要解析一个域名时,客户端首先分析本地hosts文件,若无对应的主机条目,就去分析

        本地缓存,若没有答案,则向本地DNS服务器发起请求        

        2.DNS服务器接收到请求,首先分析服务器本地的缓存,看是否存在要解析的答案,有则直接返回

        没有则向根发起请求

        3.根接收到请求,但根并不负责任何递归性的回答,所以,根会返回www.johnson.com的顶级域

         .com所在的主机地址给本地DNS服务器   

        4.本地DNS服务收到根的指向性答复,然后去找负责.com的DNS服务器

        5.负责.com的DNS服务器发现johnson.com是自己的管理的区域,但自己并不负责做递归性的答复

        所以返回负责解析johnson.com的DNS服务器地址给本地DNS服务器

        6.本地DNS服务器向负责解析johnson.com这个域的DNS服务器发起请求

        7.负责解析johnson.com这个二级域的DNS服务器接收到解析www.johnson.com请求后,分析自己

         的区域数据库文件,发现存在www主机,给本地DNS服务器返回答案(权威答案)

        8.本地DNS服务器收到答复,将答案返回给客户端,域名解析过程完成               
           
        是不是发现解析一个主机名的过程很麻烦,所以才需要缓存这个东西,把第一次请求的答案放到缓存   

        中,当同一请求再次出现时,直接从缓存中返回答案,客户端和DNS服务器都可以缓存

        需要注意的是,客户端是相对而言的,比如本地DNS服务器向根发起请求,那么相对于根,本地DNS

        服务器就是客户端,不管请求者是客户端还是DNS服务器,只要你向我发起请求,你就是客户端  

    =========================================================================================

    Censtos7  192.168.1.119  DNS服务器 

    用于测试的IP地址 192.168.1.118(随意一个IP地址,可以ping通的测试效果更明显),最终我们用自定义的域名 (此次我们用www.imooc.com)解析到该IP地址上

    安装软件:

    yum  -y  install  bind  bind-utils

    检查软件安装内容

    rpm -ql bind

     修改配置文件

    #备份一下文件
    mv /etc/named.conf /etc/named.conf.default
    
    #重新创建一个文件
    vi /etc/named.conf

    内容如下:

    
    options {
            directory       "/var/named";
    };
    
    logging {
            channel default_debug {
                    file "data/named.run";
                    severity dynamic;
            };
    };
    
    zone "imooc.com" IN {
            type master;
            file "imooc.com.zone";
    };
    

     

      检查配置文件是否正确

    named-checkconf

    添加imooc.com.zone 文件

    vi /var/named/imooc.com.zone 

    内容如下:

    $TTL 7200
    imooc.com.      IN SOA  imooc.com.      892939414.qq.com        (222    1H      15M     1W      1D)
    imooc.com.      IN      NS      dns1.imooc.com.
    dns1.imooc.com. IN      A       192.168.1.119
    www.imooc.com.  IN      A       192.168.1.118

    注意:

    892939414.qq.com是一个邮箱地址,@在DSN中是保留字符串,所以用.代替

     

    给文件赋权限 

    cd /var/named/
    
    chown root:named imooc.com.zone  

     

    检查file文件是否正确 

    named-checkzone imooc.com imooc.com.zone 

     重启服务

    systemctl restart named.service 

    测试

     dig @192.168.1.119 www.imooc.com

    将DNS服务器地址修改为192.168.1.119

    windows环境

     

     

    Linux环境下修改 /etc/resolv.conf 文件

    nameserver 192.168.1.119

    测试得到如下结果说明配置成功了。

    展开全文
  • 为了解决高负载情况下本地通用DNS服务器并发处理能力差的问题,通过分析DNS请求与响应的流处理特征,基于FPGA实现了一种硬件定制的大容量高并发DNS服务器。在DNS请求处理过程中,采用边解析边响应的并行处理方式,极...
  • 根据题意找出这个DNS服务器IP地址。 使用Wireshark打开12.pcapng这个文件。 (当应用过程需要将一个主机域名映射为IP地址时,就调用域名解析函数,解析函数将待转换的域名放在DNS请求中,以UDP报文方式发给本地域名...
  • DNS反射放大攻击分析 摘自:...DNS反射放大攻击主要是利用DNS回复包比请求包大的特点,放大流量,伪造请求包的源IP地址为受害者IP,将应答包的流量引入受害的服务器。 简...
  • DNS flood攻击分析

    2021-01-03 17:20:04
    黑客控制僵尸网络向DNS服务器发送大量不存在的域名的解析请求,最终导致服务器因大量DNS请求而超载。 1.TC源认证 ①客户端发送的DNS请求报文长度超过告警阈值,启动源认证机制。 ②拦截DNS请求,将TC标志位置为1并...
  • DNS服务器 使用后:DNS客户端<----> SNS <----> DNS服务器 主要特点: 支持所有类型的DNS请求 Analytics DNS类型:A,CNAME,SOA,MX,NS 灵活配置DNS数据包中的数据替换 支持通过IP地址选择性替换...
  • 易语言dns中继服务器源码,dns中继服务器,读取中转数据,取端口,数据包处理,处理请求,查询数据接收,生成dns数据,分析域名,分析ip,分析数据包头,调转字节序_短整,分析数据包,取NAME,调转字节序_整数,字节集到IP地址,...
  • 进入12月以来,DNS服务器递归队列居高不下,经过几天的分析和处理,现该问题已解决,具体内容如下:原因: 1、最近随机化后缀的DDOS***增多。2、针对随机化后缀DDOS***,ROOT服务器管理者对对请求进行了限制,限制...
  • DNS协议分析

    2019-10-10 17:51:27
    当一个应用进程需要把域名解析为IP地址时,该应用进程就调用解析程序,把待解析的域名在DNS请求报文中,以UDP数据报方式发送给本地域名服务器。本地域名服务器在查找域名后,把对应的IP地址放在DNS应答报文中返回。...
  • 2.抓包分析 2.1准备工作: ...(4)已知主机的私有IP为: DNS服务器为: ; 2.2查看数据包 使用DNS过滤器后可看到两个DNS包,如下; 打开第一个包(请求分析: 1.可以看到DNS是基于UDP-53端口...
  • 本实验一共需要5台主机,下面分析5台主机作为DNS服务器在Linux网络服务架构都发挥什么作用及相互之间的联系: 测试机Centos6-2发出DNS请求时(除了从服务器),假设先找子域服务器(已经设置DNS转发器指向主服务器...
  • DNS flood攻击分析

    2020-12-04 11:13:44
    黑客控制僵尸网络向DNS服务器发送大量不存在的域名的解析请求,最终导致服务器因大量DNS请求而超载。 1.TC源认证 ①客户端发送的DNS请求报文长度超过告警阈值,启动源认证机制。 ②拦截DNS请求,将TC标志位置为1并...
  • 当我们在客户端(以浏览器为例)使用域名发送一个HTTP请求的时候,DNS协议会尝试将域名解析为对应的IP。(我们知道每一个台服务器都可以通过ip和端口直接被访问。但是,用户对于由数字组成的ip是很难有记忆点的,...
  • DNS报文分析

    2021-05-21 11:24:53
    - ID 请求客户端设置的16位标示,服务器给出应答的时候会带相同的标示字段回 来,这样请求客户端就可以区分不同的请求应答了。 - QR 1个比特位用来区分是请求(0)还是应答(1)。 - OPCODE 4个比特位用来设置查询的...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 537
精华内容 214
关键字:

dns服务器请求分析