当前位置: 首页 > news >正文

一次内网开发环境访问方式的改进实践:使用 FRP 替代远程桌面

一次内网开发环境访问方式的改进实践:使用 FRP 替代远程桌面

一、背景

在公司项目中,经常会遇到这样一种开发环境限制:

项目内网服务器禁止直接访问外网

为了在该环境下进行开发和调试,常见的做法是:

  • 准备一台可以联网的台式机
  • 通过向日葵 / ToDesk / Windows 远程桌面等方式远程控制这台机器
  • 再由该机器访问内网服务器进行开发、调试等操作

二、问题描述

2.1 现有方案的痛点

远程桌面主要有下面几个问题:

  1. 受网络质量影响较大
    网络如有波动,画面就会卡顿、延迟断连,影响开发体验。

  2. 开发环境重复搭建
    需要在“中转的联网机器”上安装 IDE、SDK、编译工具以及各种依赖,维护成本较高。

  3. 图形化并非必需
    实际开发过程中,大多数操作(代码编辑、服务运行、日志查看等)完全可以通过 SSH 完成,并不依赖 GUI,甚至当你需要调试前端代码时也可以通过将该前端端口也映射出来的方式实现。


三、思路分析

仔细想想:

我们主要为的不是“远程控制一台电脑”,而是“访问内网服务器”。

由此便可得出一个新路线:

  • 联网台式机可以访问内网服务器
  • 联网台式机可以访问外网
  • 那么它天然可以作为一个网络转发节点

由此引入FRP(Fast Reverse Proxy),通过端口映射的方式,将内网服务器的服务暴露到外网。


四、方案设计

4.1 网络结构示意

/* by 01022.hk - online tools website : 01022.hk/zh/imagetopng.html */ 本地开发电脑 | | SSH v 外网服务器 (frps) | | 端口转发 v 联网台式机 (frpc) | | 内网访问 v 内网服务器 (192.168.1.144:22)

4.2 端口映射说明

假设环境如下:

  • 内网服务器 SSH 地址:192.168.1.144:22
  • 外网服务器地址:114.113.112.111
  • 映射端口:6666

最终可以通过以下方式访问内网服务器:

/* by 01022.hk - online tools website : 01022.hk/zh/imagetopng.html */ ssh user@114.113.112.111 -p 6666

等价于:

ssh user@192.168.1.144 -p 22

4.3 FRP 客户端配置示例

frpc运行在联网台式机上,配置示例:

[ssh_proxy] type = tcp local_ip = 192.168.1.144 local_port = 22 remote_port = 6666

frps部署在外网服务器上,用于接收外部连接并转发流量。


五、结果与效果

5.1 方案对比

方案稳定性延迟维护成本
远程桌面较差
SSH + FRP稳定

5.2 实际收益

  • 不再依赖图形化远程桌面
  • SSH 连接稳定性显著提升
  • 中转机器只需保持开机,无需长期占用
  • 不影响现场工作人员正常使用联网台式机

六、总结

  1. 默认方案不一定是最优方案
    远程桌面更适合运维或临时操作,而非高频开发场景。

  2. FRP 非常适合内外网桥接场景
    显著提升开发效率和体验。

http://www.jsqmd.com/news/244952/

相关文章:

  • 在Markdown文档中添加目录的方法
  • 计算机网络经典问题透视:媒体播放器与媒体服务器的AB面
  • MySQL事务隔离级别:从并发混乱到数据一致性守护者
  • 巴西木培养养护的原则
  • 2025_NIPS_Follow-the-Perturbed-Leader Nearly Achieves Best-of-Both-Worlds for the m-Set Semi-Bandit
  • 进阶-存储过程3-存储函数
  • 2025_NIPS_Follow-the-Perturbed-Leader Nearly Achieves Best-of-Both-Worlds for the m-Set Semi-Bandit
  • 模组日志技术体系介绍 !
  • 一文彻底搞懂机器学习评估之“留出法”:从理论、实践到陷阱的深度剖析
  • 进阶-存储对象4-触发器
  • 大数据实战:如何构建高效的大数据处理平台?
  • 人工智能入门教程
  • 进阶-锁章节
  • 2025_NIPS_C-LoRA: Contextual Low-Rank Adaptation for Uncertainty Estimation in Large Language Models
  • 精益生产不是口号,中小企业上手最快的5类工具
  • 模组日志体系总体说明!
  • 深度测评8个AI论文写作软件,助本科生轻松搞定毕业论文!
  • Agent的核心特质:自主决策、感知环境、持续交互
  • 聚焦老龄化AI赋能 京能天云数据-智慧康养服务 APP重构老年健康管理新范式
  • 2025全球AI大模型发展现状与趋势深度解析:从技术突破到产业应用全景图
  • 超实用的追剪、定长切割与跟随切割项目分享
  • AI智能体记忆系统完全指南:从形式、功能到动态的三维解析
  • 学霸同款2026 AI论文网站TOP8:本科生毕业论文神器测评
  • 智能体 vs 人工智能:一文读懂AI落地的‘关键一公里‘(建议收藏)
  • 大模型转行完全指南:从小白到专家,从规划到AI的成功路径
  • AI应用架构师的知识管理方法:如何高效积累和沉淀经验?
  • MLOps测试流水线:软件测试工程师的AI质量守护指南
  • 大模型产品经理学习路线图+免费资料,小白也能入门_大模型AI大模型产品经理学习路线
  • AI测试数据集构建:工程化实践与质量保障体系
  • DeepSeek + RAG 手把手实战:从 0 到 1 打造你的个人知识库助手(附 Python 源码)