35 lines
1.4 KiB
Bash
35 lines
1.4 KiB
Bash
#!/bin/bash
|
|
|
|
# Este script implementa otimizações de MTU para WireGuard
|
|
# mesmo sem o programa XDP, caso não seja possível carregá-lo
|
|
|
|
echo "Aplicando otimizações manuais de MTU para WireGuard..."
|
|
|
|
# 1. Definir MTU ótimo para WireGuard (padrão recomendado)
|
|
ip link set dev wg0 mtu 1420
|
|
echo "MTU do WireGuard ajustado para 1420"
|
|
|
|
# 2. Habilitar TCP MSS clamping via iptables
|
|
# Isso força o MSS para um valor seguro, evitando fragmentação
|
|
iptables -t mangle -A FORWARD -o wg0 -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --set-mss 1380
|
|
ip6tables -t mangle -A FORWARD -o wg0 -p tcp -m tcp --tcp-flags SYN,RST SYN -j TCPMSS --set-mss 1380
|
|
echo "TCP MSS clamping configurado para pacotes via WireGuard"
|
|
|
|
# 3. Otimizações de kernel para fragmentação e PMTU
|
|
sysctl -w net.ipv4.tcp_mtu_probing=1
|
|
sysctl -w net.ipv4.ip_no_pmtu_disc=0
|
|
sysctl -w net.ipv4.tcp_base_mss=1024
|
|
echo "Configurações de kernel ajustadas para melhor detecção de PMTU"
|
|
|
|
# 4. Aplicar marcação específica para pacotes WireGuard no QoS existente
|
|
tc filter add dev enp0s6 parent 1: protocol ip prio 1 u32 \
|
|
match ip protocol 17 0xff \
|
|
match ip dport 32100 0xffff \
|
|
flowid 1:10
|
|
echo "Priorização de QoS específica para WireGuard adicionada"
|
|
|
|
echo ""
|
|
echo "=== Otimizações de MTU para WireGuard aplicadas sem código XDP ==="
|
|
echo "Status da interface wg0:"
|
|
ip link show dev wg0 | grep mtu
|