12 May 2015

DNS名词

  • Bind(Berkeley Internet Name Domain):搭建DNS服务的软件
  • DNS(Domain Name System):域名系统
  • Hostname:主机名
  • FQDN(Fully Qualified Domain Name):完整主机名称(主机名+域名),可以准确表示出主机的位置
  • NameServer(NS):DNS服务器
  • A(Adress):位址
  • Zone:每个需要解析的Domain(eg. www.baidu.com)

Hostname和Domain Name

<src=”https://github.com/jimmysc/jimmysc.github.io/raw/master/images/dns/HostnameAndDomainName.png” width = “300” height = “200” alt=”图片名称” align=center />

DNS出现

  • 不同主机之间的数据包传送,需要知道双方的IP地址
  • IP地址的格式:32bits的IPV4和128bits的IPV6,实在是无法记忆
  • /ets/hosts局限性:IP的变更或域名的增加无法自动将所有Client端的hosts全部更新

DNS结构

  • 树状目录架构(阶层架构),将主机名称的管理分配在不同层级的DNS服务器中,采购分层管理,所以每部DNS服务器存储的内容不会太多,修改IP也相对容易
  • 顶层 root(.):跟域
  • 第2层特殊领域:com(公司、企业);gov(政府);org(组织,机构);net(网络,通讯);edu(教育);mil(军事);cn(中国);tw(台湾);jp(日本)

DNS查询

协议:优先UDP协议,异常时TCP协议, port 53

DNS追踪(Dig trace)

DNS解析追踪

eg. dig +trace www.baidu.com

DNS架构:master/slave架构

  • 实现容灾方案,不会因为DNS挂掉后,导致无法找到目标主机
  • master/salve都是同事提供查询服务,没有查询优先权的设定
  • master修改资料库后,并加大资料库序号,重启DNS服务,会主动告知slave更新
  • salve也可以主动check资料库序号,来决定是否更新

DNS根服务器

  • 总共13个DNS根服务器,其中唯一的一台主根服务器和9个副根服务器均设在美国(Inter-NIC,负责美国及其他地区),另外3个副根服务器分别设在欧洲的瑞典、荷兰(RIPE-NIC,负责欧洲地区)和亚洲的日本(APNIC ,负责亚太地区)
  • 13个DNS根服务器指的是逻辑上,并非物理上的服务器个数
  • 所有根服务器均由美国政府授权的互联网域名与号码分配机构ICANN统一管理,负责全球互联网域名根服务器、域名体系和IP地址等的管理
  • 所有root DNS坐标: root坐标网址

DNS攻击

1.DNS劫持
  • 在特定的网络(该网络可能是有预谋的网络环境)范围内劫持域名解析的请求,返回错误的IP或不返回IP
2.DNS欺骗
  • 通过串改DNS服务器中域名和IP映射关系,返回假的目标IP地址,导致用户实际访问的是攻击者的IP地址
3.DNS缓存投毒
  • 通过污染DNS Cache,用虚假的IP地址信息替换Cache中主机记录的真实IP地址信息来制造破坏

什么情况下导致域名对应的IP查找不到?

  • 目标DNS服务器挂掉
  • 目标DNS服务器中的A记录不存在

如何让自己的主机名称对应IP、且其他电脑可以查询到?

  • 上层DNS授权查询权,让你自己设定DNS服务器
  • 请上层DNS服务器帮你设定主机和IP对应

为什么建立中国自己的根DNS刻不容缓?

  • 2013年7月6日,上海联通DNS设备发生故障,导致2G、3G的手机用户无法上网
  • 2013年8月25日,.CN根域名服务器全线故障
  • 2014年1月21日,国内通用顶级根域名服务器解析出现异常,部分国内用户无法访问.com等域名网站。据初步统计,全国有2/3的网站访问受到影响。故障发生后,中国用户在访问时,都会被跳转到一个IP地址(65.49.2.178),而这个地址指向的是位于美国北卡罗来纳州卡里镇的一家公司


blog comments powered by Disqus