udp2grpc
1.0.0
__ __ ____ ___ ____ ____ ______ // / / __ / __ __ ____ / __ / __ / ____/ ////////_//_///__//_///_/// / /_/ / /_/ / ____/ __// /_/ / _, _/ ____/ /___ ____/_____/_/ /____/__, /_/ |_/_/ ____/ /____/
该项目很大程度上受到 udp2raw 的启发
将 UDP 流量转换为加密 gRPC/TCP 流量的隧道,可帮助您绕过 UDP 防火墙(或不稳定的 UDP 环境),假设您的 UDP 被阻止或受到 QOS 限制或支持不佳。
拉取 dockerhub 镜像
docker pull mrjoshlab/udp2grpc:最新
从 https://github.com/mrjosh/udp2grpc/releases 下载二进制版本
假设您的服务器ip是127.0.0.1,您的服务域是example.com
# 为特定 ip 地址生成utg gen-certificates --dir ./cert --ip 127.0.0.1# 为特定域名生成 utg gen-certificates --dir ./cert --domain example.com# 为域和 iputg gen 生成-certificates --dir ./cert --domain example.com --ip 127.0.0.1
utg genkey# 输出# R1kvISImDxxRS1AnMDUrSy0xVg9XFzhDCyszGSdAX04=
utg 对等-n 约书亚-MBP -r 127.0.0.1:51820
输出
server side config: ------------------------------------------------------------- ... peers: - name: Joshua-MBP privatekey: LlRIVyEqVxtZORxdIgoiMTg6UxIsTCBYRC4/K0U4VjM= remote: 127.0.0.1:51820 available_from: - 0.0.0.0/0 ... client side config: ------------------------------------------------------------- client: privatekey: LlRIVyEqVxtZORxdIgoiMTg6UxIsTCBYRC4/K0U4VjM= remote: '{{ server ip address }}' ...
服务器端配置文件
服务器:私钥:“{{超级安全服务器私钥}}” 听:0.0.0.0:52935 tls:不安全: falsecert_file: ./cert/server.crtkey_file: ./cert/server.key 同行: - 名称:“PeerName”私钥:“{{ super-secure-client-private-key }}”远程:“127.0.0.1:51820”available_from: - 192.168.1.0/24
客户端配置文件
客户端:私钥:“{{超级安全客户端私钥}}” 听:0.0.0.0:51820 远程:127.0.0.1:52935 持久保活:30 tls:不安全: falsecert_file: ./cert/server.crt
假设您的服务器域为 example.com 并且您有一个服务正在侦听 udp 端口 51820。如果您希望在没有 tls 的情况下运行服务器,请对客户端和服务器使用标志--insecure
# 在服务器端运行:utg server --config-file server.yaml# 在客户端运行:utg client --config-file client.yaml
版本:'3.7' 服务:# init-container # 为服务器和客户端生成证书 生成证书:图像:mrjoshlab/udp2grpc:最新命令: - "gen-certificates" # 服务器 IP 地址 - "--ip" - "127.0.0.1" # 证书目录 - "--dir" - "/cert"volumes: - “$PWD/cert/:/cert” # udp2grpc 服务器容器 udp2grpc-服务器:图像:mrjoshlab/udp2grpc:最新端口: - “52935:52935/tcp”命令: - “服务器” - “--config-file” - “/config/server.yaml”卷: - “$PWD/cert/:/cert” - “$PWD/server.yaml:/config/server.yaml”重新启动:除非停止depends_on:生成证书:条件:service_completed_successively # udp2grpc 客户端容器 udp2grpc-客户端:图像:mrjoshlab/udp2grpc:最新端口: - “51820:51820/udp”命令: - “客户端” - “--config-file” - “/config/client.yaml”卷: - “$PWD/cert/server.crt:/cert/server.crt” - “$PWD/client.yaml:/config/client.yaml”重新启动:除非停止depends_on:生成证书:条件:service_completed_successively
感谢您考虑为 UDP2gRPC 项目做出贡献!
UDP2gRPC 是根据 MIT 许可证授权的开源软件。