Como criar uma VPN Javascript em P2P como o Hola VPN?

1

Eu tenho tentado construir uma VPN P2P que funcione inteiramente no navegador, principalmente Javascript, mas principalmente um addon como os do Firefox e do Chrome. A mesma coisa como Hola VPN, basicamente.

O que me deixa perplexo é que xmlhttprequest's não se prestam a cruzar solicitações de domínio sem autorização explícita do servidor / website de acesso e é a única maneira de eu poder redirecionar / fazer proxy de uma solicitação de outro colega. Como o Hola VPN pode contornar isso? Alguém está ciente?

Lembre-se de que não estou tentando abrir uma pergunta aberta, mas há apenas uma ou duas respostas para esse dilema, mas deixe-me saber se devo editá-la para diminuir o número se você achar que sim.

    
por turkey 08.04.2018 / 15:25

1 resposta

0

Não sei o que Hola faz, mas o que eu acho que é provavelmente a melhor opção é adicionar seu domínio VPN às permissões de extensão, então use chrome.webRequest e xmlhttprequest para enviar sua solicitação para lá.

Isso permite que você envie uma solicitação, mas o outro lado da VPN P2P não seria possível da mesma maneira devido a problemas de CORS e permissões. Aplicativos do Google Chrome usados para oferecer suporte a soquetes brutos, mas foram reprovados.

Com as apis atuais do navegador, você terá que criar um aplicativo nativo. Você poderia manter uma extensão do navegador que se comunica via mensagens nativas, ou simplesmente abandonar a extensão completamente e ter ambas as partes juntas no aplicativo (foi o que fizemos para a nossa VPN P2P, PenguinProxy).

    
por 28.06.2018 / 18:13