1. 项目的起点:为什么我决定认真整理一份 IP 地址笔记
这年头做运维、搞开发、玩物联网,谁还没跟 IP 地址打过交道?我自己在这上面踩过的坑,说多了都是泪。前阵子帮朋友处理一个西门子 PLC 死活连不上的问题,折腾了大半天,最后发现就是 IP 地址不在同一网段,气得我当场想把电脑砸了。后来我下定决心,把这么多年和 IP 地址打交道的经验、教训、还有那些随手记在便签上的碎片知识,系统地整理成了一份笔记。
这份笔记不是学校里那种《计算机网络》教科书,而是纯粹的“实战笔记”——所有内容都来自实际工作中真正遇到过的问题和解决办法。从查看本机 IP 这种小白基础,到虚拟机 IP 配置、IP 冲突排查、工业 PLC 通信、摄像头 IP 管理,再到各种网络设备和操作系统的设置,我都会在这篇文章里把它们串起来。如果你是一个刚入行的运维、一个偶尔需要配置路由器的小白,或者一个成天被设备网络问题折磨的工程师,这篇笔记大概率能帮你省下不少掉头发的成本。
为什么说 IP 地址值得专门花力气整理?因为IT 界所有问题,归根结底大多能往 IP 地址和端口上靠。它就像一个坐标系统,设备之间能不能互相找得到、能不能传数据,全靠这套坐标来定位。好的时候你感知不到它的存在,坏的时候它能让你怀疑人生。
2. IP 地址基础:先搞懂这些,后面的实操才有意义
说实话,我见过太多人在配置 IP 的时候一脸懵,照着教程抄了几个数字,结果不是上不了网就是设备不通信。要做任何 IP 相关的实战操作,下面这几个基础概念必须吃透,我不讲太深的理论,就讲你实际配置时会碰到的理解障碍。
2.1 IP 地址的分类与进制换算:为什么 192.168.1.1 长这样
我们最常用的 IPv4 地址,本质是一个 32 位二进制数,分四组,每组 8 位,换算成十进制就成了我们熟悉的“192.168.1.1”这种点分十进制格式。这个机制直接决定了为什么 IP 地址最大就到 255——因为 8 位二进制最大值就是 11111111,换算成十进制就是 255。
实际配置中,你还会经常看到192.168.1.1/24这种写法,这里的/24叫做前缀长度,意思是前 24 位是网络位,后面 8 位是主机位,所以这个网段里的可用 IP 就是 192.168.1.1 到 192.168.1.254 共 254 个。理解了这个换算,你就能明白为什么子网掩码255.255.255.0能作为家用路由器的标配了——它们其实是一回事,只是两种不同的写法。
还有一种分类需要知道,就是公网地址和私网地址。家里路由器给你的设备分配的一般是私网地址,范围是 10.x.x.x、172.16.x.x 到 172.31.x.x、192.168.x.x 这三段。我之前遇到过一个客户,死盯着他们路由器的公网 IP 不放手,让我帮他改公网 IP,但其实那个是运营商分配的出口地址,他想改也改不了,这种误解说白了就是没弄明白公网私网的区别。
2.2 如何高效查看本机 IP:Windows、Linux、macOS 一次说完
查看 IP 地址是最基本的操作,但不同系统命令不一样,我用一张表整理出来,方便你直接查:
| 操作系统 | 图形界面方式 | 命令行方式 |
|---|---|---|
| Windows 10/11 | 设置 → 网络和 Internet → 查看属性 | ipconfig |
| Linux(桌面版) | 设置 → 网络 → 查看 | ip addr或ifconfig |
| Linux(服务器版) | 不适用(纯命令行) | ip addr |
| macOS | 系统偏好设置 → 网络 | ifconfig或ipconfig getifaddr en0 |
| 麒麟系统(服务器版) | 不适用(纯命令行) | ip addr |
我强烈建议你养成用命令行的习惯,因为 Windows 的图形界面虽然直观,但能看到的信息其实很有限。你运行ipconfig之后,不光能看到 IPv4 地址,还能看到子网掩码、默认网关、DNS 服务器。排查网络问题的时候,这些信息每一项都有用。
注意:如果你看到 IP 地址以 169.254 开头,那说明 DHCP 自动获取失败了。Windows 和 Linux 都这样,没拿到地址时系统会自己造一个出来。这个信号非常关键,凡是你发现有设备拿了个 169.254 的地址,先把目光投向 DHCP 服务器或者网线连接上再说。
3. 最常见的实战场景:修改虚拟机与配置网卡 IP
虚拟机 IP 配置是我被问到最多的问题之一,不是因为它难,而是因为涉及“虚拟机内的 IP”和“宿主机虚拟网卡的 IP”这两件事,容易把人绕晕。这个场景弄明白了,很多超融合、云主机场景的网络问题你都能迎刃而解。
3.1 修改虚拟机 IP 地址的正确姿势
如果你想修改一台 VMware 虚拟机里的操作系统 IP,命令其实和物理机一模一样,进虚拟机系统里改就行。但重头戏在于搞清楚 VMware 的三种网络模式——桥接模式、NAT 模式、仅主机模式,很多人虚拟机和外部网络不通,不是系统配置错了,而是模式选错了。
- 桥接模式:虚拟机直接和宿主机共享物理网卡,相当于局域网里的一台独立设备。这时候虚拟机要配和宿主机同一个网段的 IP,比如宿主机是 192.168.1.100,虚拟机就得配 192.168.1.x 的地址,网关也是同一台路由器。
- NAT 模式:虚拟机和宿主机组成一个私有网络,通过宿主机做地址转换去访问外网。这种情况下,虚拟机的 IP 默认是 192.168.xxx.xxx 段,网关是虚拟机的虚拟网卡地址(通常是 .2 或 .254)。
- 仅主机模式:虚拟机只能和宿主机通信,上不了外网。
我自己的经验是:修改虚拟机 IP 之前,先确认你用的是哪种模式,然后打开终端,执行ip addr查看当前网卡名称和现有配置,再用sudo vi /etc/netplan/*.yaml(Ubuntu 新版本)或sudo vi /etc/sysconfig/network-scripts/ifcfg-eth0(CentOS)修改配置文件。改完之后用sudo netplan apply或systemctl restart network重启网络服务。
3.2 麒麟系统服务器版:设置有线网卡 IP 的两种方法
这次热词里出现了“麒麟系统服务器版”,这是国产操作系统里使用量很大的一个分支。我在某政务云项目里配过麒麟系统(银河麒麟和中标麒麟都碰过),配置方式和 CentOS 很接近,但有几个细节不一样。
方法一:命令行 nmcli 配置(推荐)
# 先查看网卡名称 ip addr # 假设网卡名为 eth0,配置静态 IP 地址 sudo nmcli connection modify eth0 ipv4.method manual ipv4.addresses 192.168.10.50/24 ipv4.gateway 192.168.10.1 ipv4.dns 223.5.5.5 # 重启网络连接让配置生效 sudo nmcli connection up eth0 # 验证配置 ip addr show eth0方法二:直接编辑网卡配置文件
麒麟系统的网卡配置文件路径通常是/etc/sysconfig/network-scripts/ifcfg-eth0,编辑内容如下:
TYPE=Ethernet BOOTPROTO=static NAME=eth0 DEVICE=eth0 ONBOOT=yes IPADDR=192.168.10.50 NETMASK=255.255.255.0 GATEWAY=192.168.10.1 DNS1=223.5.5.5改完保存,执行sudo systemctl restart network。这里有个坑:麒麟系统有些版本 NetworkManager 管理方和 network 服务脚本管理方存在冲突,如果你改了配置但不生效,大概率是 NetworkManager 接管了网卡。解决方式是先跑sudo systemctl stop NetworkManager && sudo systemctl disable NetworkManager再重启网络服务。
这个方法适用于大部分派生于 Red Hat 体系的国产系统,包括统信 UOS 服务器版。如果你用的是其他常见 Linux 发行版,比如 Ubuntu Server 18.04+,配置文件路径就不同了,本文不展开,但逻辑是一样的:修改配置 → 应用配置 → 验证连通性。
3.3 飞牛 NAS 的 IP 地址:开机之后该填什么
飞牛(fnOS)是最近热度挺高的 NAS 系统,安装的时候不少人会被“IP 地址后面怎么填”卡住。如果你安装时选择自动获取地址,它会通过 DHCP 拿到一个 IP 地址,启动完成后的管理页面会直接显示这个地址,浏览器输入http://该IP地址:5666就能进入管理后台。
如果你装完发现需要手动指定 IP,进入系统设置里的网络管理,手动填写 IP 地址、子网掩码、网关和 DNS 就行了。这里我特别想提醒一个细节:NAS 是长期在线的设备,我强烈建议给它配置静态 IP(DHCP 保留或直接手动填),否则哪天重启路由器,NAS 换了个 IP 地址,你所有指向旧地址的备份任务、设备访问入口全部失效,那种场面我遇到过不止一次,真的很头疼。
4. IP 冲突与排查:局域网最烦人的问题之一
局域网 IP 地址已使用,这个提示很多人看到过,有的人直接拍键盘骂人。但 IP 冲突这件事,只要理解了机制,远比你想的简单。
4.1 IP 冲突是怎么发生的:洞天和一些迷之设备
先说原理:IP 地址在同一网段内必须是唯一的,如果你的设备 A 的 IP 是 192.168.1.100,另一台设备 B 也是 192.168.1.100,那当网络里某台设备想跟这个地址通信时,到底发给谁,交换机它就犯迷糊了。最后表现就是:A 和 B 都可能网络闪断、掉线,严重的时候整个广播域网络都会被卡死。
现实里导致 IP 冲突的情况无非就是这几种:
- 手动配置阶段手滑:两个人各配各的,结果配了同一个地址。
- DHCP 地址池不足:路由器里的 DHCP 分配的地址和管理员手动配置的设备撞车了。
- 设备休眠后恢复:某些设备(尤其摄像头、打印机这类网络设备)休眠再唤醒,重新竞争地址时抢了别人的。
4.2 局域网 IP 已使用怎么办:三层排查法
如果你遇到“局域网 IP 地址已使用”或者设备反复提示冲突,我建议按这个顺序排查:
第一步:确认是谁占用了地址。在电脑上打开终端(Windows 用 cmd),执行:
ping 192.168.1.100 arp -a | findstr 192.168.1.100arp -a会列出局域网内 IP 和 MAC 地址的对应表,找到你关心的那个 IP,看看 MAC 地址是多少。然后去交换机的接入端口上display mac-address查这个 MAC 是从哪个口学习到的,如果交换机支持,直接定位到网口——这是最精准的办法。
第二步:清理无主地址。如果你找不到是哪个设备占用了 IP,但在路由器后台能看到 DHCP 地址池里的分配记录,把不认识的设备 MAC 地址的 IP 租约释放掉。比较彻底的方案是把出问题的 IP 在 DHCP 里排除掉,让冲突方没办法再自动分配这个地址。
第三步:从根上解决。给关键设备(打印机、NAS、服务器、监控摄像头)配置静态 IP 或者是 DHCP 保留(即绑定 MAC 和 IP),让这些设备永远拿固定地址,不给冲突留机会。
4.3 开源的 IP 冲突检测软件,我用的这几个
热词里提到了“开源的 IP 地址冲突检测软件”,这确实是个很实用的工具需求,尤其是监控大项目里摄像头数量多,排查起来靠手点太慢了。我用过的有几个,不吹嘘,说下实际体验。
- Nmap:谈不上专门的冲突检测软件,但网段扫描无敌。
nmap -sP 192.168.1.0/24可以快速列出在线主机,如果某台设备 IP 冲突,通常会出现两个不同的 MAC 地址报同一个 IP。 - arp-scan:Linux 下非常好使的一个命令行工具,直接发 ARP 广播请求,返回所有响应设备的 IP 和 MAC,一台都漏不掉。
sudo arp-scan --interface=eth0 --localnet输出里如果同一个 IP 对应了两行 MAC 地址,恭喜你,冲突实锤了,而且你把两个当事人的 MAC 都拿到了,直接去交换机上找这两个 MAC 对应的物理端口就行。
- Angry IP Scanner:跨平台 GUI 工具,适合小白,扫出来一目了然。它帮你快速知道当前网段里哪些地址被用了,哪些地址空闲。
我个人的经验是,网络规模超过 50 台设备,就别靠感觉和手工 ping 了,直接上 arp-scan 这种批量利器,效率至少提升十倍。
5. 工业自动化场景:PLC 通信中的 IP 地址坑
如果说普通办公网络 IP 出问题只是烦人,那工业现场 PLC 通信出问题就是折磨人。Step7 Micro/WIN Smart 和博途(TIA Portal)这两款软件我都用过不短时间,下面这些坑是我一个个踩出来的。
5.1 为什么 SMART PLC 搜索不到 CPU?大概率是 IP 惹的祸
使用西门子 SMART 系列 PLC 编程时,新手最容易遇到的报错就是“搜索不到 CPU”。虽然你用的是 USB-PPI 电缆线或者网线直连,但搜索不到 CPU 的原因十有八九都出在 IP 地址和通信链路上。整理一下我的排查清单:
- 检查电脑网口的 IP 是否和 PLC 在同一网段。SMART 系列默认出厂 IP 是 192.168.0.1,如果你的电脑是 192.168.1.x,那搜索不到太正常了,把电脑 IP 临时改成 192.168.0.2,子网掩码 255.255.255.0,再搜。
- 检查网线类型。电脑直连 PLC,用直通线就好,现在的网卡大多支持自动翻转,交叉线直通线都能用,但如果中间隔着交换机,确认交换机端口没有 VLAN 隔离或没有关闭。
- 确认 PLC 的通信端口。Smart PLC 上有一个以太网口,使用前要确认 PLC 已经上电并处于运行或停止状态(STOP 也能连,但要确认拨码没有打到别的模式)。
- 在 Micro/WIN SMART 软件里“查找 CPU”时,注意电脑防火墙。Windows 防火墙经常会拦下 PLC 的 UDP 广播包,搜索不到的时候先把防火墙暂时关掉再试。
如果你通过添加 IP 地址能连接上 PLC,说明链路基本是通的,只是搜索机制被防火墙或软件加入了白名单限制而已。这个“添加 IP 地址可连上但是搜索不到”的现象,是最典型的防火墙干预场景。
5.2 博途(TIA Portal)如何分配 IP 地址和名称
博途里分配 PLC 的 IP 地址和名称,不是在 PLC 程序里写出来的,而是要你手动“在线分配”。操作路径大致是:
在博途项目树里找到 PLC,右键选择“在线访问”,然后在“在线工具”的“可访问设备”里点击“开始搜索”按钮,软件会自动搜索当前 PC 网卡所连接网络里的全部 PROFINET 设备。
搜索结果里你会看到未分配 IP 的设备,选择你想要的那一台,点击“分配 IP 地址”,填入你希望设置的 IP(比如 192.168.1.10),再点击“分配名称”,填入 PLC 的 PROFINET 设备名称(比如plc_1)。分配完毕后,需要在设备属性的“PROFINET 接口 > 以太网地址”里确保项目组的 IP 地址和名称与刚才在线分配的一致。
这里有个容易犯的错:博途的项目里设定的 IP 和在线分配的 IP 不一致时,程序下载后 PLC 会按项目里的 IP 重新写入,如果你连接的是电脑直连 PLC 的模式,改完 IP 之后电脑自己也要立刻改到那个网段,否则下一次连接瞬间断线。我在现场见过太多人改完 PLC 的 IP,电脑没改,然后就一脸茫然地看着搜索列表发呆。
5.3 工业网络和其他网络场景的 IP 规划建议
工业现场的网络规划和办公楼完全不同,我给一个非常保守但稳定的配置建议:
| 设备类型 | 建议地址段 | 备注 |
|---|---|---|
| PLC 控制器 | 192.168.0.1 ~ 192.168.0.20 | 静态分配 |
| HMI 触摸屏 | 192.168.0.21 ~ 192.168.0.40 | 静态分配 |
| 变频器/伺服 | 192.168.0.41 ~ 192.168.0.80 | 静态分配 |
| 上位机/工程师站 | 192.168.0.100 ~ 192.168.0.120 | 静态分配 |
| 网管交换机/工业网关 | 192.168.0.200 ~ 192.168.0.240 | 静态分配 |
核心原则就一句话:工业控制网和办公网必须物理或逻辑隔离,否则一个员工电脑里的 ARP 广播风暴就能让你整条产线停机,真到那时候你会知道什么叫欲哭无泪。
6. 其他高频率设备:摄像头、光猫、邮件服务器 IP 的那些事
生产环境里除了电脑和 PLC,还有各种五花八门的设备,它们因为自身特性,在 IP 方面的坑格外不同。
6.1 雄迈摄像头 IP 地址:监控项目里最常见的配置瓶颈
做监控项目的人对“雄迈”这个牌子应该不陌生,它家摄像头(包括代工的品牌)默认 IP 是 192.168.1.168,老版本的是 192.168.0.110,不同批次有差异。为什么非要知道默认 IP?因为大部分监控摄像头不支持 DHCP 优先,出厂时固定了一个静态地址,你不知道这个地址就没法进入它的 Web 管理页。
正确操作是:找一台电脑,手动把网卡改成和摄像头默认 IP 同一网段(比如 192.168.1.100/24),然后用网线直连摄像头。浏览器输入默认 IP 登录后,第一件事就是去网络设置里,把摄像头的 IP 改成你规划好的监控专用网段里的地址,比如 10.10.10.101,同时关掉 DHCP 或保留静态设置。
如果摄像头数量多,NVR(录像机)配置的时候可以直接用“一键添加”或“全网段搜索”功能,它会自动扫描同网段的摄像头。个别摄像头如果 ONVIF 协议不兼容,搜索不到,就需要你手动添加 IP 地址和协议端口,这个又是另一套知识点。
6.2 广电光猫 CW5100 上的 internet_r_vid IP 地址是什么意思
热词里的“广东广电 gdhg-cw5100 internet_r_vid”,这个我一开始也有点蒙,查了下型号和字段,它其实是广电宽带的光猫(ONT)里的一个逻辑连接条目。光猫里会有一条名叫internet_r_vid的 WAN 连接,这个连接里要填 IP 地址或选择路由模式。
简单说,internet_r_vid表示这个连接是用于上网业务的(Internet),r是 route(路由)模式,vid是 VLAN ID。广电的常见配置里,这条连接会填一个 IP 地址(有时候是静态,更多时候是 PPPoE 拨号后由运营商动态分派)。如果你在光猫管理后台看到这个条目,并且 IP 地址是空的,说明正处于待拨号状态;如果有 IP,说明已经拨上号了。
常见问题是有人想改桥接模式,把光猫的 NAT 转发职责移交给自己的路由器,这就需要在管理后台把internet_r_vid连接类型从 route 改成 bridge,同时把原来的 VLAN ID 复制过去。需要特别提醒的是:胡乱修改运营商光猫的 VLAN 配置,大概率会把宽带搞断服,找运营商维修时又会被恢复出厂设置,所以改之前一定要把原始配置截图留底。
6.3 报价单会被记录同一个 IP 地址提醒吗?真的有这种事
热词里有一条特别生活化的:“发客户公司邮箱的报价单会记录同一个 IP 地址提醒吗”。这个问题背后的语境大概是:企业邮箱系统发报价单,发现多个收件人地址似乎登录或收到邮件时共享了某个 IP,于是怀疑有内部人泄露文件。
从技术角度说,大部分企业邮箱的后台确实会记录登录 IP,但收到的邮件正文本身不会附带你的真实本机 IP。邮件里能看到的 IP 信息一般是发送服务器的 IP(就是邮件服务商的),而不是你电脑的 IP。只有在邮件原始信息(raw message)里,通过Received头字段,才有可能查看到发件人的公网出口 IP,如果发件人直接用客户端(Outlook 或 Foxmail)走 SMTP 发送,且不走公司邮件网关,那这个 IP 就是发件人当时的公网 IP。
同一个公司的人在同一办公环境,通过同一个出口上网,他们的公网 IP 是同一个,所以邮箱后台如果记录 IP,两个账号很可能是同一个 IP。这不算什么高科技,也不需要什么特殊工具,就是网络里的 NAT 效应。想避免因为共 IP 被误会,建议重要报价单通过加密压缩包发送,并在企业邮箱里开启禁止自动下载外链图片之类的设置,减少邮件头信息暴露。
7. 附录:IP 地址排查工具箱与速查命令
写到这里,我把日常最常用的命令和工具整理成一个速查表,方便你遇到问题时快速翻查。别指望把所有东西背下来,关键是要知道有这个命令的存在,以及它大概能做什么,用到的时候能翻出来就行。
| 场景 | 命令/工具 | 用途 |
|---|---|---|
| 查看本机 IP | ipconfig/ip addr | 显示网卡配置信息 |
| 查看路由网关 | ip route/route -n | 查看默认网关,判断数据走向 |
| 排查连通性 | ping 目标IP | 测试基础连通性 |
| 查看地址解析表 | arp -a | 查看局域网内 IP 与 MAC 对应关系 |
| 扫描网段在线设备 | nmap -sP 192.168.1.0/24 | 批量发现在线主机 |
| 深度扫描网段设备 | arp-scan --localnet | 快速精准扫描局域网 MAC 和 IP |
| 查看端口状态 | netstat -ano/ss -tunlp | 查看本机监听端口和连接状态 |
| 抓包分析 | Wireshark / tcpdump | 深入分析协议报文(排查 IP 冲突、挖不出原因的断网) |
| 临时更改虚拟网卡 IP | ip addr add 192.168.1.100/24 dev eth0 | 临时给网卡加 IP,用于快速测试 |
最后再聊聊我自己在这无数次排查中的“土办法”:遇到任何网络问题的第一怀疑对象永远是 IP 地址,第二是防火墙,第三才是硬件。先把通信双方拉到同一网段,能 ping 通再谈别的,这个次序能解释掉八成以上的网络故障。
有一个非常实用的技巧是,遇到奇怪网段问题的时候,直接在电脑上挂一个旁路抓包,看看设备到底在发什么 ARP 请求,是网关丢了还是在找谁。抓包不吓人,Wireshark 打开拦一下 filter 里输入arp || icmp,对着报文明白得比什么都快。
说实话,IP 地址这东西,刚入门的时候觉得就是几个数字,深入之后发现每台设备、每个系统的脾气都不一样。这篇笔记里写的,只是我这些年碰到问题里最有代表性的一部分,希望能给你提供一个从原理到实践的完整思路——下次再遇到 IP 相关的毛病,至少能有个清晰的排查路径,不用再从头瞎试了。