无法 ping GitHub

无法 ping GitHub

我无法访问GitHub仅在我的 Ubuntu 18.04 机器上,并且连接到同一网络的所有其他机器(Windows PC、iPad、手机)都可以访问 GitHub。

当我尝试 ping GitHub 时,我得到了

ping github.com 的结果

运行结果nslookup github.com

Server:     127.0.0.53
Address:    127.0.0.53#53

Non-authoritative answer:
Name:   github.com
Address: 192.30.253.112

如果我尝试sudo route -n

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.178.1   0.0.0.0         UG    600    0        0 wlp4s0
169.254.0.0     0.0.0.0         255.255.0.0     U     1000   0        0 wlp4s0
192.168.178.0   0.0.0.0         255.255.255.0   U     600    0        0 wlp4s0

如果我ping google.com,它就起作用了。

我也无法在浏览器中访问 GitHub。但是,所有其他网站都可以正常工作。此外,我可以在其他设备上访问 GitHub。DNS 有什么问题吗?

答案1

我遇到了完全相同的问题,下面是我解决问题的方法:简而言之:可能有一个错误配置的 github.com

/etc/hosts
Please comment out item below , everything works right for me  
# Github
#192.30.253.113 github.com

https://stackoverflow.com/questions/62964265/cannot-ping-github-on-ubuntu1804-suspect-network-configration-issue/62964372#62964372

答案2

对问题中发布的 IP 地址进行反向 DNS 查找,显示该地址指向具有主机名dns1.p07.nsone.net而不是 的DNS 服务器github.com

$ dig -x 192.30.253.112

; <<>> DiG 9.11.3-1-Debian <<>> -x 192.30.253.112
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 48141
;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;112.253.30.192.in-addr.arpa.   IN      PTR

;; AUTHORITY SECTION:
253.30.192.in-addr.arpa. 3600   IN      SOA     dns1.p07.nsone.net. hostmaster.nsone.net. 1591647771 43200 7200 1209600 3600

;; Query time: 41 msec
;; SERVER: REDACTED#53(REDACTED)
;; WHEN: Sat Jul 18 16:59:59 CST 2020
;; MSG SIZE  rcvd: 121

换句话说,这是一个 DNS 问题。如何解决这个问题?

  • 尝试更改您的名称服务器(有很多公共名称服务器可供选择,例如 Google DNS 8.8.8.8、OpenDNS 206.67.220.220、Level 3 209.244.0.3 等)。根据您的 Ubuntu 版本,有几种方法。对于最新版本,可以通过netplan设置

  • 如果 192.30.253.112 是您的 ISP 的名称服务器,请向其技术支持报告此问题,以便他们能够解决问题

答案3

您的 DNS 服务器指向环回,因此是您自己的机器。您可以通过执行以下操作来更改 DNS 服务器:

nano /etc/netplan/01-netcfg.yaml

在名称服务器和地址下输入以下内容:

  nameservers:
      addresses: [8.8.8.8, 8.8.4.4]

运行此命令以应用更改:

sudo netplan apply

然后运行以下命令来验证更改是否已完成:

systemd-resolve --status | grep 'DNS Servers' -A2

相关内容