我们在VIM3上,加载SYN43752的wifi 后,通过 wpa_supplicant 或者 wl join 指令 连接手机热点后, 无法正常连接网络。但是同样的方法,通过电脑连接手机热点后,是可以正常上网使用。基本猜测是vim3端没有DNS的问题导致。
为了确认是否是DNS问题,可以尝试vim3直接ping baidu的IP地址,不要ping域名,看能否通。
电脑和VIM3连接同一个路由设备,通过电脑终端获取到百度的IP后测试,如果可以ping通IP的,基本就确认是DNS的问题了。
如下是我参考网上的指导,列出配置DNS的几个方法:
(一)使用/etc/resolv.conf文件
这是最直接的方法。你可以通过编辑/etc/resolv.conf文件来设置DNS服务器。
1. 打开终端。
2. 使用文本编辑器打开/etc/resolv.conf文件,例如使用vi或vim:
3. 添加或修改以下行,将<DNS_SERVER_IP>替换为你的DNS服务器IP地址(例如:Google的公共DNS是8.8.8.8和8.8.4.4):例如:
nameserver 8.8.8.8
nameserver 8.8.4.4
4. 保存并关闭文件。
- 重启网络服务使更改生效(可选):
sudo systemctl restart NetworkManager
或者对于较老的系统,使用:
sudo /etc/init.d/networking restart
注意事项:
在某些系统中,/etc/resolv.conf 可能由网络管理工具(如 NetworkManager 或 systemd-resolved)自动生成,直接修改可能会在系统重启或网络重新连接后被覆盖。
所以,如果发现修改后配置不生效,需考虑使用其他方法。
(二)使用 systemd-resolved 配置 DNS
1、编辑 /etc/systemd/resolved.conf 文件:
sudo vi /etc/systemd/resolved.conf
2、找到 DNS= 行,取消注释(如果被注释掉的话)并添加 DNS 服务器地址,多个地址用空格分隔。例如:
DNS=8.8.8.8 8.8.4.4
3、保存并退出编辑器。
4、重启 systemd-resolved 服务以使配置生效:
sudo systemctl restart systemd-resolved
(三)使用 dhclient 配置 DNS
1、编辑 /etc/dhcp/dhclient.conf 文件:
sudo vi /etc/dhcp/dhclient.conf
2、添加或修改 supersede 行来指定 DNS 服务器地址,多个地址用逗号分隔。例如:
supersede domain-name-servers 8.8.8.8, 8.8.4.4;
3、保存并退出编辑器。
4、先释放当前的 DHCP 租约,然后重新获取:
sudo dhclient -r
sudo dhclient
(四)使用 resolvconf 配置 DNS
1、编辑 /etc/resolvconf/resolv.conf.d/head 文件:
sudo vi /etc/resolvconf/resolv.conf.d/head
2、在文件中添加 nameserver 行指定 DNS 服务器地址,例如:
nameserver 8.8.8.8
nameserver 8.8.4.4
3、保存并退出编辑器。
4、更新 resolv.conf 文件以应用更改:
sudo resolvconf -u
效果验证:
直接ping 域名,看是否可以正常使用。
FAQ:
1、 什么是DNS ?
域名系统(英文:Domain Name System,缩写:DNS)是互联网的一项服务。它作为将域名和IP地址相互映射的一个分布式数据库,能够使人更方便地访问互联网。
2、 如果一个设备没有配置好DNS,会有什么影响?
如果没有配置DNS,就会影响正常上网,现在升级、安装下载等基本操作都是采用的域名方式访问,并不是ip地址的直接访问,这就导致操作失效。
3、 上述说的VIM3是什么?
VIM3是一块Amlogic A311D开源卡片电脑,内置5.0 TOPS算力NPU。他支持安卓、Linux系统,我们用它来搭载并驱动我们的wifi模块。
4、 上述的方法是那个系统的配置方法?
Linux DNS 服务器地址配置
5、 在配置DNS前,有什么前提条件?
需要确保wifi的驱动正常工作,网络的连接可以正常使用。