3、IP配置问题:静态IP与DHCP冲突、子网掩码错误、默认网关丢失

IP配置出问题,是连接断开最常见的原因之一。说实话,我排查过的网络故障里,至少有三成是IP配错了。不是冲突了,就是掩码写错了,再不然就是网关丢了。

很多人觉得配IP很简单,填几个数字嘛。但恰恰是这几个数字,坑了无数人。我自己就翻过车,而且不止一次。

3.1 静态IP与DHCP冲突

先说说静态IP和DHCP冲突。这问题在办公网络里特别常见。

你想想看,公司里大部分电脑都是自动获取IP(DHCP)。但总有些特殊设备,比如打印机、服务器、监控摄像头,需要配固定IP。这时候就容易出事了。

DHCP服务器可不知道你手动配了哪个IP。它只管按地址池往外发。一旦它把某个IP租给了别人,而你又手动配了同一个IP……嗯,冲突就来了。

冲突后的典型表现:

  • 两台设备轮流掉线,或者同时掉线
  • 系统弹窗提示“IP地址冲突”
  • ping自己网关时断时续

我在项目里遇到过最离谱的一次,是客户说财务系统每天下午三点准时断网。查了半天,发现是财务部一台打印机配了静态IP,而DHCP地址池刚好包含了这个IP。每天下午三点,新入职的员工电脑开机,DHCP就把这个IP租出去了。打印机一掉,财务系统就打印不了凭证。

我的建议:

给设备配静态IP时,一定要避开DHCP地址池。或者干脆在DHCP服务器上做个排除(Exclusion),把静态IP从地址池里剔出去。这样DHCP就不会乱发了。

怎么查冲突?Windows系统里,用ipconfig /all看自己的IP。再用arp -a看看局域网里谁在用这个IP。如果发现同一个IP对应了两个MAC地址,那肯定冲突了。

# 查看本机IP配置
ipconfig /all

# 查看ARP缓存,确认IP和MAC对应关系
arp -a

# 如果怀疑冲突,可以清空ARP缓存再试
arp -d

3.2 子网掩码错误

子网掩码这东西,很多人配的时候根本不看。觉得255.255.255.0是标配,填上就完事了。但真不是这样。

子网掩码决定了你的电脑认为“局域网”有多大。说白了,就是告诉系统:哪些IP是隔壁邻居,可以直接说话;哪些IP是远房亲戚,得找网关帮忙。

掩码配错的后果:

  • 掩码写大了(比如255.255.0.0):电脑以为整个B段都是局域网,访问外网时可能不找网关,直接发ARP请求。结果没人理它,连接就断了。
  • 掩码写小了(比如255.255.255.128):电脑以为只有半个C段是邻居。如果网关IP刚好在另一半,电脑就认为网关不在同一个网段,直接丢弃数据包。

我记得有一次,一个分公司的员工说上不了网。远程过去一看,IP和网关都是对的,但就是ping不通网关。我让他把掩码发给我,他发过来一个255.255.255.240。我说你改回255.255.255.0试试。一改,好了。

为什么会这样?因为他的IP是192.168.1.100,网关是192.168.1.1。用255.255.255.240算一下,他所在的子网是192.168.1.96到192.168.1.111。网关192.168.1.1根本不在这个范围内。电脑自然认为网关不可达。

掩码 CIDR 可用IP数 常见场景
255.255.255.0 /24 254 小型办公网络
255.255.255.128 /25 126 小部门隔离
255.255.255.192 /26 62 更小的子网
255.255.255.240 /28 14 特殊设备段

怎么快速判断掩码对不对?用ping测试网关。如果ping不通,先别急着怀疑网线。看一眼掩码,再算算网关是不是在同一个子网里。

# 快速测试网关连通性
ping 192.168.1.1

# 如果ping不通,检查本机IP和掩码
ipconfig

# 手动计算:IP和掩码做“与”运算,得到网络地址
# 网关的网络地址必须和本机一致

3.3 默认网关丢失

默认网关,就是你的电脑访问外网时,把数据包交给谁。如果这个字段是空的,或者填错了,那你的电脑就只能跟局域网里的人聊天,出不了门。

网关丢失的原因,我总结了几种:

  • 手动配置时漏填了——最常见,纯属粗心
  • DHCP获取不全——DHCP服务器没下发网关选项(Option 3)
  • 恶意软件或误操作——某些软件会修改网络配置,把网关清掉
  • 多网卡冲突——装了虚拟机软件后,多出来一个网卡,导致路由表混乱

避坑指南:

我曾经帮一个朋友看电脑,他说能上QQ但打不开网页。我一看,IP和掩码都对,但默认网关是空的。QQ用的是UDP直连,不需要网关也能登录。但网页浏览必须经过网关。这就是典型的“网关丢了,内网通外网不通”。

检查网关的方法很简单。命令行里跑route print,看默认路由(Destination 0.0.0.0)那一行。如果Gateway列是空的,或者指向了错误的IP,那就说明网关有问题。

# 查看路由表,确认默认网关
route print

# 输出示例(只看关键行):
# IPv4 路由表
# 网络目标        网络掩码          网关         接口   跃点数
# 0.0.0.0          0.0.0.0          192.168.1.1  192.168.1.100  25
# 如果0.0.0.0这一行不存在,说明没有默认网关

修复方法也简单。如果是手动配的,去IPv4属性里把网关填上。如果是DHCP获取的,试试ipconfig /renew重新获取。如果还不行,检查一下DHCP服务器是不是把网关选项给关了。

注意:

有些路由器默认网关就是它自己(比如192.168.1.1或192.168.0.1)。但如果你改了路由器的LAN口IP,记得同步更新电脑上的网关地址。我见过有人把路由器IP改成10.0.0.1,但电脑网关还写着192.168.1.1。结果就是电脑能连路由器,但上不了网。

3.4 一张图看懂IP配置问题

下面这张图,把三种IP配置问题的排查路径串起来了。遇到连接断开,先按这个思路走一遍。

IP配置问题排查流程图 连接断开 检查IP配置(ipconfig /all) IP地址冲突? 子网掩码错误? 默认网关丢失? 改静态IP / 调DHCP池 修正子网掩码 填写正确网关 连接恢复 先查IP配置,再对症下药

这张图把排查路径理清楚了。从“连接断开”开始,第一步永远是查IP配置。然后根据问题类型,走对应的分支。IP冲突就改IP或调DHCP池;掩码错了就改回来;网关丢了就补上。最后汇聚到“连接恢复”。

说白了,IP配置问题没那么玄乎。记住三个关键词:不冲突、掩码对、网关在。每次配完IP,花十秒钟检查一下这三项,能省掉后面好几个小时的排查时间。