opennotr: notr开源版本

1,768 阅读3分钟

前言

opennotr是notr的一个开源版本,notr是我业余时间开发的一款内网穿透软件,目的是解决一些用户需要访问内网应用,微信公众号/小程序开发过程调试,远程协作等网络不可达的问题。

notr发展过程经历过两个版本,第一个版本基于微PN技术,也就是本次上传到github的版本,主要技术来源于我开发的一个微PN——gtun,目前该版本已经下线,不再提供支持,使用该版本的客户端已经全部通知切换到最新版本。基于此,最近在考虑对后台进行一次调整,发现这一版本的代码很久没进行过更新,于是趁周末有时间,将代码经过一番整理,删除一些业务相关的代码,发布到github当中,希望能够让更多人受益。

功能删减

  • 保留微PN功能,这是这一版本的基础,所有功能都是基于底层构建的微PN实现

  • 保留Nginx反向代理功能,Notr能够让所有用户能够都使用80和443端口,Nginx是其中重要的一个环节。

  • 删除registry功能,业务相关

  • 删除dns功能,业务相关

  • 删除用户中心功能,业务相关

功能删减之后,opennotr的代码流程如下:

放弃该版本的原因

这篇文章当中,比较详细的记录Notr的产生,中间的技术变革。Notr的定位始终是一款软件或者说产品,这一版本作为项目而言,里面用到的技术确实是比较有意思,但是让用户真正使用就是另外一层含义了,比如说:

  • 大部分用户是windows用户,这一版本要求windows用户安装虚拟网卡,然后还需要以管理员启动,我们windows用户往往是希望,不要给我整这么多,我只希望双击运行就行。
  • 即使是*nix用户,同样需要具备管理员权限启动,我们用mac最希望能做到的是brew install然后就能够使用了。

这一版本使用的技术客户端要达到windows和*niux用户的目的,非常的困难,可以说没几个公司能够做到很精致,更何况个人。

但是作为一个项目而言,就不需要考虑这么多,因为软件产品面向的用户各式各样,当时软件项目的用户都是有技术底子,能够去折腾的。所以我觉得这一版本不适合给用户用,但是对开发者而言却是一个不错的思路。

其他

notr目前主要都还是处于寻找目标用户与试错的状态,不单是项目上的试错,也是我个人的试错。所以很多策略都放的很宽松,主要集中在三点。

  • 不需要注册即可使用
  • 不需要付费也能使用基本的http穿透的功能
  • LICENSE的价格懂行的基本都明白,跟白送没什么差别,一方面,LICENSE于我而言,成本是更低的,没有服务器带宽成本,另一方面,于购买LICENSE的用户而言,限制主要在实例数量以及用户数量限制,如果你争取到的用户是企业用户,那么这两点限制根本就不构成任何限制。