DNS协议模拟实现

本文详细介绍了DNS协议,包括其概述、域名结构、解析器的工作原理,以及DNS协议的抓包分析,如报文结构、查询问题和响应资源记录格式。此外,还探讨了DNS协议的模拟实现步骤,通过Winsock网络程序模拟UDP数据报,帮助读者深入理解DNS的作用。

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

目录

 

一、DNS概述

1、简介

2、发展

3、DNS域名结构

4、DNS解析器

二、DNS协议抓包分析

1、DNS解析过程

2、DNS协议报文结构

3、DNS查询报文中每个查询问题的格式

4、DNS响应报文中的资源记录格式

5、据包DNS查询(DNS query)

6、数据包 DNS 响应(DNS Response)

三、DNS协议模拟实现

1、内容

2、数据结构说明

3、代码


一、DNS概述

1、简介

DNS是计算机域名系统或域名解析服务器(Domain Name System 或Domain Name Service) 的缩写,它是由解析器以及域名服务器组成的。域名服务器是指保存有该网络中所有主机的域名和对应IP地址,并具有将域名转换为IP地址,并具有将域名转换为IP地址功能的服务器的服务器。其中域名必须对应一个IP地址,而IP地址不一定有域名。将域名映射为IP地址的过程就称为“域名解析”。在Internet上域名与IP地址之间是一对一(或者多对一)的,域名和IP地址之间的转换过程称为域名解析,域名解析需要由专门的域名解析服务器来完成,DNS就是进行域名解析的服务器。DNS命名用于Internet等TCP/IP网络中,通过用户友好的名称查找计算机和服务。域名的最终指向是IP。DNS是因特网的一项核心服务,作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP数串。

2、发展

DNS最早于1983年由保罗·莫卡派乔斯(Paul Mockapetris)发明;原始的技术规范在882号因特网标准草案(RFC 882)中发布。1987年发布的第1034和1035号草案修正了DNS技术规范,并废除了之前的第882 和883号草案。在此之后对因特网标准草案的修改基本上没有涉及到DNS技术规范部分的改动。

3、DNS域名结构

通常 Internet 主机域名的一般结构为:主机名.三级域名.二级域名.顶级域名。 Internet 的顶级域名由 Internet网络协会域名注册查询负责网络地址分配的委员会进行登记和管理,它还为 Internet的每一台主机分配唯一的 IP 地址。全世界现有三个大的网络信息中心: 位于美国的 Inter-NIC,负责美国及其他地区; 位于荷兰的RIPE-NIC,负责欧洲地区;位于日本的APNIC ,负责亚太地区。

4、DNS解析器

解析器,或另一台DNS服务器递归代表的情况下,域名解析器,协商使用递归服务,使用查询头位。

解析通常需要遍历多个名称服务器,找到所需要的信息。然而,一些解析器的功能更简单地只用一个名称服务器进行通信。这些简单的解析器依赖于一个递归名称服务器(称为“存根解析器”),为他们寻找信息的执行工作。

二、DNS协议抓包分析

1、DNS解析过程

1.1当客户机提出查询请求时,首先在本地计算机的缓存中查找,如果在本地无法查询信息,则将查询请求发给DNS服务器

1.2首先客户机将域名查询请求发送到本地DNS服务器,当本地DNS服务器接到查询后,首先在该服务器管理的区域的记录中查找,如果找到该记录,则进行此记录进行解析,如果没有区域信息可以满足查询要求,服务器在本地缓存中查找

1.3

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值