Proxy reverso do UDP

1

Existe alguma maneira fácil de fazer proxies reversos do UDP do espaço de usuários?

Especificamente, quero o equivalente de

ssh -R 10000:localhost:10000 $server

mas para o UDP.

Eu quero que essa abordagem seja não confiável no sentido de que, se um pacote se perde entre mim e o servidor, não ocorre retransmissão. Suponha também que a máquina cliente não é capaz de receber pacotes UDP.

Pesquisa / abordagens consideradas

  • O OpenVPN faz esse tunelamento no nível IP. Parece um peso pesado em termos de configuração, requer muitas configurações
  • socat pode ser capaz de fazer isso magicamente. Mas eu não consegui encontrar uma maneira de olhar para os documentos
  • Existe algo chamado interface "TAP VPN", que parece um fio virtual entre você e um servidor. Eu encontrei alguns programas de código aberto que afirmavam criar uma interface TAP do espaço do usuário
  • Esta página discute o encaminhamento de UDP sobre TCP (note que isso cria retransmissão)
  • frp parece potencialmente fácil - mas não sei dizer o que faz a partir de uma inspeção inicial.

Openvpn

Como as pessoas deixaram claro nos comentários em termos de desempenho bruto, o OpenVPN é a melhor abordagem (como é para o encaminhamento de pacotes TCP - assumindo que a criptografia é necessária). É claro que a desvantagem é que isso exige processos de raiz em ambos os lados da conexão, certificados, arquivos de configuração, alguns endereços IP e algumas regras de roteamento para esses endereços IP.

    
por Att Righ 21.06.2018 / 18:24

1 resposta

1

Você pode colocar um proxy SOCKS na outra extremidade do túnel SSH. Se bem me lembro , um dos scripts de exemplo que vem com libio-socket-socks-perl deve ser suficiente após um pequeno ajuste de parâmetros.

    
por 21.06.2018 / 18:50