惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

aimingoo的专栏
aimingoo的专栏
Y
Y Combinator Blog
云风的 BLOG
云风的 BLOG
Microsoft Azure Blog
Microsoft Azure Blog
腾讯CDC
T
The Blog of Author Tim Ferriss
P
Proofpoint News Feed
Hugging Face - Blog
Hugging Face - Blog
博客园_首页
小众软件
小众软件
美团技术团队
Martin Fowler
Martin Fowler
爱范儿
爱范儿
有赞技术团队
有赞技术团队
博客园 - 【当耐特】
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
Microsoft Security Blog
Microsoft Security Blog
宝玉的分享
宝玉的分享
J
Java Code Geeks
B
Blog
V
V2EX
Stack Overflow Blog
Stack Overflow Blog
B
Blog RSS Feed
博客园 - Franky

少数派

派早报:Google 发布 Fitbit Air 等 - 少数派 「新人报到」確認需求,再開始 - 少数派 从 SOLO 独立开发者社区,我看到了越来越多开发者开始做自己的产品 - 少数派 我怎么管理那些"不常做,但总会忘"的生活事项 - 少数派 人形机器人量产元年,数据才是具身智能的“生死线” - 少数派 BuhoLaunchpad 高度还原 Mac 启动台:开发历程与思考 - 少数派 五年陪伴依然不舍,DIY 换壳后让罗技 MX Master 3 继续服役 - 少数派 新玩意 240|少数派的编辑们最近买了啥? - 少数派 一日一技|为什么你应该关闭 iOS 的键盘声音 - 少数派 我做了个插件和 Skills,一键提取任何网站的设计规范 Design.md - 少数派 住在三四线城市的你,该开始录播客了 - 少数派 甘南秘境,大白高国 - 少数派 AI的审美:谁让把我变成川内倫子 - 少数派 返工怎能不烦恼,打工人片单总有一部是你的「嘴替」 - 少数派 为了让「上厕所」更健康,我做了一个小工具 - 少数派 AI + Skill,能够让生成的文章去除 AI 味吗? - 少数派 新玩意|韶音OpenDots ONE 耳夹式耳机 - 少数派 《美满》| 在每一个春天的晚上相爱(362) - 少数派 新玩意|优篮子 PS01 MagSnap 磁吸支架 - 少数派 自我整合手记 | 我开始早睡了:用稳定规则,为自由托底 - 少数派 用龙虾(OpenClaw)两个多月,我最深的12个体会 - 少数派 听歌时间到,12 张你可能错过的 2025 华语乐坛好专辑 - 少数派 承诺能追吗 - 少数派 macOS 26启动台没了? 我做了个不一样的App启动器 - Keboard - 少数派 《四海为家的人》| INTJ对话INTJ(361) - 少数派 你发过的那些黑历史,是时候一次清干净了 - 少数派 新玩意:安安静静玩,越玩越专注:计客密码机 - 少数派 iPad 用户首次体验 Android 平板:vivo Pad6 Pro - 少数派 数据逻辑强 - 少数派 极北行+ | 一路向北,探访日本至北之地 | 001 - 少数派
也许你也用得上的技术,从零开始了解内网穿透 - 少数派
2024-05-22 · via 少数派

内网穿透的话题总是有一个前置条件,就是公网 IP。相信大多数讨论穿透的都是未能有公网 IP 的情况,本文简要概述一下为什么我们会需要内网穿透,内网穿透的工作原理,如何选择合适的方案穿透。

公网 IP 的重要性

大部分人会接触到内网穿透,可能跟近些年家中 NAS 设备的普及有一定关系,当然,也有一些人有远程操作电脑的需求。但无论是哪种需求,都至少要存在一个公网 IP,这个 IP 可以是你自家的宽带,也可以是一台拥有公网 IP 的服务器。

现在最常见的的场景,就是我们通过一个设备,去访问另外一个内网设备。像是两个人要在茫茫人海建立一种连接,但是至少,两个人要同时去到一个约定好的地方,才可能相见。可以是你家,可以是我家,也可以是一个公共的大家都知道的地方。公网 IP 就等同于这个约定好相见的地方,因为它是互联网上的门牌号,有了这个,才有机会找到彼此。

这种 IP,有固定不变的,就像服务器那种。也有像家庭宽带中每次重新拨号都会变化一次的,而这种来回变化的 IP 还需要一个域名,将域名始终指向那个变化后了的 IP,就像无论你换哪个手机号,我还是能通过那个微信 ID 找到你。

image.png
无论 IP 怎么变,我们都可以通过域名访问

