美文网首页
DNS 解析常识

DNS 解析常识

作者: michael_jia | 来源:发表于2016-04-18 15:18 被阅读0次

    DNS:Domain Name System,是互联网的基础。TLD / Domain Name / FQDN

    几个基础 RFC 规范:

    • RFC 1034:Domain names - concepts and facilities.
    • RFC 1035:Domain names - implementation and specification.
    • RFC 8499:DNS Terminology.
    • Ron Aitchison’s DNS for Rocket Scientists.

    DNS 解析

    FQDN

    FQDN - Fully qualified domain name

    BIND and DNS

    • BIND:The most widely used Name Server Open Source Software。
    • ISC:Internet Systems Consortium),负责域名服务器软件 BIND 开发和维护的组织。
    • Open Stand

    解析示例

    serverfault - DNS: trailing periods Pro DNS and BIND 2005th Edition - Ron Aitchison

    @:空主机头,直接解析主域名,比如:80gou.com(@ IN A 86400 192.0.34.166)

    nginx 对 trailing dot(full stop | period) 的处理

    至少 nginx 1.8 可以完全处理 FQDN 问题,你不需要做任何处理。你可以试验一下 host 和http_host 变量。host 会移除最后的 .,而http_host 不会移除。如果你想进行统一处理,移除最后的 .,则 Nginx - Redirect Domain Trailing Dot

    The following snippet does this in a general way, without having to hard code any hostnames (useful if your server config handles requests for multiple domains). Add this inside any server definition that you need to.

    if ($http_host ~ "\.$" ){
        rewrite ^(.*) $scheme://$host$1 permanent;
    }
    

    概念

    • 权威 DNS(Authoritative name server)
      权威就是对该域名及下级域名能“说了算”的服务器;在权威上可以设置,修改,删除该区域内的解析记录, 而非权威DNS只能是查询。

    • Local DNS
      Local DNS 就是和我们日常上网接触最多的 DNS,包括你的服务提供商(ISP)分配给你的 DNS(一般为两个),或者公共 DNS。因为填写在你的本地电脑上,所以也称为Local DNS。

    • 什么是公共 DNS(public DNS providers)
      要上网就必须使用 DNS(将 Domain Name 域名转成 IP 地址)。这个 DNS 可能是你的运营商提供给你的,也可以是一些其它组织提供的,比如我们熟知的谷歌的 8.8.8.8,国内 114 dns的 114.114.114.114。他们负责给我们的请求提供解析服务。

    请注意,公共 DNS:
    不是根服务器;
    不是权威 DNS 托管商,不提供域名注册等服务,比如万网和 DNSpod;
    不是权威 DNS,不针对个别域名进行解析;
     
    公共 DNS 服务的特点:
     1. 服务的域名数量巨大,用户数多;
     2. 要具有安全性和抗攻击性;
     3. 低延迟(响应快);
     4. 无拦截(无广告);
     5. 对解析成功率要求非常的高。
    
    • A记录
      A (Address) 记录用来指定主机名(或域名)对应的 IP 地址记录。通俗地说,A 记录就是服务器的IP,域名绑定 A 记录就是告诉 DNS,当你输入域名访问网站的时候将你引导到设置在 DNS 的 A 记录所对应的服务器上。
    Windows 下命令
    • nslookup
      进入命令行输入域名即可得到对应 IP;
    • ipconfig /all | find "DNS" /i
      查看你机器的DNS;
    • ipconfig /flushdns
      清空本地缓存;
    参考

    相关文章

      网友评论

          本文标题:DNS 解析常识

          本文链接:https://www.haomeiwen.com/subject/gicalttx.html