zrok
是构建在 OpenZiti(可编程零信任网络覆盖)之上的下一代点对点共享平台。 zrok
是Ziti 本机应用程序。
zrok
促进公开和私人共享资源。公共共享允许您通过公共互联网与非zrok
用户共享zrok
资源。私人共享允许您直接与其他zrok
用户点对点共享您的资源,而无需更改您的安全或防火墙设置。
与该领域的其他产品一样, zrok
允许用户共享 HTTP、TCP 和 UDP 网络资源的隧道。 zrok
此外还允许用户以点对点方式轻松快速地共享文件、Web 内容和自定义资源。
zrok
是一个可扩展的共享平台。最初我们的目标客户是技术用户。为最终用户提供超级简单的共享已计划并处于积压状态。
您可以在几分钟内使用zrok.io
服务启动并共享。以下是所涉及内容的概要:
在此处下载适合您平台的二进制文件
zrok invite
使用该服务创建帐户
zrok enable
启用您的 shell 环境以与服务共享
轻松地与公共互联网用户安全地共享专用网络资源,而无需更改任何本地网络配置:
$ zrok share public localhost:8080
$ curl -s https://dslno640nct4.share.zrok.io | head
与在 Windows、macOS 或 Linux 系统上运行的公共和私人用户共享“网络驱动器”:
$ zrok share public --backend-mode drive ~/Repos/zrok
安装和使用共享驱动器非常简单,并且可以与最终用户系统上的任何应用程序一起使用:
有关完整概述,请参阅概念和入门指南。
zrok
SDK zrok
包含一个 SDK,允许您将zrok
共享功能嵌入到您自己的应用程序中。如果您熟悉 golang net.Conn
和net.Listener
,那么您就会熟悉我们的 SDK。
zrok
共享服务// 加载启用的 zrok 环境root, err :=environment.LoadRoot()// 请求资源共享hr, err := sdk.CreateShare(root, &sdk.ShareRequest{BackendMode: sdk.TcpTunnelBackendMode,ShareMode: sdk.PrivateShareMode, / / ...})// 接受对资源监听器的请求, err := sdk.NewListener(shr.Token, root)
zrok
客户端// 加载启用的 zrok 环境root, err :=environment.LoadRoot()// 请求访问共享 zrok 资源acc, err := sdk.CreateAccess(root, &sdk.AccessRequest{ShareToken: shrToken})// 建立与资源直接conn, err := sdk.NewDialer(shrToken, root)
这篇博文提供了有关zrok
SDK 入门的更多详细信息。
zrok
旨在扩展以支持极大的服务实例。 zrok.io
是由 NetFoundry 运营的公共服务实例,使用可用于自托管环境的相同代码库。
zrok
还旨在缩小规模以支持极小型部署。在 Raspberry Pi 上运行zrok
和 OpenZiti!
单个zrok
二进制文件包含操作zrok
环境以及托管您自己的服务实例所需的一切。只需添加 OpenZiti 网络即可启动并运行。
有关运行您自己的zrok
服务实例的详细信息,请参阅自托管指南。
我们维护着一个不断增长的视频播放列表,重点关注zrok
的各个方面。其中包括“办公时间”系列,这是深入探讨zrok
实施并展示一些最新特性和功能的较长格式视频:
如果您有兴趣自己构建zrok
而不是使用已发布的包,请参阅 BUILD.md
如果您想回馈zrok
,那就太好了。请参阅我们的 CONTRIBUTING.md 页面并遵守 CODE_OF_CONDUCT.md。