仅在某些网络上根据域名解析错误 IP

仅在某些网络上根据域名解析错误 IP

我在基于 LAMP 的旧台式机上托管了一个个人网站。这个问题有几个奇怪的地方,所以我将把它分解成几个步骤。

由于我有一个动态 IP,因此我使用 no-ip 来确保我始终有一个有效的域名。我使用自动更新客户端,但登录并检查后发现我的 no-ip 域名已绑定正确的 IP。 这里是通过 no-ip 域名链接到主页的链接,供参考。另外,我在 no-ip 域名上执行 ping 和 traceroute 操作,得到:

[eckertzs@localhost ~]$ ping -c 1 endradil.noip.me
PING endradil.noip.me (65.24.215.99) 56(84) bytes of data.
64 bytes from endradil.noip.me (65.24.215.99): icmp_seq=1 ttl=64 time=2.23 ms

--- endradil.noip.me ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 104ms
rtt min/avg/max/mdev = 2.233/2.233/2.233/0.000 ms

[eckertzs@localhost ~]$ traceroute endradil.noip.me
traceroute to endradil.noip.me (65.24.215.99), 30 hops max, 60 byte packets
 1  . (192.168.2.1)  1.755 ms  5.409 ms  5.380 ms
 2  endradil.noip.me (65.24.215.99)  6.297 ms  9.543 ms  10.324 ms

使用这个域名,我可以毫无问题或中断地连接到我的网络服务器(需要 https 来避免服务器端重定向,但它可以工作)。

我还在 GoDaddy 上购买了一个域名,其中我有一个 CNAME 记录将 www 子域名转发到我的 no-ip 域名。

CNAME Record
Host: www
Points to: endradil.noip.me
TTL: 1 hour

在过去的几周里,我使用 GoDaddy 域名进行连接(ssh 或 https)从未遇到过问题。然而,截至过去几天,GoDaddy 域名只能间歇性地工作,每次只工作几分钟,然后会连续几个小时停机。我大部分时间都会收到服务器未找到错误。此外,如果我碰巧使用 GoDaddy 域名进行 ssh 连接,连接就会冻结。

我跑了在线测试DNS 的,并发现该网站在外部服务器上可见并解析到正确的 IP。我还联系了 GoDaddy 支持,但他们在连接网站时没有遇到任何问题,因此没有发现任何问题。我的个人电脑(Windows 台式机、Linux 笔记本电脑、Android 手机)在使用我的个人 wifi 时都无法连接。如果我将手机与 wifi 断开连接并使用我的 AT&T 无线数据,它可以毫无问题地连接到两个域。当我尝试使用 Google 网站管理员工具通过 GoDaddy 域抓取网站时,Google 找不到该网站。

在我的 Linux 笔记本电脑上,当我 ping 或 traceroute 域时,我发现了一些有趣的结果。这些结果如下:

[eckertzs@localhost ~]$ ping -c 1 www.endradil.com
PING www.endradil.com.Belkin (198.105.244.228) 56(84) bytes of data.

--- www.endradil.com.Belkin ping statistics ---
1 packets transmitted, 0 received, 100% packet loss, time 10000ms

[eckertzs@localhost ~]$ traceroute www.endradil.com
traceroute to www.endradil.com (198.105.244.228), 30 hops max, 60 byte packets
 1  . (192.168.2.1)  1.918 ms  2.806 ms  2.772 ms
 2  cpe-65-24-208-1.insight.res.rr.com (65.24.208.1)  29.247 ms  29.654 ms  30.094 ms
 3  cpe-69-23-24-117.new.res.rr.com (69.23.24.117)  15.597 ms  23.218 ms  23.581 ms
 4  agg24.clmcohib01r.midwest.rr.com (65.29.1.52)  30.581 ms  30.556 ms  31.192 ms
 5  be27.clevohek01r.midwest.rr.com (65.29.1.38)  30.580 ms  31.062 ms  31.038 ms
 6  bu-ether25.atlngamq47w-bcr01.tbone.rr.com (107.14.19.38)  37.863 ms  68.844 ms 43.773 ms
 7  107.14.17.178 (107.14.17.178)  51.866 ms  51.019 ms  50.989 ms
 8  ae0.pr1.dca10.tbone.rr.com (107.14.17.200)  48.467 ms ae-4-0.a0.lax91.tbone.rr.com (66.109.1.113)  49.912 ms *
 9  v413.core1.ash1.he.net (209.51.175.33)  60.270 ms  50.842 ms  50.819 ms
10  100ge5-1.core1.nyc4.he.net (184.105.223.166)  55.597 ms  56.045 ms  56.020 ms
11  xerocole-inc.10gigabitethernet12-4.core1.nyc4.he.net (216.66.41.242)  56.001 ms  55.969 ms  55.992 ms
12  * * *

都显示错误的 IP。此外,跟踪路由在跳数 12 到 255 处超时(上面的输出被截断)。使用 site24x7 跟踪路由从他们的加利福尼亚服务器运行时,可以正常工作并显示合理的结果。从与我位于同一城市(10 英里外)的不同网络上的另一个 Linux 机器上,我仍然会遇到跟踪路由超时的情况,但是 IP 可以正确解析域。

由此,我相信 DNS 结果被错误地缓存在我的路由器/调制解调器中,甚至可能是我的 ISP 级别。我的问题是,首先,我如何确切地找出问题所在,其次,我如何解决它。

答案1

由于某种原因,我的 ISP 指向我的路由器的 DNS 服务器已过期或不可用。我运行nslookup www.endradil.com并从路由器缓存了错误的 IP。如果我运行,nslookup www.endradil.com 8.8.8.8那么我得到的是正确的 IP,没有超时问题。我只是进入我的路由器,告诉它停止使用我的 ISP 告诉它的 DNS,并将其指向 Google DNS 服务器。这并不能解释为什么 Webmaster Google Crawl 会遇到问题,除非抓取是在本地完成的。我通过以下方法解决了大部分问题这个问题

相关内容