A tradução literal para route leaking seria “vazamento de rotas” e esse tipo de configuração permite que determinadas configurações que isolam o roteamento de cada tabela de rotas, como a utilização de VRFs por exemplo, troquem roteamento entre as VRFs (vpn-instance).
Em posts anteriores, publicamos um artigo sobre o roteamento entre VRFs utizando MP-BGP em Switches e Roteadores HP baseados no Comware, mas nesse exemplo, a função é apenas permitir o roteamento entre as vpn-instances para algumas rotas.
Durante a configuração do “route leaking” lembre-se de planejar a configuração de rotas sempre pensando no tráfego bidirecional, isto é, configurando tambem as rotas de retorno.
O Overlapping de subredes nas VRFs pode também ser utilizado, mas requerem configurações de NAT inter-VRF ( ou inter-VPN instance NAT) que somente são suportados em roteadores.
Restrições
As rotas estáticas precisam do endereço do next-hop e há limitação para rotas diretamente conectadas no roteamento inter-VRF.
Para o roteamentro entre VLANs nas VRFs, utilize o MP-BGP.
Somente os roteadores suportam a configuração de NAT para esse cenário (para os equipamentos baseados no Comware).
Configuração
No exemplo abaixo, o roteador possui duas VRF (vermelha e azul) que necessitam acessar 1 uma rede da outra VRF (lembrando que a utilização de VRFs permite o isolamento das tabelas de roteamento).
#
ip route-static vpn-instance vermelho 192.168.3.0 24 vpn-instance azul 192.168.23.3
ip route-static vpn-instance azul 192.168.1.0 24 vpn-instance vermelho 192.168.12.1
#
Obs: lembre-se que o roteamento de retorno tem que estar configurado nos roteadores R1 e R2 do exemplo.
Outra coisa bacana é que também é possível configurar o roteamento de uma VRF para a tabela global de um roteador.
O port-security é uma funcionalidade de camada 2 que impõe limites para o número de endereços MAC permitidos (aprendidos) por uma determinada porta do switch e faz o registro dos endereços MAC válidos para aquela interface, de maneira estática ou dinâmica.
Por exemplo, imaginando que a porta Gi1/0/1 em um Switch 3Com/HP habilitada com port-security aprendeu e registrou dinamicamente o endereço do host A e após isso um invasor tentar remover o cabo do host A para adicionar o host X, a funcionalidade port-security não permitiria a comunicação da máquina do invasor naquela porta e registraria a tentativa de violação/intrusão. O comportamento padrão do port-security é permitir a comunicação dos hosts validos e bloquear os endereços MAC não registrados naquela porta.
Intrusion protection
o Modo intrusion protection permite ao switch tomar outras atitudes nos cenários de violação/intrusão como:
blockmac: Adiciona o endereço MAC dos frames não autorizados para uma lista de endereços MAC bloqueados e descarta a comunicação. A lista de bloqueio armazena os endereços por 3 minutos. O intervalo é fixo e não pode ser alterado.
disable-port: Desablita a porta até a mesma ser ativada manualmente (shut/undo shut)
disableport-temporarily: Desabilita a porta por um período especifico. O período pode ser configurado com o comando global port-security timer disableporttime-value.
[Switch-GigabitEthernet1/0/5] port-security intrusion-mode ?
blockmac Block the MAC address
disableport Disable port
disableport-temporarily Disable port temporarily for a period(default is 20 seconds)
Configurando o modo blockmac
No script de configuração abaixo habilitamos o port-security para aprender 4 endereços MAC na interface G1/0/5 de forma dinâmica e com o modo de intrusão blockmac. Os endereços MAC abaixo foram aprendidos previamente de forma dinâmica.
Para visualizar a lista de endereços MAC bloqueados (quando o aprendizado dos 4 endereços MAC foi excedido na porta G1/0/5).
[Switch] display port-security mac-address block
MAC ADDR From Port VLAN ID
c43c-b856-8cfd GigabitEthernet1/0/5 2
b430-e029-5009 GigabitEthernet1/0/5 2
0456-291e-0b4a GigabitEthernet1/0/5 2
2e57-5632-6b84 GigabitEthernet1/0/5 2
52aa-fc03-3123 GigabitEthernet1/0/5 2
Obs: O tráfego legitimo dos endereços MAC inserido na configuração não é afetado durante o modo de intrusão.
Configurando o modo disableport
Uma vez que a mesma configuração é efetuada mas alterando o modo para disableport, toda a interface é colocada em shutdown após exceder o numero de endereços MAC permitidos na configuração.
[Switch-GigabitEthernet1/0/5]port-security intrusion-mode disableport
[Switch-GigabitEthernet1/0/5]
%Apr 26 12:26:04:20 2000 Switch PORTSEC/1/VIOLATION:
OID: 1.3.6.1.4.1.43.45.1.10.2.26.1.3.2
An intrusion occurs!
IfIndex: 9437188
Port:GigabitEthernet1/0/5
MAC Addr: 1C:56:8F:2D:66:0C
VLAN id:2
IfAdminStatus: 1
%Apr 26 12:26:04:341 2000 Switch IFNET/4/LINK UPDOWN:
GigabitEthernet1/0/5: link status is DOWN
#Apr 26 12:26:04:472 2000 Switch IFNET/4/INTERFACE UPDOWN:
Para retornar o tráfego da porta G1/0/5, execute o comando (shut/undo shut) e certifique que apenas há tráfego com o endereço MAC de origem apenas para os endereços descritos na interface.
Obs: no modo disableport-temporarily, após um período a porta voltaria normalmente a comunicação.
Neste vídeo, utilizando o Simulador HCL, mostramos passo a passo como identificar o switch raiz da sua rede, verificar o estado de cada porta e ainda como alterar o switch raiz para otimizar sua topologia.
Neste vídeo, aprofundamos os conhecimentos em configuração de switches 3Com/HP, apresentando os comandos para configurar e gerenciar protocolos como DHCP relay, IGMP, IGMP Snooping, NTP, RADIUS, sflow, SSH, Syslog e Telnet.
A configuração abaixo exibe a criação da ACL 2000 (baseada somente na Origem) e o vinculo dessa ACL na user-interface vty 0 4 que é responsável pelas conexões TELNET e SSH.
Por default se as regras não forem numeradas, elas serão marcadas de 5 em 5.
A tradução da regra para a ACL 2000 permite a rede 172.31.1.0/24 na regra zero (rule 0 )e a negação de qualquer rede na regra 5; se a primeira condição não for satisfeita.
Se precisassemos incluir mais 4 redes poderíamos efetuar da seguinte maneira:
As ACL (Access Control List) são utilizadas para classificar tráfego para os mais diversos fins, como por exemplo, políticas de filtro de pacotes, QoS e PBR.
Uma ACL pode classificar um tráfego baseando-se no fluxo de dados que entram ou saem de uma interface (porta física, interface VLAN, VLAN, etc).
Na maioria dos casos uma ACL é utilizada para determinar se um pacote será permitido ou descartado em uma interface com as ações PERMIT ou DENY.
A funcionalidade IP Source Guard (IPSG) configurada em Switches impede ataques spoofing na LAN utilizando uma tabela com registros de endereços da rede para comparar os pacotes legítimos. A feature descarta pacotes que não correspondem à tabela de endereços legítimos.
As consultas efetuadas com os endereços legítimos podem conter:
Os registros consultados pelo IP Source Guard podem ser estáticos ou dinâmicos. Por exemplo, se um host falsifica o endereço IP ou MAC de um host para ataques MITM ou DoS, a feature identificará o frame falsificado e o descartará.
As entradas (bindings) de IPSG estáticas são adequados para cenários onde existem poucos hosts em uma LAN e seus endereços IP são configurados manualmente. Por exemplo, você pode configurar em uma interface que se conecta a um servidor. Esse registro permite que a interface receba pacotes apenas do servidor.
Os registros IPSG estático em uma interface implementam as seguintes funções:
• Filtrar pacotes IPv4 ou IPv6 de entrada na interface.
• Cooperar com a detecção de ataques ARP no IPv4 para verificação de validade do usuário.
Ligações IPSG estáticas são específicas da interface. Uma ligação IPSG estática vincula o endereço IP, MAC, VLAN ou qualquer combinação dos itens na visualização da interface.
Configuração estática
[DeviceB] interface gigabitethernet 1/0/1
[DeviceB-GigabitEthernet1/0/1] ip verify source ip-address mac-address
[DeviceB-GigabitEthernet1/0/1] ip source binding mac-address 0001-0203-0407
[DeviceB-GigabitEthernet1/0/1] quit
#
[DeviceB] interface gigabitethernet 1/0/2
[DeviceB-GigabitEthernet1/0/2] ip verify source ip-address mac-address
[DeviceB-GigabitEthernet1/0/2] ip source binding ip-address 192.168.0.1 mac-address 0001-0203-0406
[DeviceB-GigabitEthernet1/0/2] quit
#
Output
[DeviceB] display ip source binding static
Total entries found: 2
IP Address MAC Address Interface VLAN Type
192.168.0.1 0001-0203-0406 GE1/0/2 N/A Static
N/A 0001-0203-0407 GE1/0/1 N/A Static
IPSG com DHCP Snooping
A feature DHCP Snooping permite a proteção da rede contra Servidores DHCP não autorizados. O comando dhcp-snooping configurado globalmente, faz o Switch filtrar as mensagens DHCP Offer e DHCP Ack, encaminhadas pelo falso Servidor DHCP. A configuração atribui para todas as portas do Switch como untrusted (não confiável) – sendo necessário a configuração manual do servidor DHCP como trust (confiável).
Uma vez em funcionamento o DHCP Snooping popula uma tabela que contém o endereço IP liberado pelo servidor DHCP com o endereço MAC do host e essa tabela pode ser utilizada pelo IPSG para proteção de ataques spoofing.
As consultas IPSG que forem baseadas no serviço DHCP são adequadas para cenários em que os hosts da rede local obtêm o endereço IP através do DHCP. O IPSG com DHCP Snooping fará apenas a leitura dos endereços fornecidos via DHCP da tabela dhcp-snooping.
Configurando o IPSG com DHCP Snooping
[Device] dhcp snooping enable
#
[Device] interface gigabitethernet 1/0/2
[Device-GigabitEthernet1/0/2] dhcp snooping trust
[Device-GigabitEthernet1/0/2] quit
#
[Device] interface gigabitethernet 1/0/1
[Device-GigabitEthernet1/0/1] ip verify source ip-address mac-address
# Enable recording of client information in DHCP snooping entries on GigabitEthernet 1/0/1.
[Device-GigabitEthernet1/0/1] dhcp snooping binding record
[Device-GigabitEthernet1/0/1] quit
Output
[Device] display ip source binding dhcp-snooping
Total entries found: 1
IP Address MAC Address Interface VLAN Type
192.168.0.1 0001-0203-0406 GE1/0/1 1 DHCP snooping
A utilização de VRFs (Virtual Routing and Forwarding ou vpn-instance na linguagem HP) em Roteadores permite a criação de tabelas de roteamentos virtuais que trabalham de forma independente da tabela de roteamento “normal”, protegendo os processos de roteamento de cada cliente de forma individual.
Há também cenários em que é necessário a troca seletiva de prefixos de rede entre as tabelas de roteamento virtuais, escolhendo quais redes devem ser exportardas ou não entre as VRFs. Lembrando que os valores vpn-target (route-target) trabalham com as Extended community do BGP para troca de prefixos entre VRFs, é possível manipular o processo via route-policy (route-map), configurando a “comunidade estendida” para o prefixo e utilizando o comando export dentro da VRF.
Relembrando…
No diagrama abaixo há 2 VRFs já configuradas (com o processo MP-BGP ativo) e com seus respectivos prefixos.
Como os valores para import/export das VRFs não são os mesmos, não há roteamento entre as VRFs (cada VRF tem o seu roteamento isolado).
Mas imaginem que a VRF Client_B, por questões de segurança no roteamento, não precissasse ensinar os prefixos 172.16.2.0/24 e 172.16.3.0/24 para a VRF Client_A mas somente o prefixo 172.16.1.0/24…. Nesse caso precisaríamos configurar o roteamento seletivo para que a VRF Client_A aprenda somente os prefixos necessários.
Ja a VRF Client_A exportará todos os prefixos sem filtros para a Client_B
Utilizaremos no exemplo o valor da Extended Community 65000:12 para exportar o prefixo 172.16.1.0/24.
ip ip-prefix Client_B_prefixo index 5 permit 172.16.1.0 24 ! Selecionando o prefixo via prefix-list ! route-policy Client_B_export permit node 10 if-match ip-prefix Client_B_prefixo apply extcommunity rt 65000:12 additive # ! Configurando a community estendida via Route-map ! ip vpn-instance Client_B export route-policy Client_B_export quit ! Configurando o export seletivo de prefixo end !