Como Configurar Alpine Linux para Navegar Usando IP Público Específico
Este tutorial mostra como configurar o Alpine Linux (ex: versão 3.19.7) para usar um IP público específico como IP de origem para tráfego de saída e também responder a conexões recebidas por esse IP.
📋 Cenário
- Interface primária:
eth0 - IP interno:
172.16.0.118/30 - IP público adicional:
186.233.4.19/32 - Gateway:
172.16.0.117
✅ Passos
1. Configure os IPs no /etc/network/interfaces
Edite o arquivo /etc/network/interfaces:
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet static
address 172.16.0.118
netmask 255.255.255.252
gateway 172.16.0.117
post-up ip route add default via 172.16.0.117 src 186.233.4.19
auto eth0:1
iface eth0:1 inet static
address 186.233.4.19
netmask 255.255.255.255
2. Criar a tabela de roteamento personalizada
Crie o arquivo de tabelas de roteamento (se não existir):
mkdir -p /etc/iproute2
echo "100 custom" > /etc/iproute2/rt_tables
3. Crie o script /etc/local.d/iproute.start
#!/bin/sh
ip addr add 186.233.4.19/32 dev eth0
ip route del default
ip route add default via 172.16.0.117 dev eth0 src 186.233.4.19
chmod +x /etc/local.d/iproute.start
Habilite o serviço local:
rc-update add local
4. Verifique as regras
ip rule
ip route show table 100
ip addr show dev eth0
Você deve ver o IP 186.233.4.19 ativo e a tabela 100 usada para tráfego de saída.
5. Teste
Verifique o IP público utilizado ao navegar:
curl https://ifconfig.me
Resultado esperado:
186.233.4.19
✅ Resultado Final
Após o boot, o Alpine Linux usará o IP 186.233.4.19 como IP de origem para tráfego de saída e aceitará conexões destinadas a ele.