【发布时间】:2015-10-20 18:30:01
【问题描述】:
我在运行 Raspbian 并使用 4G 加密狗 (ZTE MF823) 的 Raspberry Pi 2 上遇到 DNS 问题。
当我的程序发布到网站时,我从一开始就遇到了问题,我得到了自动 200 OK 响应,但没有发送任何数据。
我发现问题出在 USB 4G 加密狗给树莓派的 DNS 地址上。一旦我在 resolv.conf 中更改为 Google 的 DNS,它就会重新开始工作。 所以我想我只使用 Google DNS 而不会打扰。 但是在重新启动时,有时当 4G-dongle 将网络更改为 3G 时,旧的本地 DNS 会被写回 resolv.conf。我猜是 4G-dongle 正在将数据发送到 Linux,而 linux 会自动将它放在文件的顶部。
我在互联网上找到了很多关于 resolv.conf 和 DNS 的信息,但我没有找到任何关于如何强制 Linux 仅使用 Googel DNS 8.8.8.8 和 8.8.4.4 的信息。
我尝试过的:
- 我已经在接口中设置了 Google DNS 以及静态 ip 和 一切。 google DNS 显示在 resolv.conf 中,但位于本地 DNS 下。
- 在 raspbian 上安装了完整的 resolvconf,因为它是 从一开始就没有安装。
- 找到一个对接口进行排序的文件,并将 usb0 添加到所有其他文件之上。
那么有人对此有任何想法吗?
我的另一个可能的解决方案是远程登录到 USB 调制解调器,因为它正在运行 linux 并在其中乱七八糟,并尝试让 DNS 正常工作,但我宁愿只是设置树莓派而不依赖于调制解调器。我必须在我所有的调制解调器上这样做。但如果我在我的 rasbian 图像上有它,我可以将解决方案复制到所有覆盆子。如果我们能得到试点的批准,我可能会运行 30 个单位。
【问题讨论】:
-
我遇到了相关问题。看看stackoverflow.com/a/40339007/6102357。