公众号旧文

俩192.168.0.0/24互联,怎么解决内网冲突

作者:胖子阅读 —

在家庭和公司网络里,最常见的网段就是:

192
.
168
.
0
.
0
/
24
192
.
168
.
1
.
0
/
24
172
.
16
.
0
.
0
/
12
10
.
0
.
0
.
0
/
8

可能你家是 192.168.0.0/24,公司也是 192.168.0.0/24。

问题来了:当两个相同的私网地址需要互通时,会发生什么?

这背后,是一套关于内网穿透、子网路由、IP 冲突解决的网络技术演进。

今天我们用几个真实工具,把这个问题讲清楚。

一、最基础:设备互联

很多人第一次接触远程访问,是从内网穿透开始的。

例如使用 FRP 这样的工具。

它的逻辑是:把内网某个端口,通过一台公网服务器,映射到外网。

例如:

  • 把家里的 NAS 192.168.0.50:80
  • 映射到 公网服务器:8080

外网访问 8080,本质就是访问你家 NAS。

这是一种端口级的暴露方式。

优点是简单直接。

缺点是:

  • 需要公网服务器
  • 每个服务都要单独映射
  • 暴露在公网存在安全风险

后来出现了一类更现代的工具,例如 Tailscale。

它的思路完全不同。

每台设备安装 Tailscale 客户端后,会获得一个 IP(通常是 100.x.x.x)。

设备之间是点对点通信,不需要公网服务器。

如果只是:

  • 远程桌面
  • SSH
  • 文件传输
  • 多设备互联

那么根本不会涉及局域网IP冲突。

因为访问的是对方的 100.x.x.x,而不是 192.168.x.x。

二、当你想访问对方整个局域网

事情开始变得有趣。

假设:

  • 你在公司
  • 想访问家里的 NAS:192.168.0.50
  • 或者访问家里的打印机、摄像头

这时候,仅仅设备互联是不够的。

你需要一个功能:

--advertise-routes
=
192.168
.
0.0
/
24

这叫做 subnet router(子网路由器)。

它的意思是:

这台机器告诉私有网络里的其他设备:

“如果要访问 192.168.0.0/24,可以把流量交给我,我来转发。”

本质上,它做的是三层路由转发。

它不是端口映射,不是代理。

而是把两个局域网拼接起来。

这已经是站点到站点互联的概念了。

三、真正的难题:IP 冲突

现在我们进入核心问题。

假设:

  • 家里:192.168.0.0/24
  • 公司:192.168.0.0/24

当你在公司访问:

192
.
168
.
0
.
50

系统会怎么判断?

答案是:

优先访问本地网络。

根本不会走远程隧道。

这就是所谓的:

IP space collision(IP 地址空间冲突)

两个网络使用了相同的私网网段。

四、4via6:优雅的解决方案

在传统企业网络里,这种问题通常通过:

  • 改网段
  • NAT 转换
  • SD-WAN 设备

来解决。

而现代方案里出现了一个更优雅的思路:

IPv4 over IPv6 映射。

在 Tailscale 中,这被称为:

IP space collision resolution (4via6 subnet routers)

它的做法是:

  • 给每个冲突的 IPv4 子网
  • 分配一个唯一的 IPv6 映射前缀
  • 在私有网络内部通过 IPv6 区分

简单理解:

两个 192.168.0.0/24 在内部会被翻译成不同的 IPv6 空间。

于是它们可以共存。

这是一种过渡技术,

也是 IPv6 在现实世界中解决 IPv4 枯竭问题的典型应用场景。

五、真实世界中谁会用到这些?

1️⃣ 家庭用户

  • 在公司访问家里 NAS
  • 远程开机下载
  • 管理家里服务器

通常只需要设备互联或子网路由。

2️⃣ 小公司

  • 两个办公室互通
  • 财务系统内网访问
  • 异地办公

子网路由是常见需求。

3️⃣ 运维工程师 / DevOps

  • 本地访问云 VPC 私网
  • 多云互联
  • Kubernetes 集群 CIDR 冲突
  • 灾备数据同步

IP 冲突解决变得非常重要。

4️⃣ 企业并购场景

这是 IP 冲突的经典案例。

假设 A 公司和 B 公司都用了:

192
.
168
.
0
.
0
/
24

短时间内不可能重构整个网络。

六、技术层级总结

可以这样理解这几种技术的层级:

技术 本质 层级
FRP 端口映射 服务级
设备互联 点对点 主机级
Subnet Router 子网拼接 网络级
4via6 地址冲突解决 架构级

从远程访问一个端口,到拼接两个局域网,再到解决地址空间冲突。

这是一个不断抽象升级的过程。

当两个 192.168.0.0/24 相遇,其实是在问:

私有网络之间,到底该如何互相理解?

从端口穿透,到虚拟专线,到 IPv6 映射。

这正是现代网络技术演进的一部分。