Cato – 基于P2SP服务构架的分布式镜像传输系统

LOGO
FOSSALiscens Build Version

整个ioi系列作品的目标是以便捷的, 去中心化的形式发布服务.以方便从任意地点通过任意网络任意网络设备建立安全连接

题外话

①:为了项目健康发展,这里不主张白嫖,因此象征性收费 ຕ 0.11(折合¥ 0.11)[登陆后]
②:一对密钥只能同时维持一个客户端在线
③:临时身份(mix)认证的生命周期为3小时,需要更长的存活请申请静态密钥。

启动参数

Usage of cato:
  -appid
        全局唯一注册编码
  -auth.token
        入网身份凭证密钥
  -signal.addr
        信令路由服务地址
  -bridge.addr
        链路桥接服务地址
  -deploy.color
        资产管理分组标签
  -deploy.env
        运行环境变量标签
  -deploy.script
        配置脚本文件路径
  -http.addr
        页面服务监听地址
  -http.password
        页面服务访问密钥
  -https.cert
        启用安全访问证书文件路径
  -https.key
        启用安全访问密钥文件路径
  -log.format
        后台控制终端日志输出格式
  -log.verbose
        后台控制终端日志输出等级
  -region
        中心服务部署运行地区标签
  -zone
        中心服务部署运行区域标签

简易入网 (simple join)

./cato

windows环境可通过双击打开 cato.exe

默认的情况下会加入公共网络网络服务,获得一个mix开头的动态id。

认证入网 (listen only)

./cato -auth.token 你的token

例如.

./cato -auth.token zKTJLjCzF5gm

需要注意的是通过凭证进行入网会加入社区网络,获得的节点id是该凭证的序列号。

内置终端 (internal console)

根指令:

api:接口控制
net:网络功能
ufw:简易防火墙

net – 网络功能

net add:接入新网络
net list:当前网络列表

ufw – 简易防火墙

ufw user:用户防火策略
ufw net:网络防火策略

ufw user – 用户防火策略

ufw user add :添加屏蔽用户
ufw user del :移除屏蔽用户
ufw user list :屏蔽用户名单

ufw net – 网络防火策略

ufw net open :添加允许访问地址
ufw net close :移除移除允许访问地址
ufw net whilist :允许访问地址列表
-
ufw net add :将IP地址添加进黑名单(阻止来自该ip地址的请求)
ufw net del :将IP地址移出黑名单
ufw user blacklist :IP地址黑名单列表

net add – 接入新网络:

 net add 本地地址:端口 远程地址:端口 (可选扩展指令:网络模式[p2p/bridge]|网络协议[tcp/udp]|镜像类型[forward|reverse])

可选扩展指令大多数时候都不用添加(保持默认)但部分情况需要进行网络调整的时候它将会帮上大忙

例如,我们需要将zKTJLjCzF5gm网络中的设备地址为192.168.1.10端口号为22TCP协议服务镜像到本地的2022端口我们可以这样做:

net add zKTJLjCzF5gm 127.0.0.1:2022 192.168.1.10:22

如果服务协议为UDP我们可以这样 做

net add zKTJLjCzF5gm 127.0.0.1:2022 192.168.1.10:22 udp

如果我们网络状况不太理想,还需要使用Bridge服务,于是指令就变成这样了

net add zKTJLjCzF5gm 127.0.0.1:2022 192.168.1.10:22 udp bridge

当然如果我要将我所在网络内192.168.0.103389放到zKTJLjCzF5gm3388端口上,该怎么做呢?

net add zKTJLjCzF5gm 192.168.0.10:3389 127.0.0.1:3388 reverse

当然,通过net list可以看见当前所创建的所有链接

加载脚本 (load script)

加载脚本:

./cato -deploy.script ./config.ioi

特性

自组网 (Selfmesh)

自组网是Cato的特性, 允许Cato服务成为Signaling Server(WebRTC建立连接需要交换信令, Signaling Server提供交换的服务).

举个简单的例子:

比如现在有三个节点, 分别为alice, bobeve.

alicebob建立了Pipes.

evebob建立了Pipes.

当自组网特性未启用时, 如果需要为aliceeve的创建Pipes时, 使用的是默认的Signaling Server.

未启用自组网时, 交换Signaling示意图:


alice — Default Signaling Server — eve

但是, 当自组网特性启用后, 会采用bob做为Signaling Server, 而不需要使用默认的Signaling Server.

启用自组网后, 交换Signaling示意图:


alice — bob(Signaling Server) — eve

默认参数下, 已经启动自组网功能.

常见问题

P2P通讯失败

由于P2P传输模式是采用WebRTC协议, 所以网络连接会受到WebRTC条件限制.

所以有些NAT3/4网络的情况下是无法使用P2P模式来进行组网的. 所以需要试用Bridge服务进行中继桥接支持.

注意:文件下载完成后可能需要【重命名】

Github
Github - commit

客户端
1
桥接端
2

下载权限

查看
  • 免费下载
    评论并刷新后下载
    登录后下载

查看演示

  • {{attr.name}}:
您当前的等级为
登录后免费下载登录 小黑屋反思中,不准下载! 评论后刷新页面下载评论 支付以后下载 请先登录 您今天的下载次数(次)用完了,请明天再来 支付积分以后下载立即支付 支付以后下载立即支付 您当前的用户组不允许下载升级会员
您已获得下载权限 您可以每天下载资源次,今日剩余

给TA打赏
共{{data.count}}人
人已打赏
专题

【求物】资源查找申请格式

2022-3-3 22:58:18

专题

Cato - 干线组网资源公示

2022-3-19 0:18:06

11 条回复 A文章作者 M管理员
  1. 未名游客给您打赏了๓2
  2. 未名游客给您打赏了๓2
  3. 未名游客给您打赏了๓2
  4. 未名游客给您打赏了๓2
    • woc,匿名游客 6B
      富哥V50

  5. user2181469

    很好

  6. 阿远来了

    好帖,当赏

  7. 阿喆来了

    好高深的帖子,学到了

个人中心
今日签到
有新私信 私信列表