1.概述

    域名系统(DNS)是一种用于TCP/IP应用程序的分布式数据库,提供主机名字和ip地址转换的选路信息,在应用的角度上,DNS的访问通过地址解析器(resolver)完成,在unix中,解析器通过两个库函数gethostbyname和gethosybyaddr来访问,前者接受主机名字并返回IP地址,后者接收IP地址来寻找主机名字.解析器通过一个或多个名字服务器来完成这种相互交换.在RFC 1034 说明了DNS的概念和功能,RFC1035中揭示了DNS的规范和实现.

2.BASIC

  1.每个结点有至多63个字符长的标示,命名标示一律不区分大小写,以.分隔域名,域名树必须有一个唯一的域名,域名树的不同结点可使用不同的标示.

  2,顶级域名分为3个部分

    (1)apra是一个用作地址到名字的特殊域

     (2)7个3字符长的普通域

    (3)所有2字符长的域均基于ISO3166定义的国家代码

  3.在普通域中分为7个划分

域 描述
com 商业组织
edu 教育机构
gov 美国政府部门
int 国际组织
mil 美国军事网点
net 网络
org 其他组织

  3.DNS报文格式

    DNS定义了一个用于查询和响应的报文格式

  1.报文由12个字节长的首部和4个长度可变得字段组成

  标示字段由客户程序设置并由服务器返回结果,客户程序通过它确定响应与查询是否匹配

  16bit标志字段被划分为若干个字段

  

  QR是1bit字段:0标示查询报文,1标示响应报文

  opcode是4bit字段.0为标准查询,1为(反向查询)和2(服务器状态请求)

AA是1bit标志,标示授权回答(authoritative answer)该名字是授权于该域名的

  TC是1bit字段,标示可截断的,使用UDP时,表示应答长度超过512字节时,只返回当前的512字节

RD是1bit表示期望递归,

  RA是1bit字段,标示可用递归

  随后的3字段必须为0

rcode是一个4bit的返回码字段,通常值为0(没有差错)和3(名字差错),名字差错只有一个授权名字服务器返回,标示查询中制定的域名不存在

  随后的4个16bit说明最后4个变长字段包含的条目数

  

  

 

  

TCP/IP DNS的更多相关文章

  1. [TCP/IP]DNS解析

    DNS解析主机的IP地址 host -t A www.baidu.com

  2. TCP/IP详解之:IGMP和DNS

    第13章 IGMP:Internet组管理协议 IGMP用于支持主机和路由器进行多播: IGMP是IP层的一部分,IGMP报文通过IP数据报进行传输: IGMP报文长度为固定8 Byte: 报文中,I ...

  3. TCP/IP(六)应用层(DNS和HTTP协议)

    前言 到这一篇我已经把TCP/IP五层模型详细的说明了一遍,大体的从物理层到最上层的应用层做了一个大概的了解,其实总体学下来东西非常的多,我们需要经常的去系统性的去学习它.不然过一段时间就忘记了! 回 ...

  4. HTTP相关:TCP/IP、DNS

    最近在看HTTP的书,看得有点慢,而且断断续续的,很多东西看完就忘了.知识点多且零散,感觉要多看几遍才能消化. TCP/IP协议族按层次分为4层: 应用层: 应用层决定了向用户提供应用服务时通信的活动 ...

  5. IP、TCP和DNS与HTTP的密切关系

    看了上一篇博文的发表时间,是7月22日,现在是10月22日,已经有三个月没写博客了.这三个月里各种忙各种瞎折腾,发生了很多事情,也思考了很多问题.现在这段时间开始闲下来了,同时该思考的事情也思考清楚了 ...

  6. TCP/IP详解 卷一(第十四章 DNS:域名系统)

    域名系统(DNS Domain Name System)是一种用于TCP/IP应用程序的分布式数据库,它提供主机名字和IP地址之间的转换及有关电子邮件的选路信息. 从应用角度上看,对DNS的访问时通过 ...

  7. tcp协议 tcpip协议 http协议,IP,DNS,端口号

    每当看到HTTP协议,tcp/ip协议,TCP协议总是蒙圈:在这里先记录一下,方面自己查看 TCP协议:TCP(Transmission Control Protocol 传输控制协议)是一种面向连接 ...

  8. TCP/IP(域名DNS)

    域名是不带http://的. 有DNS就能解析域名,只要联网,不用担心你的域名和IP无法映射起来. 当然,域名和IP的映射也可以通过本地hosts文件(优先于DNS)添加.C:\Windows\Sys ...

  9. 结合Wireshark捕获分组深入理解TCP/IP协议栈之DNS协议

    摘要:     本文简单介绍了DNS协议理论知识,给出URL解析步骤,详细讲述了DNS报文各个字段含义,并从Wireshark俘获分组中选取DNS相关报文进行分析. 一.概述 1.1 DNS      ...

随机推荐

  1. 冒泡排序&&选择排序 以及时间效率对比

    package com.test4; import java.util.*; //Calendar 显示时间 /** * @author qingfeng * 功能:冒泡排序 */ public cl ...

  2. Java练习 SDUT-1253_进制转换

    进制转换 Time Limit: 1000 ms Memory Limit: 65536 KiB Problem Description 输入一个十进制数N,将它转换成R进制数输出. Input 输入 ...

  3. mysql 中 DATE_ADD函数和 DATE_SUB函数用法

    mysql 中 DATE_ADD(date,INTERVAL expr type) 和 DATE_SUB(date,INTERVAL expr type) 这些函数执行日期运算. date 是一个 D ...

  4. Python语言的缺点

  5. Spring读取配置文件,地址问题,绝对路径,相对路径

    Spring在读取配置文件时,是相对于bin,或者WEB-INF的: “applicationContext.xml”就是找bin或WEB-INF及子文件夹下的文件: “/res/applicatio ...

  6. jq动画和停止动画

    使用jq 实现动画循环效果 <!DOCTYPE html> <html lang="en"> <head> <meta charset=& ...

  7. Java反射机制(五):使用反射增强简单工厂设计模式

    关于简单工厂设计模式的讲解,可参考博文<设计模式: 简单工厂模式>,此处不再介绍:  我们先观察之前介绍的关于简单工厂: public class OperateFactory { pub ...

  8. [转载] CentOS系统开机自动挂载光驱 和 fstab文件详解

    参考 http://blog.itpub.net/12272958/viewspace-676977/ 一.开机自动挂载光驱 1.按习惯,root用户,在/media目录下建立目录cdrom——mkd ...

  9. docker swarm搭建tidb踩坑日记

    背景 公司新项目数据量翻了一倍,每天上亿数据量的读写,传统的单库单表已经满足不了目前的需求,得考虑下分布式存储了.那用啥呢,之前有考虑用到mycat,但是一进官网,一股山寨气息扑面而来,技术群进群还收 ...

  10. H3C 查看RIP的debugging信息