Este serviço de Internet e VoIP “empresarial de gama alta” é vendido como podendo ser configurado em “bridge” no qual um router do cliente pode alocar um IP público, mas não é bem assim. No fim deste artigo deverá ser claro como configurar o serviço MEO GlobalConnect Pack num router DD-WRT, OpenWrt ou num servidor.
Considerações importantes sobre o serviço:
- O router Technicolor instalado não tem interface de gestão nem será fornecida;
- O serviço de Internet está disponível na VLAN 20 da ONT;
- O acesso à Internet é um CGNAT;
- O “bridge” terá de ser pedido ao técnico durante a instalação;
- Os pedido de suporte requerem o preenchimento de um formulário com dados da instalação que provavelmente o cliente não tem.
Em CGNAT o router da MEO e/ou do cliente estão ligados a uma rede privada 100.64.0.0/10
e não directamente à Internet. A MEO reencaminha todos os pacotes que cheguem ao IP público alocado ao cliente para o respetivo IP privado. A “bridge” não funciona como nos clientes de gama baixa em que qualquer dispositivo ligado à ONT terá a possibilidade de alocar IPs.
Ao pedir “bridge” o técnico irá fornecer os seguintes dados:
VLAN Internet: 20
IP WAN Local: 100.64.194.2
IP WAN Remoto: 100.64.194.1
IP Internet: 62.10.20.30/32
“Adivinhem que isto é um CGNAT e descubram como funciona o nosso serviço.”
Em “bridge” o serviço está disponível na porta 4 do router da MEO untagged (sem VLAN). Caso pretendam ligar directamente à ONT terão de ajustar o vosso router/switch para usar a VLAN 20. Os IPs WAN percentem a uma subnet /30
, ou seja, uma máscara 255.255.255.252
.
Para configurar o serviço no DD-WRT vamos a Setup > Basic Setup
e definimos a WAN Connection Type
como:
Connection Type: Static IP
WAN IP: 100.64.194.2 <--- O nosso IP WAN Local
Subnet: 255.255.255.252
Gateway: 100.64.194.1 <--- O nosso IP WAN Remoto
Após isto já conseguimos fazer ping
ao IP WAN Remoto. Agora precisamos de adicionar o IP público real aos IPs da WAN do router e definir algumas regras. Em Administration > Commands
adicionamos o seguinte aos comandos da firewall:
ip addr add 62.10.20.30/32 dev vlan2
iptables -t nat -A POSTROUTING -o vlan2 -j SNAT --to 62.10.20.30
iptables -t nat -I POSTROUTING -s 172.26.1.0/24 -j SNAT --to-source 62.10.20.30
Neste caso:
- O IP público estático é o
62.10.20.30
; - No router Netgear R7000 a
vlan2
é o acesso à Internet. Noutros routers é necessário verificar emSetup > Switch Config
qual é a VLAN que está associada à porta WAN do router; - A rede privada do cliente é
172.26.1.0/24
. Por default será o tradicional192.168.1.0/24
.
A primeira regra adiciona o IP estático à Interface. As seguintes aplicam SNAT
de forma a que todo o tráfego a ser enviado “para fora” saia com o IP público final em vez do WAN IP. Na MEO, ao contrario de outros CGNAT’s, o cliente é que tem de ser responsável por metade do trabalho. 😉
Acesso Externo a Serviços do Router
Quem ficou a pensar que a saga do CGNAT “martelado” acabou aqui engana-se. Mais uma vez a MEO só faz metade do trabalho e recebemos os pacotes da Internet com o IP público/estático em vez do IP privado que usamos como WAN.
Como era de esperar os serviços do router ex. WebUI e OpenVPN estão pensados para fazer bind ao WAN IP e como tal ignoram o tráfego do IP público que adicionamos manualmente. Para resolver esta situação podemos:
iptables -A INPUT -p udp -s 62.10.20.30 --dport 4713 -j ACCEPT
iptables -t nat -I PREROUTING -i vlan2 -p udp --dport 4713 -j DNAT --to-destination 100.64.194.2:4713
Permitir tráfego UDP no porto 4713
do IP público e logo a seguir a reescreve-lo para o WAN IP (da rede privada da MEO). Assim o serviço é abstraído do CGNAT e das confusões da MEO. Alternativamente podemos modificar a regra anterior para reescrever o IP de qualquer pacote que chegue mas isso já fica ao critério de cada um.
Configuração no OpenWRT
Também é possível configurar o serviço no OpenWRT e para tal remeto para esta página do projecto que me ajudou bastante a chegar às conclusões anteriores.
Espero ter ajudado e queria só deixar o comentário de que é absurdo a MEO implementar um setup deste género em clientes empresariais. Pior do que isso é a implementação do CGNAT ser incompleta e os técnicos/suporte não a saberem descrever ou sequer fornecer os dados completos.