Communitygithub.com

superchaospc/reality-wireguard-relay

Skill do Claude Code para construir um relay VLESS-XHTTP-REALITY com backhaul via WireGuard para um ou mais VPS de destino, usando SNAT multi-saída para que o IP de saída seja o do servidor de destino — inclui arquitetura, armadilhas de MTU, verificação e scripts auxiliares.

O que é reality-wireguard-relay?

Este skill do Claude Code permite construir uma cadeia de proxies com um relay VLESS-XHTTP-REALITY que encaminha o tráfego através de um túnel WireGuard para um ou mais servidores VPS de destino, garantindo que o IP de saída seja o do servidor de destino, não o do relay. Ele é útil para cenários onde se deseja ocultar a localização real do relay ou distribuir tráfego entre múltiplos pontos de saída. O skill fornece uma arquitetura de rede detalhada, incluindo configuração de SNAT multi-saída, análise de armadilhas de MTU (Maximum Transmission Unit) para evitar fragmentação de pacotes, scripts auxiliares para automação e verificação de conectividade. Suporta plataformas Linux com suporte a WireGuard e Xray-core, e é projetado para ser executado como um playbook no Claude Code, com instruções passo a passo para configuração de interfaces WireGuard, tabelas de roteamento e regras de iptables.

Funciona com✓Claude Code~Codex CLI~Cursor
npx skills add superchaospc/reality-wireguard-relay

Perguntar na sua IA favorita

Abre um novo chat com esta habilidade de agente já pré-carregada.

Documentação

O que reality-wireguard-relay faz?

VLESS-XHTTP-REALITY 中转 + WireGuard 落地多出口代理链 — Skill do Claude Code (playbook + scripts, não é automático). A saída IP é a do servidor de destino.

Este skill permite construir um relay VLESS-XHTTP-REALITY com backhaul via WireGuard para um ou mais servidores VPS de destino, usando SNAT multi-saída, de modo que o IP de saída seja o do servidor de destino.


Arquitetura

O esquema abaixo mostra a topologia de rede:

[Cliente] --> Relay (VLESS-XHTTP-REALITY) --> [Túnel WireGuard] --> Landing VPS (SNAT) --> Internet
  • Relay: Servidor que recebe a conexão do cliente via VLESS-XHTTP-REALITY e a encapsula em um túnel WireGuard.
  • Landing VPS: Servidor(s) de destino que decapsulam o túnel WireGuard e fazem SNAT para que o tráfego saia com seu IP público.
  • Múltiplas saídas: É possível configurar múltiplos VPS de destino, cada um com seu próprio IP de saída, e rotear o tráfego seletivamente.

Armadilhas de MTU

Um dos pontos críticos deste setup é a configuração correta do MTU para evitar fragmentação de pacotes. O túnel WireGuard adiciona overhead (cerca de 60 bytes ao MTU padrão de 1500). Se o MTU não for reduzido, pacotes maiores podem ser fragmentados, reduzindo a performance e causando problemas de conectividade.

Recomendação:

  • Configure o MTU da interface WireGuard para 1350 ou menor.
  • Teste com ping -M do -s <tamanho> para verificar o MTU máximo sem fragmentação.

Verificação

Para verificar se o setup está funcionando corretamente:

  1. Verificar túnel WireGuard:

    wg show
    

    Deve mostrar o handshake e bytes transferidos.

  2. Verificar roteamento:

    ip route show
    

    Confirme que o tráfego de saída está sendo roteado via a interface WireGuard.

  3. Verificar IP de saída: Em um cliente configurado para usar o relay, execute:

    curl ifconfig.me
    

    O IP retornado deve ser o IP do servidor de destino.

Scripts Auxiliares

O skill inclui scripts bash para:

  • setup-wg.sh: Cria e configura a interface WireGuard no relay e no landing VPS.
  • add-route.sh: Adiciona regras de roteamento e SNAT para uma nova saída.
  • verify-connectivity.sh: Verifica conectividade e MTU.
  • cleanup.sh: Remove configurações e interfaces.

Uso:

./setup-wg.sh <endereço-do-landing-vps> <chave-privada-wireguard>

Gerenciamento de Múltiplas Saídas

Para adicionar uma nova saída (nova landing VPS):

  1. Configure o túnel WireGuard com o novo VPS.
  2. Execute add-route.sh com o IP do novo VPS.
  3. Verifique com verify-connectivity.sh.

Observações

  • Este skill é um playbook não automático — você precisa executar manualmente os scripts no servidor relay e nos servidores de destino.
  • Requer Xray-core e WireGuard instalados no relay.
  • Firewall deve permitir conexões nas portas relevante (VLESS, WireGuard).

Habilidades Relacionadas