网络问题¶
Copyright © Quectel Wireless Solutions Co., Ltd. 2026. All rights reserved.
无法连接网络怎么办?¶
物理层与链路层(网线/Wi-Fi/交换机)¶
现象:在终端执行 ip a 后,输出结果未显示IP地址,或者网卡状态显示DOWN。
常见原因 |
解决办法 |
|---|---|
网线未插紧或损坏 |
重新插拔网线,观察网口指示灯状态(绿灯常亮且黄灯闪烁代表有数据传输)。 |
Wi-Fi未连接或信号弱 |
检查Wi-Fi配置文件(如 /etc/wpa_supplicant.conf),或执行 nmcli dev wifi connect 重新连接。 |
交换机或路由器端口故障 |
更换交换机端口,或直接将两台设备通过网线直连(需配置静态IP)以排除上游网络问题。 |
网卡驱动未加载 |
执行 dmesg | grep -i eth 或 lspci,确认内核是否识别到网络硬件。 |
网络层(IP地址与子网掩码)¶
现象:在终端执行 ip a 命令后,输出结果显示IP地址,但Ping网关不通。
常见原因 |
解决办法 |
|---|---|
IP地址配置错误(不在同一子网) |
检查 ip a 输出的IP地址和子网掩码(如/24),确保其与网关(如192.168.1.1)处于同一网段。 |
IP地址冲突(两台设备使用相同IP) |
更换一个未使用的IP,或开启DHCP自动获取(dhclient eth0)。 |
DHCP未获取到地址 |
检查DHCP服务是否开启(ps aux|grep dhcp),或手动配置静态IP以排除DHCP服务器故障。 |
默认网关丢失 |
执行 ip route show,查看是否存在default via条目。如果没有,则手动添加:ip route add default via 192.168.1.1。 |
传输层(防火墙与端口)¶
现象:Ping通(ICMP协议正常),但无法访问SSH、HTTP等业务服务。
常见原因 |
解决办法 |
|---|---|
防火墙(iptables/nftables)拦截 |
检查规则:iptables -L -n -v。临时关闭防火墙进行测试:systemctl stop firewalld(或 iptables -F)。 |
服务端口未监听或未启动 |
执行 netstat -tulpn | grep 22,确认sshd进程正在监听。 |
端口被占用或服务绑定到本地(127.0.0.1) |
检查服务配置,确保其监听0.0.0.0(所有接口)而非127.0.0.1(仅本地)。 |
应用层(DNS解析)¶
现象:ping 8.8.8.8(IP地址)可达,但执行 ping www.baidu.com(域名)解析失败。
常见原因 |
解决办法 |
|---|---|
DNS服务器未配置或不可达 |
检查 /etc/resolv.conf,确保已配置nameserver 8.8.8.8或114.114.114.114。 |
DNS缓存污染 |
执行 systemd-resolve --flush-caches(若使用systemd-resolved服务)或重启网络服务。 |
无法访问国外DNS |
改用国内公共DNS(如223.5.5.5或114.114.114.114)绕过可能存在的网络限制。 |
可按以下顺序进行快速排查:
# 1. 查看所有网络接口状态(重点看有没有UP和RUNNING)
ip addr show
# 2. 查看默认网关IP
route show default
# 3. ping网关(测试是否可达)
ping -c 4 你的网关IP
# 4. 查看当前DNS配置
cat /etc/resolv.conf
# 5. 测试域名解析
nslookup baidu.com
# 6. 检查iptables/nftables是否过滤
sudo iptables -L -n
sudo nft list ruleset
如何排查网络问题?¶
排查方法可参考上文。
Wi-Fi连接失败怎么办?¶
检查硬件与固件¶
首先确保Wi-Fi模块能被系统正确识别。
确认Wi-Fi模块:查阅开发板的硬件手册,确认Wi-Fi模块型号及天线连接是否正常。
检查驱动加载:在终端执行 iw dev,查看输出中是否存在wlan0接口。若无输出,说明驱动可能未加载。
检查固件加载:执行 dmesg|grep -i firmware,查看是否有固件加载失败的错误信息(如failed to load)。
确认Wi-Fi模式:部分模块需要先设置为STA (Station)模式。
检查网络接口与扫描¶
若硬件正常,则检查系统能否发现周围的无线网络。
查看接口状态:执行 ip addr show wlan0,确认接口是否处于UP状态。若显示为DOWN,可执行 sudo ip link set wlan0 up 手动启用。
扫描可用网络:执行 sudo iw dev wlan0 scan|grep SSID 扫描附近的Wi-Fi。若无任何输出,可能是驱动或天线问题。
使用NetworkManager(若已安装):可执行 nmcli dev wifi list 进行扫描。
检查连接配置¶
扫描到网络后,连接失败通常与配置有关。
确认SSID和密码:SSID或密码错误是最常见的原因,请确认其大小写是否正确。
检查加密方式:若使用wpa_supplicant,需确保配置与路由器的加密方式(如WPA2-PSK)匹配。
检查wpa_supplicant服务:执行 ps -ef | grep wpa_supplicant 确认该服务正在运行。
检查Wi-Fi频段:确认开发板支持连接的频段(如2.4 GHz或5 GHz)。
检查IP地址分配¶
连接成功但无法上网,通常是IP地址配置问题。
检查IP地址:执行 ip addr show wlan0,查看是否已获取有效的IP地址(非169.254.x.x)。
手动获取IP:可执行 sudo dhclient wlan0 或 sudo udhcpc -i wlan0 手动获取。
检查DHCP服务:确认路由器的DHCP服务已开启且地址池未满。
以太网如何配置静态IP?¶
使用ip命令临时设置(立即生效,重启丢失)¶
# 1. 查看网卡名称(通常是eth0或enp*)
ip addr show
# 2. 为网卡添加静态IP(例如192.168.1.100/24)
sudo ip addr add 192.168.1.100/24 dev eth0
# 3. 启用网卡(如果之前是down状态)
sudo ip link set eth0 up
# 4. 添加默认网关(例如192.168.1.1)
sudo ip route add default via 192.168.1.1
# 5. 设置DNS(需要编辑/etc/resolv.conf)
echo "nameserver 8.8.8.8" | sudo tee -a /etc/resolv.conf
echo "nameserver 114.114.114.114" | sudo tee -a /etc/resolv.conf
使用systemd-networkd持久化配置¶
创建或编辑网卡配置文件¶
sudo nano /etc/systemd/network/20-eth0-static.network
写入以下内容¶
[Match]
Name=eth0
[Network]
Address=10.66.82.100/23
Gateway=10.66.82.1
DNS=8.8.8.8
DNS=114.114.114.114
重启网络服务¶
sudo systemctl restart systemd-networkd
怎么查看网络带宽?¶
查看物理链路协商速率:
ethtool eth0 | grep -E "Speed|Duplex"
# 或者
cat /sys/class/net/eth0/speed
cat /sys/class/net/eth0/duplex