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假設您的伺服器網域為--insecure並且您有一個服務正在偵聽 udp 連接埠 51820。
# 在伺服器端執行: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 許可證授權的開源軟體。