会员登录 - 用户注册 - 设为首页 - 加入收藏 - 网站地图 linux内网穿透!
当前位置:首页 > 知识 > linux内网穿透 正文

linux内网穿透

时间:2026-10-17 06:31:13 来源:烟消火灭网 作者:综合 阅读:198次

linux内网穿透

家里那台跑着Ubuntu的网穿老台式机,装了块闲置的网穿GTX 1060,想在外面访问它跑个AI模型。网穿路由器拨号拿到的网穿却是运营商分配的私网IP——100.64.x.x,典型的网穿CGNAT环境。端口映射?网穿不存在的。这就是网穿内网穿透必须存在的理由:你有一台能连外网的机器,但外面的网穿人找不到它。

最直接的网穿办法是frp。GitHub上十几k star的网穿开源项目,原理简单得粗暴:你有一台有公网IP的网穿服务器(比如阿里云最便宜的ECS),在上面跑frps,网穿内网机器跑frpc,网穿两者建立一条长连接。网穿外网用户访问服务器端口,网穿流量顺着这条隧道直接灌进你家那台Linux机器。
配置不复杂。服务器端就几行ini格式的配置,指定bind_port就行。客户端稍微多点,要写明服务器IP、要映射的本地端口、远程端口。我第一次跑通的时候,在手机浏览器输入服务器IP加端口,看到了家里那台机器上跑的Jupyter Notebook界面,说实话,有种在办公室遥控家里电饭煲的荒诞感。

但frp有个痛点——你得有一台公网服务器。一个月几十块的租费倒还好,问题是延迟和带宽都受限于那台中转服务器的位置。如果你的服务器在香港,访问走一圈回来,延迟直接飙到100ms以上。这时候可以考虑更纯粹的点对点方案——ZeroTier。

ZeroTier的思路完全不同,它构建了一个虚拟局域网。你在官网创建一个网络,拿到一个16位的网络ID,然后在所有需要互联的机器上安装客户端,加入这个网络,它们就仿佛在同一个交换机下。Linux下安装就一条命令:curl -s https://install.zerotier.com | sudo bash,然后zerotier-cli join 你的网络ID。这个方案最妙的地方在于,它尝试用UDP打洞直接建立P2P连接。如果两台机器都能成功打洞,流量就不经过任何中转服务器,延迟能降到跟局域网差不多。我家那台机器连上后,ping值稳定在20ms左右,跑SSH和传输文件感觉和坐在它面前没区别。

打洞失败的情况也常有。尤其是两边都在严格NAT后面时,ZeroTier会退回通过它的行星服务器中转,速度就慢下来了。这时候另一个工具Tailscale值得一试。它基于WireGuard协议,配置更傻瓜化,而且它处理NAT穿透的成功率更高——因为它用了DERP中继服务器做兜底,而不是像早期ZeroTier那样完全依赖打洞。我在电信和移动两个网络之间测试过,Tailscale基本上秒连,而ZeroTier偶尔需要多等几秒才能建立连接。

还有个冷门选择——ssh反向隧道。如果你只是想临时访问某个端口,比如家里Linux机器上跑了个Flask API,而你又恰好有一台能SSH登录的云主机,一条命令就能搞定:ssh -R 8080:localhost:5000 用户@云主机IP。这条命令把云主机的8080端口映射到本地5000端口,简单到让人怀疑人生。缺点是不能自动重连,断网了隧道就断了,适合应急用。

实际用下来,我现在的方案是ZeroTier打底,负责日常SSH和文件访问;偶尔需要分享给朋友看个demo时,临时起一个frp隧道,用完就关。两种工具都跑在systemd服务里,开机自启,几乎不占资源。内网穿透这件事,本质上就是让那台藏在NAT后面的Linux机器,拥有一个可以被外界找到的数字身份。工具选哪个不重要,能让你在外面安心访问自家机器,就是好的。

(责任编辑:探索)

相关内容
  • emlog博客
  • ZBlogPHP海盗导航主题模板zblog5nav
  • 查网站域名ip
  • 渗透的定义是什么
  • 怎么用cmd查看别人的ip
  • linux从入门到精通脚本之家
  • 网络安全渗透测试工具是什么
  • 渗透测试技巧
推荐内容
  • 腾讯云cdn计价
  • 网站被劫持了如何发现和解决
  • 渗透宝塔
  • b2b网站的区别
  • 网页登录不了怎么设置
  • 金融证券网站