内穿透工具-frp、ngrok、zerotier、KSA

frp、ngrok、Zerotier、KSA四款软件都可以用于内网穿透,但是各自应用场景有所不同。frp和ngork比较相似,都是针对端口进行穿透,二者都可以使用定义的转发服务器;不过frp支持点对点的穿透模式,能够实现内网服务器与客户端直连,ngrok有免费官方服务器可供使用,但是有时间限制,且每次运行都是随机地址。 Zerotier与KSA都是通过组建虚拟局域网的方式,使虚拟局域网内的设...

frp、ngrok、Zerotier、KSA四款软件都可以用于内网穿透,但是各自应用场景有所不同。frp和ngork比较相似,都是针对端口进行穿透,二者都可以使用定义的转发服务器;不过frp支持点对点的穿透模式,能够实现内网服务器与客户端直连,ngrok有免费官方服务器可供使用,但是有时间限制,且每次运行都是随机地址。 Zerotier与KSA都是通过组建虚拟局域网的方式,使虚拟局域网内的设备可以互相访问,KSA使用十分简单,Zerotier功能更为强大一些。四款工具在用于访问内网NAS、游戏联机等场景中都适用,由于frp、ngrok可以不需要客户端配合,也可以用于建站。

最早了解内网穿透,是为了解决广域网联机玩游戏的问题,当时有使用向日葵、蛤蟆吃之类的工具,单体验都不是很好,最近再次研究内网穿透问题,除了游戏问题,还为了在在家能够访问内网工作,虽然有VPN可以访问内网,但是VPN软件在linux上不能正常使用。

这次研究了frp、ngrok、Zerotier、KSA四款软件。frp和ngork比较相似,都是针对端口进行穿透,二者都可以使用定义的转发服务器;不过frp支持点对点的穿透模式,能够实现内网服务器与客户端直连(Symmetric NAT网络环境下不适用,NAT类型1),ngrok有免费官方服务器可供使用,但是有时间限制,且每次运行都是随机地址。 Zerotier与KSA都是通过组建虚拟局域网的方式,使虚拟局域网内的设备可以互相访问。应用场景方面四款工具在内网访问使用NAS、游戏联机、访问内网应用中都适用,由于frp、ngrok可以不需要客户端配合,用于建站也是可以的。

FRPngrok

frp 是一个可用于内网穿透的高性能的反向代理应用,支持 tcp, udp 协议,为 http 和 https 应用协议提供了额外的能力,且尝试性支持了点对点穿透。可以windows、linux及macOS运行。 frp主要文件有四个:服务端程序frps、服务端配置文件frps.ini、客户端程序frpc、客户端配置文件frpc.ini;内网服务器使用frpc程序及其配置文件,具有静态公网IP的代理服务器使用frps程序及其配置文件。另外如果要使用安全地暴露内网(stcp)点对点内网穿透(xtcp)功能,还需要在访问内网服务器的设备上运行frpc程序。点对点穿透可以实现内网服务器与外网客户端直接连接,仅有少量数据流量经过服务器。该功能处于开发的初级阶段,在Symmetric NAT网络环境下不能使用。官方文档中对配置文件及功能都做了详细的说明。 ngrok同样能够实现内网穿透,使外网设备可以访问内网的web或tcp服务,同样支持Win,Linux,Mac等平台。ngrok官方提供服务器临时使用十分方便,但是免费版每次使用时限为8h且域名是随机的,当然充钱可是是你变强。这里简单介绍了Ngrok的使用,更多的可以参考官方文档。另外ngork 1.x是开源的可以使用它来自建ngrok服务器。

ZerotierKSA

Zerotier与KSA(看雪安全接入)都是组建虚拟局域网方式来连接内网服务器与外网客户端,优先使用点对点的连接方式,如果不能建立P2P连接则通过服务器转发。 Zerotier能够在Win、Linux、Macos、iOS 、Android等平台运行,可以在web后台管理局域网的设备、支持IPv6、可以自建被称为“Moon”的转发服务器,这里几篇文章对Zerotier的使用方法做了详细的介绍2;KSA目前支持Win、Mac以及linux,使用相对Zerotier要简单许多,但是目前不支持自建服务器,且处于内测阶段,Win/Mac平台使用方法,Linux使用方法


参考