昨晚机器运行正常。今天早上,无法上网。
我使用有线以太网连接。
我可以 ping 通路由器,但不能 ping 通 Google。
我可以通过有线网络从另一台计算机访问机器上的共享文件。
网络上的其他机器都可以访问互联网。只有 Ubuntu 机器无法上网。
我可以通过地址 ping google,但不能通过名称 ping google。
输出lsb_release -a
没有可用的 LSB 模块。
分销商 ID:Ubuntu
描述:Ubuntu 16.04.2 LTS
发行版:16.04
代号:xenial
nmcli dev show | grep DNS
部分结果:
IP4.DNS[1]: 192.168.0.1
这是路由器地址。
`
更多 /etc/resolve 结果:
# Generated by OpenVPN Client UP Script
nameserver 10.8.0.1
ls -1 /etc/resolv.conf
结果:
-rw-r--r-- 1 root root 172 2 月 23 日 22:34 /etc/resolv.conf
答案1
据我了解,/etc/resolv.conf 仅适用于公共名称服务器。看来您的名称服务器已被修改为表面上通过 VPN 使用私有名称服务器。如果如果你希望你的 Ubuntu 机器正常获取域名服务以允许互联网访问,我建议你恢复到默认的 /etc/resolv.conf 文件,其中包含:
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.1.1
/etc/resolv.conf
您可以通过从修改前的最新备份中恢复原始文件,或使用命令打开链接指向的文件sudo gedit /etc/resolv.conf
并将上述默认文件中的代码粘贴到其中,来恢复到默认文件覆盖其当前内容。您可能希望预先保存当前内容的副本作为备份,以便在需要时可以找到它。
注意:/etc/resolv.conf
是文件的符号链接,/run/resolvconf/resolv.conf
因此基于文件的操作(例如对 /etc/resolv.conf 的编辑)实际上将在/run/resolvconf/resolv.conf
要确认链接没有被错误修改,请运行该命令ls -l /etc/resolv.conf
,该命令应会产生以下输出。
lrwxrwxrwx 1 root root 29 Feb 25 2016 /etc/resolv.conf -> ../run/resolvconf/resolv.conf
箭头表示它是一个符号链接。
有关修改此文件的 resolvconf 的更多信息,请参阅手册页。
答案2
如果您有一个未修改的 /etc/resolv.conf 文件(您应该)您应该将System Settings-> Network->更改Options为如下所示的设置,以便您的路由器可以像为您的其他系统一样为您的 Ubuntu 盒提供 DNS 服务。
另一种方法是使用Google 公共 DNS 服务并将 8.8.8.8 和 8.8.4.4 添加为您的 DNS 服务器。
答案3
我遇到了类似的问题,我的 resolv.conf 文件如 Elder Geek 的帖子中所示。我做了:
1. 将系统 -> 网络 -> 选项更改为自动 (DHCP)
2. sudo apt-get update
3. sudo apt-get upgrade
4. 重复步骤 2 和 3 多次。
我知道这不是一种非常技术性的回答方式,因为它没有回答根本原因(或谈论它)。但它对我有用。让我们看看它是否对你有用。