DNS协议使用UDP还是TCP?

这篇具有很好参考价值的文章主要介绍了DNS协议使用UDP还是TCP?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

DNS帧格式

DNS协议运行在UDP/TCP协议之上,使用的端口号是53(绝大部分情况DNS解析是使用UDP 53端口)

有这么两种情况DNS会使用TCP

1.解析器发出一个request后,返回的response中的TC删节标志比特位被置1时,说明报文因为超长而有删节,因为UDP最大长度是512字节。这时解析器发现后,将使用TCP重发request,TCP允许报文超过512字节。
以太网帧在局域网中的MTU是1500byte,但是在非局域网环境,如:internet下的时候,MTU是各个路由器进行一个配置的。所以,通常路由器默认的MTU为576字节。所以,为了适应网络环境,DNS协议在返回的数据报大于512的时候,就转化为了TCP协议。

2.DNS在进行区域传输的时候使用TCP协议,其他时候则使用UDP协议。

  • 区域传输时: 一个区中主DNS服务器从自己本机的数据文件中读取该区的DNS数据信息,而辅助DNS服务器则从区的主DNS服务器中读取该区的DNS数据信息,传输协议是tcp。

  • 域名解析时: 一般返回的内容都不超过512字节,首选的通讯协议是udp。使用udp传输,不用经过TCP三次握手,这样DNS服务器负载更低,响应更快

3.当域名解析的反馈报文的长度超过512字节时,将不能使用udp协议进行解析,此时必须使用tcp。通常传统的UDP报文一般不会大于512字节。
区域传输使用TCP协议的原因大概是:
1) 区域传输的数据量相比单次DNS查询的数据量要大得多
2) 区域传输对数据的可靠性和准确性相比普通的DNS查询要要高得多,因此使用TCP协议。

原文链接:https://blog.csdn.net/ljc1999/article/details/112392801文章来源地址https://www.toymoban.com/news/detail-453320.html

到了这里,关于DNS协议使用UDP还是TCP?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Wireshark抓取网卡协议分析(TCP,UDP,ARP,DNS,DHCP,HTTP超详细版本)

    使用wireshark工具抓取ping命令操作 选择本机网卡WLAN,点击开始,开始抓包 在数据列表区中选取TCP协议,在数据详细区中显示出其详细信息 (1)Frame: 物理层的数据帧概况 (2)Ethernet II: 数据链路层以太网帧头部信息 (3)Internet Protocol Version 6: 互联网层IP包头部信息 (4)Tra

    2024年02月08日
    浏览(45)
  • 2.4 - 网络协议 - TCP协议工作原理,报文格式,抓包实战,UDP报文,UDP检错原理

    「作者主页」: 士别三日wyx 「作者简介」: CSDN top100、阿里云博客专家、华为云享专家、网络安全领域优质创作者 「推荐专栏」: 对网络安全感兴趣的小伙伴可以关注专栏《网络安全入门到精通》 TCP

    2024年02月05日
    浏览(56)
  • 【网络】传输层——UDP | TCP(协议格式&&确认应答&&超时重传&&连接管理)

    🐱作者:一只大喵咪1201 🐱专栏:《网络》 🔥格言: 你只管努力,剩下的交给时间! 现在是传输层,在应用层中的报文(报头 + 有效载荷)就不能被叫做报文了,而是叫做 数据段 (报头 + 有效载荷),传输层的有效载荷就是应用层的完整报文。 端口号(port):标识了一个主机上

    2024年02月13日
    浏览(46)
  • 为什么DNS使用UDP而不是TCP详解!

    DNS(Domain Name System)使用UDP(User Datagram Protocol)而不是TCP(Transmission Control Protocol)的主要原因是出于性能和效率的考虑。下面详细解释为什么DNS选择使用UDP协议: 小型请求和快速响应:DNS查询通常是小型请求,仅需要几个字节的数据传输。UDP是无连接的协议,它不需要在通

    2024年02月02日
    浏览(48)
  • 网络协议格式 | 以太网帧、ARP数据报、IP数据报、UDP数据报、TCP数据报

    欢迎关注博主 Mindtechnist 或加入【Linux C/C++/Python社区】一起学习和分享Linux、C、C++、Python、Matlab,机器人运动控制、多机器人协作,智能优化算法,滤波估计、多传感器信息融合,机器学习,人工智能等相关领域的知识和技术。 专栏:《网络编程》 传输层及其以下的机制由内

    2024年01月16日
    浏览(69)
  • socket概述 python中如何使用TCP/UDP协议实现通信-教程

    很多编程语言中,都 使用scoket套接字实现网络通信。 Socket是对TCP/IP协议的封装,Socket本身就是一个调用接口(API),方便程序员用Socket使用TCP/IP协议簇,实现网络通信。 不同编程语言,shiyongSocket通信的语法有所区别,但基本原理类型相似。 它的两种方式,分别是TCP和UDP协

    2024年02月13日
    浏览(42)
  • TCP/UDP/ARP/DNS/HTTP/帧的包头解析(保姆级分析)

    各种包的分析总结 TCP包的分析,包括使用wireshark进行抓包的分析   第一行:2个字节表示源端口,2个字节表示目的端口(0-65535) 第二行:序列号,保证数据的顺序 第三行:确认序号:确保自己已经收到了 第四行:首部长度(数据偏移):占 4 位,它指出 TCP 报文段的数据起

    2024年02月04日
    浏览(51)
  • 网络协议与攻击模拟-17-DNS协议-报文格式

    客户机想要访问www.baidu.com,根据自己的 TCP / IP 参数,向自己的首选 DNS 服务器发送 DNS 请求 首选 DNS 收到客户机的请求后,会去查询自己的区域文件,找不到www.baidu.com的 IP 地址信息(将请求转发到根域服务器,需要配置根提示);直接可以找到www.baidu.com的 IP 地址信息(直接

    2024年02月16日
    浏览(137)
  • 完整版:TCP、UDP报文格式

    目录 TCP报文格式 报文格式 报文示例 UDP报文格式 报文格式 报文示例 报文格式 图1 TCP首部格式 字段 长度 含义 Source Port 16比特 源端口,标识哪个应用程序发送。 Destination Port 16比特 目的端口,标识哪个应用程序接收。 Sequence Number 32比特 序号字段。TCP链接中传输的数据流中每

    2024年02月13日
    浏览(46)
  • TCP协议与UDP协议详解

    TCP协议 TCP,即Transmission Control Protocol,传输控制协议。人如其名,要对数据的传输进行一个详细的控制。 TCP协议的特点:有连接,可靠传输,面向字节流,全双工 有连接:TCP协议使用时必须先建立 TCP 连接。在传送数据完毕后,必须释放已经建立的 TCP 连接。 可靠传输:可靠

    2023年04月09日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包