为什么会有内外网之分

由于近些年可联网的设备越来越多,且主要暴露在公网上的基本都是提供服务的公司、服务器等,可用的公网 IP 数量(主要是 IPv4)就越来越少,运营商就想了一个办法,把那些用不上公网 IP 的普通家庭宽带用户,划分到一个大的内网中,然后多家用户共用一个外网 IP,暂时解决了 IP 不够用的情况。

image.png

这些被拿走公网 IP 的用户就像从独栋别墅搬进了高层社区,而公网 IP 挂在了小区门口,被众业主共用,运营商称作:保护用户隐私。在家庭电脑直接通过连接猫设备拨号上网,而不通过路由器的年代,这的确在一定程度上守护了个人的系统安全,但收回公网 IP 的操作其实发生在路由器普及之后。

当然,直到现在,其实还是有大量的用户是用不到公网 IP 的,且是占大多数的。因此并没有产生什么实质的影响,但是对于需要使用公网的用户,比如一些家庭服务器爱好者,要将一些服务放在公网上供私人使用,就会用到内网穿透。

注意,无论有无公网 IP,均会用到内网穿透的技术,有公网的需要穿透自家路由器,进入某个具体的内网设备,但因为自己拥有路由器的控制权,所以多数人遇到的问题是需要穿透公共的大型内网,就是之前提到的小区大门,普通用户是没有小区大门完整控制权的。

具体哪些场景需要内网穿透

举几个常见的例子:

  • 在外希望随时随地能够远程访问家中电脑或者访问 NAS 中文件之类;
  • 自己在家里有一台服务器,部署了一些比如笔记应用、密码管理应用之类;
  • 搭建了一些经典游戏私服,希望跟朋友一起线上游玩之类。

当然内网穿透的需求远不止这些,尤其对那些善于折腾的人来说。但总体上来说,共同点通常是都会有一个 24 小时待机的硬件设备在工作,而我们希望的就是随时随地能够访问到这台设备。

内网穿透的工作原理

前边提到,内网穿透必然用到公网 IP,因此,要么被访问设备有公网 IP,要么两台都没有。两台都没有的情况下,就会用到拥有公网的中转服务器,同时与两台内网设备建立链接,作为一个传话筒,交换双方的流量。

第一种情况,你要访问的对象是有公网的,你可以很方便在互联网上定位到它,然后它作为入口,通过 VPN 或者是端口转发到具体内网服务的方式,让你与内部的某台设备建立连接。

image.png
有公网 IP

第二种情况是没有公网 IP 的,

image.png
没有公网 IP

而像一些商业版的 NAS,内置的系统都自带了第二种方案,因此你发现无须自己部署复杂的内网穿透方案,也可以直接访问到 NAS 中的文件。但是,网络流量的传输存在一个木桶效应,传输速度取决于最慢的那个节点的上限。因此,通过中转服务器的方式进行内网穿透,就对服务器的带宽有要求,而最理想的,就是没有中转服务器的穿透方式。

如何选择穿透方案

在相对落后一些的中小城市,IPv4 的数量其实没有那么紧张,因此可以通过给宽带运营商打电话的方式,询问自己家的宽带是否是公网 IP,如不是则要求对方为自己开启公网 IP。如此网络上通篇的免费解决方案,都可以轻松实现且效果最好。

如果公网 IP 的问题无法解决,那么作为普通用户大概有以下两种方式可利用:

  • 租赁一台拥有外网的服务器作为中转,配置选择相对轻量的,主要是带宽决定了传输速度,至于软件的部署方案随便找一些开源的即可。这种方式适合有技术有折腾能力的,自由度高,能够通过不同的软件实现多种穿透方式。
  • 使用网络上现有的收费或免费的穿透软件,其实一样是租服务器,只是租的是第三方已部署好服务的应用套件,一台服务器足以服务多个用户,因此这种方案较为便宜且对用户的技术要求较低,通常是一些小流量的传输,可以满足远程操控电脑、基本的小文件传输等。

除了这些,还有其他相对小众的穿透方案。我没办法一一列举,但是基本的原理就是前边提到的:总要有一个双方都能找到的地方见面。

最后

本文没有深入讨论内网穿透的具体技术方案,或是某些具体的商业应用。仅针对内网穿透这个话题做一些更为前置的解释,部分观点基于个人知识的判断,如有错误,望纠正。

希望对你有帮助。

> 关注 少数派公众号,解锁全新阅读体验 📰

> 实用、好用的 正版软件,少数派为你呈现 🚀