例如,互联网如何阻止某人创建自己的 DNS 并创建“www.google.com”的复制域名,将“www.google.com”网站上的流量引导至“www.google.com”的复制 DNS?
答案1
DNS 命名空间是按层次委托的:(.
根)名称服务器委托控制权,.com
再委托控制权example.com
等等。
当然递归名称服务器可能会伪造结果。为了防止这种情况,发明了 DNSSEC。它允许对记录进行签名,并且也是分层的。
答案2
好吧,当您通过域名注册商获得域名的“所有权”时,您就可以说出哪个是您所拥有的该域名的权威 DNS 服务器。
连接到互联网的每台主机都会有某种“DNS 客户端”,它会从一组受信任的“根服务器”启动所有查询。这些服务器不知道任何用户级域名,但它们会保留一个顶级域名列表(例如.com
,.net
以及国家后缀,例如.ar
阿根廷的后缀,称为国家代码顶级域名 CCTLD)。反过来,每个 CCTLD 会处理其下级的顶级域名(例如.org.ar.
阿根廷为非营利组织保留的顶级域名)。每个国家都有一套规则:在我们的阿根廷案例中,一个名为“nic.ar”的政府组织将负责处理,org.ar
并且它知道哪个服务器是每个域的权威服务器。
就 而言huesped.org.ar
,这是一个大型的艾滋病非盈利组织,他们似乎已将此事交给亚马逊处理。在这里,我使用 Linux DNS 客户端并从顶部 ( .
) 进行查询,并要求获取SOA
每个域的记录,即“授权起始”,并告诉您哪个服务器负责该记录。
user@p-2018d:~$ host -t SOA .
. has SOA record a.root-servers.net. nstld.verisign-grs.com. 2018081000 1800 900 604800 86400
user@p-2018d:~$ host -t SOA com.
com has SOA record a.gtld-servers.net. nstld.verisign-grs.com. 1533992426 1800 900 604800 86400
user@p-2018d:~$ host -t SOA ar.
ar has SOA record c.dns.ar. noc.nic.gob.ar. 2018081109 43200 3600 1728000 86400
user@p-2018d:~$ host -t SOA org.ar.
org.ar has SOA record c.dns.ar. noc.nic.gob.ar. 2018081110 43200 3600 1728000 86400
user@p-2018d:~$ host -t SOA huesped.org.ar.
huesped.org.ar has SOA record ns-1524.awsdns-62.org. awsdns-
hostmaster.amazon.com. 1 7200 900 1209600 86400
因此,简而言之,域名所有者可以为其域名建立权威的信息来源。
任何人都可以安装 DNS 服务器并随意回答问题,但没有人会向他们索要这些信息。当然,除非最终用户计算机上存在某种恶意软件,或者有人干扰了他们的流量。
您可能需要研究“域名劫持”,这是指您所担心的行为的术语,它将为您提供有关如何减少您的域名发生这种情况的可能性的具体信息。
希望这个解释没有让你更加困惑:-)
答案3
简短的回答是,你现在信任DNS 服务器和每当您进行 DNS 查询时,您的 ISP。
DNS 协议RFC 1035未加密,可以在上游 ISP 级别轻松进行不可察觉的代理、监控和更改。DNSSEC并不能消除这个根本的信任问题,因为尽管它确实增加了一些额外的工作,但所有的验证信息也可能被篡改。
当用户输入www.google.com
DNS 名称时,他们的计算机会向该计算机 IP 设置中配置的 DNS 服务器发送 DNS 协议查询,以检索 IP 地址www.google.com
。一些 ISP 拦截未加密的 DNS 查询并使用自己的 IP 地址进行回复的情况并不少见定制回应。cf考克斯,光谱,美国电话电报公司
一个常见的建议是手动将从 ISP 收到的 DNS 服务器地址替换为来自大公司的可信 DNS 服务器地址,例如:
- 谷歌的
- IPv4
8.8.8.8
&8.8.4.4
- IPv6
2001:4860:4860::8888
&2001:4860:4860::8844
- IPv4
- 思科的 OpenDNS [https://opendns.com]
- IPv4
208.67.222.222
&208.67.220.220
- IPv6
2620:0:ccc::2
&2620:0:ccd::2
- IPv4
不幸的是,如果没有协议的端到端加密,您仍然需要信任运营商和 DNS 服务器。
端到端加密问题有几种解决方案。
- 通过 VPN 连接到具有您信任的 DNS 服务器的网络。
- 使用DNS加密
- 等待DNS-over-TLS得到更广泛的实施。