3、IP地址配置问题:静态IP配置错误、DHCP获取失败、子网掩码不匹配、默认网关设置错误

说到IP地址配置,这可能是物联网设备联网时最让人头疼的问题之一。我这些年排查过的设备故障里,至少有三成跟IP配置有关。说白了,IP地址就像设备的门牌号,门牌号错了,快递员怎么找得到你?

3.1 静态IP配置错误

静态IP配置,就是手动给设备指定一个固定的IP地址。听起来简单,但坑特别多。

⚠️ 常见错误:
  • IP地址冲突:两台设备用了同一个IP
  • IP不在同一网段:比如路由器是192.168.1.1,你配了个192.168.2.100
  • IP地址格式错误:多打了空格、少打了点,或者写了255.255.255.256这种不存在的地址

我记得有一次,工厂里一批传感器怎么都连不上服务器。折腾了半天,最后发现是配置人员把IP写成了「192.168.1.10 0」——中间多了个空格。嗯,这种低级错误其实很常见。

💡 我的习惯:

配置静态IP前,先用ping命令检查一下这个IP有没有被占用。比如:

ping 192.168.1.100 -n 2

如果返回「请求超时」,说明这个IP目前没人用,可以放心配置。

3.2 DHCP获取失败

DHCP(动态主机配置协议)是设备自动获取IP的方式。大部分物联网设备默认都用DHCP,但有时候就是拿不到IP。

为什么会这样?我总结了几种常见情况:

原因 现象 排查方法
DHCP服务器故障 设备一直显示「获取IP中...」 检查路由器或DHCP服务器是否正常运行
DHCP地址池耗尽 部分设备能获取,部分不行 登录路由器查看地址池剩余数量
网线或WiFi信号问题 设备获取到169.254.x.x的IP 检查物理连接或信号强度
防火墙拦截 DHCP请求发不出去 临时关闭防火墙测试

这里有个关键点:如果设备获取到169.254.x.x这个IP段,说明DHCP失败了。这是Windows系统自动分配的「备用IP」,只能用于局域网内通信,上不了互联网。

🔧 排查步骤:

  1. 在设备上执行 ipconfig /renew(Windows)或 dhclient(Linux)重新获取IP
  2. 检查DHCP服务器的日志,看看有没有拒绝记录
  3. 如果设备太多,考虑扩大DHCP地址池范围

3.3 子网掩码不匹配

子网掩码这个东西,很多人容易忽略。我见过不少工程师,IP地址配对了,子网掩码随便写了个255.255.255.0,结果设备就是不通。

子网掩码的作用是告诉设备:「哪些IP地址跟我同一个网段」。如果掩码不匹配,设备会认为目标IP不在本地网络,然后把数据包扔给网关——但网关可能也处理不了。

⚠️ 举个例子:

设备A:IP 192.168.1.10,掩码 255.255.255.0
设备B:IP 192.168.1.20,掩码 255.255.0.0

看起来两个设备都在192.168.1.x网段,但A认为B在同一个子网,B却认为A不在。结果就是A能ping通B,B ping不通A。这种「单向通信」的问题,我排查过好几次。

我个人习惯,在同一个局域网内,所有设备的子网掩码保持一致。如果网络规模不大,统一用255.255.255.0最省心。

3.4 默认网关设置错误

默认网关,说白了就是设备上网的「大门」。设备要访问外网,数据包必须先发给网关,由网关转发出去。

网关设置错误,通常表现为:

  • 能ping通局域网内设备,但上不了互联网
  • 网关IP写成了别的设备的IP(比如写成了打印机的IP)
  • 网关IP跟设备IP不在同一网段(比如设备是192.168.1.10,网关写成了192.168.2.1)
💡 避坑指南:

我曾经遇到一个项目,所有设备都配了静态IP,网关也写了,但就是上不了网。查了半天,发现网关IP写的是路由器的管理IP(192.168.1.1),但路由器实际的数据转发IP是192.168.1.254。嗯,这两个IP虽然都在同一个路由器上,但功能不同。管理IP用于登录配置,数据转发IP才是真正的网关。

所以,配置网关前,先确认一下路由器的实际网关地址。最简单的方法:找一台能正常上网的电脑,执行 ipconfigroute print,看看它的默认网关是多少。

3.5 综合排查流程

遇到IP配置问题,我一般按这个顺序排查:

  1. 先看IP地址:设备有没有获取到IP?是静态还是DHCP?
  2. 再看子网掩码:跟其他设备是不是一致?
  3. 然后看网关:能不能ping通网关?
  4. 最后看DNS:虽然DNS不属于IP配置,但DNS错了也会导致「上不了网」的假象

🔧 快速验证命令:

# 查看本机IP配置
ipconfig /all

# 测试网关连通性
ping 网关IP

# 测试外网连通性
ping 8.8.8.8

# 测试DNS解析
nslookup www.baidu.com

你想想看,如果ping 8.8.8.8能通,但ping www.baidu.com不通,那问题大概率在DNS上,而不是IP配置。反过来,如果连网关都ping不通,那就要从物理连接和IP配置入手了。

好了,IP地址配置的问题就聊到这儿。下一章我们聊聊DNS解析的问题——这个坑也不少。