首页
/
行业洞察
/
正文
INDUSTRY INSIGHT · 深度
公共IP与私有IP的区别:从原理、NAT到排障实践全解析
📅 2026/10/14 2:52:18
✍️ 爱科研究院
👁 阅读 3,247
打开电脑用命令行敲一下ipconfig看到自己的IP是192.168.1.100再打开浏览器搜索“我的IP是多少”结果却显示203.0.113.10。明明都是我的设备为什么IP地址对不上再翻一下路由器后台WAN口和LAN口的IP又是两个完全不同的地址。这个现象背后就是今天想聊透的话题公共IP地址和私有IP地址的区别。不夸张地讲搞懂这两个概念你的网络知识水平会直接上一个台阶。不管是排查家里WiFi莫名其妙断网还是公司内部网段规划或者纠结要不要向运营商申请公网IP全都能从这对概念里找到答案。这篇文章我会从原理讲到实操把“为什么会有公网和私网之分”“NAT到底做了什么”“怎么判断自己用的是哪种地址”“常见故障怎么排查”一次性说清楚适合网络新手也适合已经入行但一直没系统整理过这部分的从业者对照看看。1. 是什么让同样的IP有了“公”与“私”之分1.1 IP地址只是“门牌号”但门牌号分级别把IP地址理解成门牌号是最直观的方式。公共IP地址相当于一个国家级标准地址比如你把城市、街道、门牌号报出来任何人按这个地址都能找到你。私有IP地址则像小区内部的楼栋号“3号楼2单元501”这个表述只在小区内部有意义小区外面的人不可能靠它定位到你。这个类比不是随便打的它直接对应了IP地址的两个核心属性唯一性和可路由性。公共IP地址在整个互联网范围内全局唯一全球互联网上的路由器都认识它看到目标地址是它就知道该往哪个方向转发数据包。私有IP地址则只要求在本地网络内部唯一互联网主干路由器根本不认这些地址收到目标地址为私有IP的数据包直接丢弃不转发。1.2 为什么必须要有私有IPIPv4真的不够分说到根子上私有IP的出现是因为IPv4地址资源太紧张了。IPv4用32位二进制表示地址总数量是2的32次方约42.9亿个。听起来不少但你要知道这40多亿个地址里还要扣除环回地址、保留地址、组播地址等特殊用途部分实际能分配给全球设备使用的公共IP地址远没有这么多。而今天全球联网的设备数量早就远远超过42.9亿。手机、电脑、路由器、智能电视、摄像头、智能音箱人手好几台设备如果每台设备都要求一个全球唯一的公共IPIPv4地址池早就爆了。私有IP就是在这种背景下出现的折中方案内部网络使用私有地址出口统一通过NAT映射成一个公共IP这样整个家庭或者整个公司就只需要一个公共IP就能让所有设备上网。1.3 公与私最本质的三个差异把公共IP和私有IP放在一起对照核心差异其实是三个维度唯一性公共IP全球唯一没有任何两台互联网设备能共用同一个公共IP私有IP只要求在本地网段内唯一两家公司内部完全可以用同一个192.168.1.1互不冲突。可路由性公共IP可以被全球互联网路由转发私有IP默认不会被公网路由器转发这也是“外网无法直接访问内网设备”的根本原因。分配方式公共IP需要向运营商申请有成本有配额限制私有IP自己在路由器上就能分配想怎么规划都行成本为零。理解了这三点后面所有关于IP的实际问题基本都能顺着这条线捋清楚。2. 三大私有网段是怎么来的怎么选2.1 RFC 1918规定的三个保留段私有IP并不是随便拿一段地址出来就能用的它有一套明确的国际标准最早定义在RFC 1918文档里。规定保留给私有网络使用的地址段一共有三个网段地址范围CIDR表示可用IP数约典型场景10.0.0.0/810.0.0.0 - 10.255.255.25510.0.0.0/81677万大型企业、数据中心172.16.0.0/12172.16.0.0 - 172.31.255.255172.16.0.0/12104万中大型网络192.168.0.0/16192.168.0.0 - 192.168.255.255192.168.0.0/1665408家庭、小型办公网络注意虽然三段地址都用于私有网络但规模定位完全不同。从数量上就能看出来10.0.0.0/8一个网段能容纳上千万台设备适合大型企业做精细的子网划分192.168.0.0/16相对最小但足够家庭和小型办公室使用这也是家用路由器默认都用192.168.1.1或者192.168.0.1的原因之一。2.2 子网掩码到底在干什么很多人看到192.168.1.0/24这个写法会懵实际上这个/24说的是子网掩码。IPv4地址分为网络位和主机位/24代表前24位是网络部分后8位是主机部分。换算成十进制子网掩码就是255.255.255.0意味着这个网段里面可以有254个可用主机地址2的8次方减去网络地址和广播地址各一个。家用场景为什么普遍用/24因为对于一个家庭或者一个小办公室来说254个可用IP绰绰有余。而大型企业内部常采用10.0.0.0/8不是因为需要一千多万台设备而是因为大网段可以灵活切割先切成若干个/16每个部门分一个部门内部再切成/24每个楼层一个子网。这种层级化设计既方便管理又能配合VLAN做隔离这也是私有IP在地址规划上最大的价值之一。2.3 补充169.254.x.x和127.x.x.x不是私有IP和私有IP容易混淆的还有两类特殊地址需要特别区分。127.0.0.1是环回地址代表设备自身数据包不会真的发到网络上一般用于本机自测。169.254.0.0/16是链路本地地址设备通过DHCP拿不到IP时操作系统会给自己自动分配一个169.254.x.x的地址让设备至少能在本地链路上通信。看到169.254.x.x的IP是一个很典型的故障信号说明这台设备的DHCP获取失败了。可能是网线没接好、路由器没开DHCP、或者DHCP地址池已经耗尽。我的建议是遇到这种地址别去纠结它是不是私有IP的问题直接按DHCP故障排查就对了。3. NAT让私有IP与公共IP共存的翻译机制3.1 一次上网请求的完整翻译过程私有IP不能直接在互联网上路由那内网设备是怎么上网的靠的是 NAT全称 Network Address Translation网络地址转换。NAT的核心工作就是做“翻译”把私有IP地址翻译成公共IP地址。具体过程我用一个例子拆开讲。假设你家电脑的IP是192.168.1.100路由器的公共IP是203.0.113.10电脑要访问一个网站的服务器198.51.100.20电脑发出数据包源地址是192.168.1.100:12345目标地址是198.51.100.20:443。数据包到达路由器路由器发现源地址是内网私有IP不能直接发出去于是把源地址改写成自己的公共IP203.0.113.10并把源端口改写成54321同时在自己的NAT映射表里记一笔203.0.113.10:54321 对应 192.168.1.100:12345。网站服务器收到数据包看到源地址是203.0.113.10处理后回包目标地址写的是203.0.113.10:54321。路由器收到回包查NAT映射表确认这个数据包原本对应的是192.168.1.100:12345于是把目标地址改回去转发给家里的电脑。这个过程中网站服务器全程只知道你家的公共IP完全不知道192.168.1.100的存在。NAT不仅解决了IP地址不够用的问题还顺带隐藏了整个内网的拓扑结构。用个生活比喻就像公司前台帮全体员工代收快递外面的人只认识前台地址前台收到后再按名字分发给具体的人。3.2 出方向和入方向的不对称NAT有一个非常重要的不对称特性内网设备主动访问外网几乎不需要额外配置但外网设备想主动访问内网设备就非常困难。原因是这样的。出方向访问时内网设备先发起连接路由器可以在NAT映射表里动态创建一条记录所以翻译过程畅通无阻。但入方向访问时外部设备想主动连接内网设备路由器手里没有对应的映射记录不知道该把数据包转给谁只能直接丢弃。要让外网主动访问内网设备就得靠端口映射也叫端口转发。操作本质就是提前在NAT表里手动写一条固定的规则公网IP的某个端口固定映射到内网某台设备的某个IP和端口。比如把203.0.113.10:3389映射到192.168.1.100:3389外网访问路由器的3389端口路由器就会把数据包转给那台电脑。这也是为什么“在家搭个网站”比“买云服务器搭网站”麻烦得多你不仅要申请公网IP还要在路由器上做端口映射还要祈祷运营商没封常用端口。而云服务器天生就有公共IP不需要NAT转发直接就能被访问。3.3 NAT的局限虽然NAT解决了IPv4不够用的大问题但它的副作用也很明显。连接数受限家用路由器做NAT时实际上是靠端口来区分不同设备的连接IPv4端口一共只有65535个刨除一些保留端口实际可用端口有限。当内网设备数量多、连接数大时可能出现端口不够用的情况。P2P通信困难如果两台设备都在NAT后面彼此之间无法直接建立连接因为两边都没有公网IP地址可以互相定位。这也是P2P下载、某些游戏联机、视频通话会卡在“无法连接”上的原因之一必须借助第三方服务器做协助才能打通。公共IP一旦异常影响全局整个内网共享一个公共IP出口如果这个IP被防火墙限制了或者被运营商临时封禁所有内网设备全部跟着遭殃排查起来也很头疼。3.4 IPv6摆脱NAT的最终方向聊到NAT的局限性就绕不开IPv6。IPv6的地址空间有多大2的128次方这个数字大到什么程度相当于地球上每一粒沙子都可以分到好几万亿个IP地址。所以在IPv6的世界里不需要再靠NAT做翻译每个设备都可以直接拿到一个全球唯一的公共IPv6地址。有了IPv6设备之间可以实现真正的端到端通信P2P、远程访问、物联网设备管理都会简单很多。但现实中IPv4和IPv6还要长期共存而且NAT不会立刻消失。另外需要注意拥有公共IPv6地址不等于可以裸奔设备暴露在公网上之后防火墙和访问控制策略反而更加重要这一点后面实操部分还会提到。4. 公共IP与私有IP的日常差异全景对比4.1 一张表看清核心差异前两章讲了很多底层原理这里用一张总表把公共IP和私有IP的差异收拢到一起方便你以后遇到实际问题时快速查阅。对比维度公共IP地址私有IP地址分配来源IANA到区域机构再到运营商逐级分配给最终用户本地路由器或管理员自行分配全局唯一性全球唯一仅本地网段唯一路由范围全球互联网可路由仅在私有网络内部有效外部主动访问可以被外部直接访问需放行防火墙不能被外部直接访问需NAT端口映射数量与成本数量有限通常需要申请和付费数量几乎无限免费典型出现位置路由器WAN口、云服务器公网IP电脑网卡IP、路由器LAN口、手机WiFi IP地址形态除特殊段外几乎任意公网段10.x.x.x、172.16-31.x.x、192.168.x.x4.2 场景一家庭网络里的两个IP绝大多数家庭网络环境公共IP和私有IP是同时存在的。光猫或者路由器的WAN口从运营商那里获取的是公共IP或者被运营商再做一层NAT后的共享地址而路由器的LAN口则向家里所有设备发放192.168.x.x的私有IP地址。理解这个结构之后很多让人困惑的现象都能得到解释。比如电脑查到的IP是192.168.1.100但网上查到的IP是203.0.113.10因为前者是路由器发你的私有IP后者是你家出口的公共IP。再比如家里所有设备上网实际上共享的是同一个公共IP出口外界看到的你家就是那一个地址。4.3 场景二企业办公网络企业网络的特点是设备多、部门多、安全性要求高所以普遍采用10.x.x.x这类大网段做私有地址规划。你可以用一个/8大网段然后按部门或按楼层切分成不同的/24子网。每个业务部门之间通过路由策略进行隔离访问外网统一走公司防火墙和NAT设备出口。这个方案的好处很明显内部地址完全自主可控后续扩容不用重新规划整个网段同时可以在出口NAT设备上做统一的访问控制和安全审计而不是对每一台设备单独管理。很多大型企业内部的主机表面上看到的是10.20.30.40这种私有地址但实际上它们可能横跨了多个地域通过内部专线互联这个和家用网络完全不是一个量级。4.4 场景三云服务器与VPC云服务器的IP分配逻辑很多人以为是单独的体系实际上依然逃不出公网与私网这对概念。在云厂商的VPC虚拟私有云里云服务器默认拿到的也是私有IP通常是10.x.x.x或172.16.x.x网段用于云内网设备之间的通信。如果这台服务器需要被公网访问需要再绑定一个弹性公共IP通常显示为另一个独立地址。所以你登录云服务器后台经常能看到一台机器同时有两个IP内网地址用于云内网互通公网地址用于对外提供服务。这种设计的本质就是把NAT和路由交给了云平台来托管用户不用关心底层实现只管申请和绑定。5. 实操怎么判断你正在用的是哪种地址5.1 先看本机IP判断的第一步是看你本机当前拿到的是什么地址。Windows系统打开命令提示符输入ipconfig找到正在使用的网卡看IPv4地址那一行。macOS或Linux系统终端里输入ifconfig或者ip addr也能看到同样的信息。只要看到IP地址是以192.168.、10.、172.16.到172.31.开头的基本可以确定是私有IP。家用路由器发出来的地址最常见的就是192.168.x.x这个没什么悬念。5.2 再查一次公网IP查看公共IP更简单打开浏览器搜索“IP地址查询”或者直接用一些在线网络工具网站页面会直接显示你当前访问互联网所用的公共IP地址。然后做一个对比如果路由器WAN口显示的IP和网上查询到的IP一致说明你家网络拿到的确实是独立的公共IPv4地址。如果两者对不上那说明中间还有一层NAT这个就是下面要讲的CGNAT场景。顺便说一个操作技巧查自己当前设备的IP建议在电脑上查查“我家的公共IP”建议在路由器后台看WAN口状态。这两步配合起来能快速定位你处在什么样的网络环境里。5.3 100.64.x.x这个网段意味着什么如果你在路由器WAN口看到的IP是100.64.x.x或100.65.x.x这种地址需要特别注意这不是普通的公共IP也不是标准的私有IP。100.64.0.0/10这个网段被专门用于运营商级NAT也就是CGNAT属于“共享地址空间”。CGNAT的意思是运营商没有给你一个独立的公共IP而是让一大片用户共享几个公共IP出口你在路由器WAN口看到的100.64.x.x只是运营商设备发给你的一层私有地址。这种情况下外网主动访问你家设备会非常费劲即使你在自己的路由器上做了端口映射数据包也大概率会在运营商那一层NAT被卡住因为运营商不会给你做对应的映射规则。确认自己是不是处于CGNAT之后如果确实需要公网访问一般要找运营商申请具体能不能申请到要看当地的网络环境和套餐政策。我不对某个具体运营商的规则做评价但从技术角度讲公网IPv4在目前的网络环境里确实是稀缺资源申请结果因地区而异。5.4 怎么确认自己有没有公网IPv6IPv6环境下判断方法稍微有点不同。IPv6地址以2001:、2400:、2408:等开头的通常是全球单播地址也就是具有“公共”性质的IPv6地址。而fe80:开头的是链路本地地址类似IPv4里的169.254.x.x只在本地链路有效fd开头的是唯一本地地址类似IPv4中的私有地址。想知道自己有没有可用的公网IPv6可以在路由器WAN口状态里看IPv6地址是否获取到了.240e:、2408:等全球单播前缀或者直接用一些测试IPv6的网站检测。如果路由器已经拿到IPv6前缀并且电脑上也显示有240e:或2408:开头的地址那就说明你已经在使用公网IPv6了。这种情况下如果你通过IPv6访问家里设备本质上就是在用设备的公共IPv6地址直接通信。6. 常见误区、典型故障与排查实录6.1 误区一私有IP不能上网这个误区非常普遍。很多人一看到自己的电脑是192.168.x.x就开始担心是不是没有公网IP就不能上网。答案很明确私有IP完全可以通过NAT访问互联网只是“被外部主动访问”这件事比较困难。“能不能上网”和“能不能被外部找到”是两个完全不同的问题。前者靠出方向NAT就能解决后者需要入方向映射。分清这两个方向能解决一大半的网络理解问题。6.2 误区二所有192.168开头的IP都能互通192.168.1.x和192.168.2.x虽然都是私有IP但它们属于不同的子网。如果两台设备分别在192.168.1.x和192.168.2.x网段它们之间是无法直接通信的数据包必须经过路由器或者三层交换机转发才行。这个误区在办公室场景里很常见。比如一台电脑连着WiFi拿到的是192.168.1.100另一台打印机接在交换机上地址是192.168.2.20电脑直接访问打印机IP是访问不了的除非它们之间的网络设备配置了跨网段路由。6.3 故障同一个网段里的IP冲突IP冲突是私网环境里最容易出现的故障之一。现象就是设备上着上着网突然掉线或者网络时好时坏ping同一台设备一会儿通一会儿不通。原因是局域网里有两台设备被配置成了相同的IP地址。简单说ARP表混乱了交换机不知道该把数据包转发给哪台设备。排查方法也不复杂先ping那个冲突的IP如果能通但响应不稳定再用arp -a查看ARP表里对应的MAC地址去交换机或者路由器后台对比是谁在使用这个IP。要彻底解决建议给关键设备设置静态IP其余设备用DHCP统一分配并确认DHCP地址池没有包含已经静态绑定的IP。6.4 故障端口映射不生效端口映射不生效是私有网络环境里非常经典的问题。很多人把家里的NAS和监控做了端口映射以为外网能访问了结果一点开还是失败。我总结了几类最常见的原因光猫路由模式导致“双重NAT”光猫自己做了一层NAT后面路由器虽然做了端口映射但光猫并没有把端口转发给路由器。最直接的解法是找运营商把光猫改成桥接模式用下面的路由器直接拨号。改不了的话就要在光猫上再做一次端口映射把端口的整个链路打通。目标设备IP变了家里的设备开了DHCP内网IP动态变化端口映射还指向旧的IP数据包自然转不到你的设备上。这一条建议给目标设备设置静态IPDHCP保留或者手动配置。运营商封禁常用端口即使成功做了映射部分运营商对公网IP的80、443等常用端口有限制用于普通的Web服务经常失败。可以尝试改用非常规高位端口测试。目标设备自带防火墙就算端口转发到位了设备本身的防火墙策略也会拦截外网流量。Windows的防火墙默认就会拦掉不少入站请求测试时需要临时放行对应端口。排查端口映射问题时我的习惯是先分三段第一步看路由器WAN口是不是公网IP如果WAN口是192.168.x.x或者100.64.x.x后面就不用测了第二步在同一局域网内用另一台设备直接访问目标的“内网IP端口”确认服务本身是通的第三步才从外网访问测试。每一步都能定位出一个独立的问题这个方法能省不少时间。6.5 老设备确实被运营商CGNAT挡住时的替代思路如果公共IPv4确实申请不下来家里又有NAS、监控这类需要从外网访问的设备还有一个非常值得考虑的方向IPv6。如果你的宽带获得了IPv6前缀那家里的设备就有机会拿到全球唯一的IPv6地址外网访问时直接用IPv6地址加端口就绕开了IPv4公网地址不够用的限制。当然启用IPv6后要注意防火墙配置。设备拿到公网IPv6地址后等于直接暴露在公网环境下路由器自带的IPv6防火墙要留着只放行需要对外开放的端口不要为了方便把所有端口都打开。安全问题任何时候都不能大意。最后说一点个人实操心得。我做网络相关事情这些年来遇到的所有IP类问题最后几乎都归结到同一个逻辑先分清你手里拿的是公共IP还是私有IP再分清你想做的是“出方向访问”还是“入方向被访问”。这两个方向对了80%的网络问题就已经解决了。另外在给家里或办公室做地址规划时我建议普通场景用192.168.x.x/24就够了如果公司规模会成长可以考虑用10.x.x.x大网段但一定要规划好子网划分别图省事整个/8直接铺满后续想隔离想管理都会很痛苦。还有一个小习惯可以分享看到任何IP先看前几段判断网段大小和类型再决定下一步怎么处理这个直觉养成了排查效率会快很多。
📌 标签:
工业官网
设计趋势
AI 建站
SEO
获取完整报告 →
RELATED ARTICLES
推荐阅读
2026/10/14 2:47:18
IDeMe-Net:元学习图像变形网络实现One-Shot Learning
2026/10/14 2:47:18
CSP复赛代码模板
2026/10/14 2:47:18
IC-EISIT 2026:电气工程与智能系统前沿技术解析
2026/10/14 3:57:22
串口通信详解:从UART原理到工业级RS-485实战
2026/10/14 3:57:21
ThreadLocal内存泄漏全解析:从ThreadLocalMap结构到线程池排查实战
2026/10/14 3:57:21
MIT协议下开源项目二次开发:合法套壳与商业化的边界
2026/10/14 3:57:21
基于大数据的月季电商销售预测分析系统设计与实现
2026/10/14 3:57:21
分布式存储架构解析:从容量扩展、容错机制到运维挑战与最佳实践
2026/10/14 3:52:21
钻井钻探作业可识别钻机钻杆矿工电缆架识别数据集分割数据集labelme格式480张4类别
2026/10/14 0:02:01
Oracle 19c Windows客户端安装配置与连接排错指南
2026/10/14 0:02:01
React Native截图优化:解决Android兼容性问题
2026/10/14 0:02:01
金属锈蚀速率计算模型与防护方案优化实践
2026/10/13 12:25:09
流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南
2026/10/13 18:15:04
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别
2026/10/13 8:14:22
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容
2026/10/12 19:53:23
我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频
2026/10/11 21:41:11
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证
2026/10/11 23:43:10
2026 大模型集体涨价:用 Python 做企业 Token 成本测算与选型避坑(附配置)