解决 Linode 主机网络问题

Linode 的主机很神奇,使用过程中会发生本地网卡接口的名字突然变掉的情况。这个问题有时候会让你一下子很难联想到,因为最先显示出来的明显症状通常是系统更新下载失败,这个时候如果你不管不顾地用了重启大法,往往会发现接下来 ssh 都失败,因为和网络接口对应的 IP 绑定失败了。

由于已经不是头一次发生,所以今天发现后特别淡定,通过 Linode 的网页端的 Lish Console 成功登入,用 ip link 看了下,然后到 /etc/network/interfaces 文件里把 enp0s3 改成了已经变成的 enp0s4,为保险起见,又重启了一下。嗯,还是不通外网;注意,现在的情况是这台主机连不通它自身以外的互联网络,而不是它本身不能被远程访问。

如此蛋疼的局面,通常是 Linode 的 Network Helper 造成的,不知道它以什么样的方式干扰了 DNS 的部分。在关闭它之前,首先要做的是要找到它。如果你在网上或者 Linode 官网上搜索,大概率相关文章中的引导步骤是错的,因为页面改版了。截止本文书写之时,正确的到达路径是,在 cloud.linode.com 版本的控制台里(有别于旧版的 manager.linode.com 的控制台),在相应 linode 的 Advanced 标签页,点击相应的 Configuration 后面的三个点,从弹出的菜单里选择 Edit,拉至所有配置的最下,把 auto-configure networking 关闭。如果你跟我一样有强迫症,就也重启一下。

登入重启后的 Linode,查看一下 /etc/network/interfaces 文件确保 IP 配置都还正常,然后去编辑 /etc/resolv.conf。nameserver 可以添加很多个,事实上 Linode 已经为你准备了很多个(IPv6 和 IPv4 一样,都是使用 nameserver 关键字指定),这些域名解析服务的 IP 在 Web 控制台里都有显示的,粘贴过去就好。要想生效,就 service resolvconf restart。

鬼才知道那个 Network Helper 哪天会不会自动打开……

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注