Agora vamos instalar o
Cloudflare-Warp que é um serviço gratuito de Domain Name System (DNS) da empresa americana Cloudflare em parceria com a APNIC. O serviço funciona como um servidor de nomes recursivo fornecendo resolução de nomes de domínio para qualquer host na Internet.
Serve para vários jogos, downloads bloqueados pelo provedor, etc. Na seção
SCRIPTS tem um script pronto que desliga o WARP.
Veremos o passo a passo para instalar no Debian.
Para outras distribuições veja o link:
Adicione a chave e o repositório.
Adicionando cloudflare gpg key:
$ curl -fsSL https://pkg.cloudflareclient.com/pubkey.gpg | sudo gpg --yes --dearmor --output /usr/share/keyrings/cloudflare-warp-archive-keyring.gpg
Adicionando o repo no repositório:
$ echo "deb [arch=amd64 signed-by=/usr/share/keyrings/cloudflare-warp-archive-keyring.gpg] https://pkg.cloudflareclient.com/ $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/cloudflare-client.list
Instalando:
$ sudo apt update && sudo apt install cloudflare-warp
$ sudo systemctl enable warp-svc
$ sudo systemctl start warp-svc
Registre o cliente (apenas na primeira vez):
$ warp-cli registration new
...
Accept Terms of Service and Privacy Policy? [y/N] y
Success
Conecte:
$ warp-cli connect
Success
Verificando o status:
$ warp-cli status
Status update: Connected
Network: healthy
$ ip addr
Na saída terá algo assim, podendo mudar a numeração dependendo de quantas placas de rede o vivente tem:
4: CloudflareWARP: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1280 qdisc mq state UNKNOWN group default qlen 500
link/none
inet 172.16.0.2/32 scope global CloudflareWARP
valid_lft forever preferred_lft forever
inet6 2608:4710:111:879c:4b44:ebb:317a:cacb/128 scope global
valid_lft forever preferred_lft forever
inet6 fd80::ca44:f9cc:aec0:681b/64 scope link stable-privacy proto kernel_ll
valid_lft forever preferred_lft forever
Geralmente o WARP cria uma interface chamada CloudflareWARP.
Você pode ver o tráfego passando por ela com:
$ sudo tcpdump -i CloudflareWARP -n udp
Se a interface não aparecer é porque algumas distribuições
Linux precisam que o módulo "tun" do kernel esteja carregado.
$ sudo modprobe tun
$ sudo systemctl restart warp-svc
$ warp-cli connect
Para tornar permanente:
$ sudo vim /etc/modules-load.d/modules.conf
Acrescente no final o nome do módulo: tun.
Salve e saia.
Reinicie o gerenciador de internet e tente de novo "ip addr".
Começando:
$ warp-cli disconnect
$ warp-cli mode warp
$ warp-cli connect
Criando o diretório para armazenar os Favoritos e Servidores Masters:
$ mkdir -p "$HOME/.hlcs/platform/config"
$ cp /opt/cstrike/HLCS/game/platform/config/ServerBrowser.vdf ~/.hlcs/platform/config/
$ cp /opt/cstrike/HLCS/game/platform/config/MasterServers.vdf ~/.hlcs/platform/config/
Faz symlink de
/opt/cstrike/HLCS/game/platform/config e garante persistência:
$ ln -s ~/.hlcs/platform/config /opt/cstrike/HLCS/game/platform/config
Criando o script cstrike_com.sh
$ cd /opt/cstrike/HLCS
$ vim cstrike_com.sh
Coloque dentro:
#!/bin/bash
# Script que roda e conecta o CS1.6 com WARP
# Otimiza o MTU da interface
sudo ip link set dev CloudflareWARP mtu 1280
# Limpa a rota anterior e fixa com o IP CloudflareWARP
sudo ip route add 131.196.198.52 dev CloudflareWARP 2>/dev/null
export SCRIPT="$(readlink -f "${BASH_SOURCE[0]}")"
export DIR="$(dirname "$SCRIPT")"
cd "$DIR/game"
# Executa o jogo usando o tunel
# -window: abre em modo janela
# -w 1024 -h 768: define o tamanho da janela
# -nomousegrab: evita que o mouse fique preso
#./hl_linux -game cstrike -nomousegrab -ip 0.0.0.0 +clientport 27005
# Pode colocar -ip 0.0.0.0 no lugar de -ip 172.16.0.2
"$DIR/steam-runtime/run.sh" ./hl_linux -game cstrike -window -w 1024 -h 768 -nomousegrab -nofbo -nomsaa -gl_clear 1 -windowed -gl -ip 0.0.0.0 +clientport 27005
Salve e saia.
$ dos2unix cstrike_com.sh
$ chmod +x cstrike_com.sh
Execute o script cstrike_com.sh (deve ser executado como usuário):
$ ./cstrike_com.sh
Sempre faça o procedimento de
New Game >
Escolher um map >
Start >
etc, até entrar no jogo para depois conectar no servidor.
Abra o console digitando a tecla aspas_duplas/apóstrofo ("').
Em outro terminal rode, caso quiser:
$ sudo tcpdump -i CloudflareWARP -n udp
Tente uma conexão no console do jogo, por exemplo:
cl_allowdownload 1
cl_allowopload 1
connect 91.211.247.221:27015
Agora é contigo!!!
Caso der
"Server is full" vá tentando outro servidor.
Em alguns servidores pode demorar horas para baixar os arquivos da primeira vez (depende da conexão), depois é mais rápido em qualquer servidor, pois os arquivos, muitas vezes, são os mesmos.
Caso mudar de computador pode copiar a pasta
/opt/cstrike/HLCS/game/cstrike.
Na saída do tcpdump, caso estiver usando, procure algo assim:
10:59:20.103549 IP 162.159.200.123.123 > 172.16.1.22.52574: NTPv4, Server, length 48
10:59:23.018999 IP 172.16.1.22.27005 > 93.114.82.202:27015: UDP, length 23
10:59:23.179207 IP 91.211.247.221:27015 > 172.16.1.22.27005: UDP, length 32
10:59:23.202248 IP 172.16.1.22.27005 > 91.211.247.221:27015: UDP, length 452
10:59:23.360583 IP 91.211.247.221:27015 > 172.16.1.22.27005: UDP, length 40
10:59:23.402670 IP 172.16.1.22.27005 > 91.211.247.221:27015: UDP, length 16
Terá ida e volta:
172.16.0.2.27005 > 91.211.247.221:27015 (SAINDO)
91.211.247.221:27015 > 172.16.0.2.27005 (ENTRANDO)
Para remover:
$ sudo apt purge cloudflare-warp
$ sudo rm -rf /etc/cloudflare-warp
$ sudo rm -rf /var/lib/cloudflare-warp