DNS:域名系统
DNS是一种用于internet上提供IP地址和域名相互映射的分布式服务系统。可以通过IP地址获取相应的域名,也可以通过域名获取IP,这样可以不用记住难记的IP。
我们实际网络中的DNS服务是由网络运营商提供的。大多数地区都有相应的域名服务器。114.114.114.114是一个公共的DNS服务器,任何地方都可以通过这个服务器获取DNS服务。
域名是通过.来区分不同级的,其中最后一级为顶级域名如:com,edu,org等等。域名的分配是通过授权机构来完成的。
cmd中可以通过nslookup查询本地dns服务器IP,linux中一般应用host可以进行域名的解析。
DNS:DNS报文格式
DNS是一个应用层协议,基于TCP/IP传输,一般的DNS报文传输层是UDP报文。下面是DNS报文的格式:
DNS报文由12字节长的首部和4个长度可变的字段组成。
标识字段:由客户程序设置并由服务器返回结果。客户程序通过它来确定响应与查询是否匹配。(可以视为报文ID)
标志字段:定义各种标志位。
问题数、资源记录数、授权资源记录数和额外资源记录数记录下面4个字段对应的数目。
DNS查询报文中的问题部分