Comware 7 – Configurando o GRE

O GRE (Generic Routing Encapsulation) é um protocolo de tunelamento que pode encapsular diversos protocolos dentro de tuneis IP, criando links ponto-a-ponto virtuais entre roteadores remotos.

O protocolo é extremamente funcional em diversos cenários, pois foi desenvolvido para permitir que redes remotas pareçam estar diretamente conectadas. Como o GRE não faz a criptografia, o GRE pode trabalhar em conjunto com IPsec para garantir a integridade das informações quando necessário.

Abaixo podemos observar a representação do encapsulamento de um pacote IP pelo GRE como também a inclusão de um novo cabeçalho.

O interessante é que o protocolo de transporte poderia ser o IPv6 e o protocolo encapsulado poderia ser o IPX, tráfego Multicast, etc; E ao ser entregue ao roteador de destino, o novo cabeçalho é removido e o pacote é entregue intacto.

Segue abaixo um exemplo de configuração de um túnel GRE para Roteadores com o Comware 7, fechando a adjacência OSPF entre 2 roteadores separados por uma rede MPLS. Nos testes usamos o roteador HP VSR1000.

Tabela de Rotas e tracert do Roteador R2

[R2]disp ip routing-table | inc O
192.168.1.0/24     O_INTRA 10  1563        192.168.13.1    Tun0

<R2>tracert 192.168.13.1
traceroute to 192.168.13.1 (192.168.13.1), 30 hops at most, 52 bytes each packet, press CTRL_C to break
 1  192.168.23.2 (192.168.23.2)  0.488 ms  0.523 ms  1.668 ms
 2  192.168.13.1 (192.168.13.1)  0.962 ms  5.463 ms  0.881 ms

<R2>tracert 192.168.1.1
traceroute to 192.168.1.1 (192.168.1.1), 30 hops at most, 52 bytes each packet, press CTRL_C to break
 1  192.168.1.1 (192.168.1.1)  1.116 ms  2.588 ms  1.731 ms

Comware 5: Protocolo de Tunelamento GRE

GRE (Generic Routing Encapsulation) é um protocolo de tunelamento que pode encapsular diversos protocolos dentro de túneis IP, criando links ponto-a-ponto virtuais entre roteadores remotos.

O protocolo é extremamente funcional em diversos cenários, pois foi desenvolvido para permitir que redes remotas pareçam estar diretamente conectadas. Como GRE não criptografa as informações que são transmitidas através do túnel, podemos utilizar o GRE em conjunto com IPsec para garantir a integridade das informações.

Abaixo podemos observar a representação de encapsulamento  de um pacote IP pelo GRE e a  inclusão de um novo cabeçalho.

O interessante é que o protocolo de transporte poderia ser o IPv6 e o protocolo encapsulado  poderia ser o IPX, tráfego Multicast, etc; E ao ser entregue ao roteador de destino, o novo cabeçalho é removido e o pacote é entregue intacto.

Agora você deve estar se perguntando. Em quais situações podemos usar o GRE ? Veja  o cenário:

Você em um dia normal como analista de redes e seu gerente de TI te informa que  sua   empresa acaba de adquirir uma nova filial e eles precisam ter acesso a alguns servidores que   estão na rede local do ambiente que você administra.  Depois de concluir todo processo de contratação do link e a conectividade com a filial estar finalizada, seu gerente de TI lhe informa   que na nova filial utilizará OSPF para declarar as redes locais.

Agora você pensa: como podemos configurar o OSPF nesses roteadores se eles não estão diretamente conectados? Como administrar o processo de roteamento via uma rede gerenciada pela Operadora como por exemplo, com MPLS,  que não está emulando um Lan-to-Lan ? É ai que entra o Túnel GRE.

Configuração

Antes de criar o tunnel, certifique-se que a origem e o destino mapeados na Interface Tunnel estejam acessíveis via roteamento. No nosso exemplo, usaremos  a Loopback.

Como os roteadores simularão uma conexão ponto-a-ponto, eles irão trocar informações  de  roteamento através do túnel como se estivessem diretamente conectados.

Por padrão o Comware habilita o protocolo GRE em túneis sem a necessidade de configuração adicional. Caso você precise utilizar uma Interface Tunnel para alguma outra função, segue abaixo algumas possibilidades:

[RA-Tunnel10]tunnel-protocol ?
  dvpn       Dynamic Virtual Private Network
  gre        Generic Routing Encapsulation
  ipsec      IPsec tunnel encapsulation
  ipv4-ipv4  tunnel mode ipv4 over ipv4
  ipv4-ipv6  tunnel mode ipv4 over ipv6
  ipv6-ipv4  tunnel mode ipv6 over(to) ipv4
  ipv6-ipv6  tunnel mode ipv6 over ipv6
  mpls       Multiprotocol Label Switching

Considerações para a utilização de Tunnel em Switches HP baseados no Comware

A utilização de interface Tunnel em Switches HP baseados no Comware pode ser um pouco mais complicada que em roteadores. Antes de utilizarmos o processo acima  é necessário criar uma configuração de “Service Loopback” (em alguns modelos de Switches), vincular à uma porta não utilizada (vazia) e também vincular o serviço ao Tunnel. Segue abaixo os passos:

• Crie um “tunnel-type service loopback group’.

• Adicione uma porta não utilizada ao “Service loopback group”.

# Criando o “Service-loopback” group 1 e especificando o tipo como tunnel.
[SwitchA] service-loopback group 1 type tunnel

# Vinculando a porta Giga 1/0/3 para o “Service-loopback” group 1. 
#Desabilite o STP e o LLDP da interface.
[SwitchA] interface GigabitEthernet 1/0/3
[SwitchA-GigabitEthernet1/0/3] undo stp enable
[SwitchA-GigabitEthernet1/0/3] undo lldp enable
[SwitchA-GigabitEthernet1/0/3] port service-loopback group 1
[SwitchA-GigabitEthernet1/0/3] quit

# Aplique  o “Service-loopback” group 1 à interface tunnel.
[SwitchA] interface tunnel 0
[SwitchA-Tunnel0] service-loopback-group 1
[SwitchA-Tunnel0] quit
# O tunnel ficará up mesmo que a outra ponta não esteja configurada

Até a próxima

Comware 7: OSPF Virtual Link

O desenho de uma rede OSPF requer que todas as áreas estejam diretamente conectadas à Area Backbone (Area 0 [zero]) e que os roteadores da Area 0 estejam sempre conectados com roteadores da mesma área.

Para conexão entre roteadores de diferentes áreas, o tráfego deve passar sempre pela Area 0.

Um virtual link é um link lógico que permite a conexão entre equipamentos da Area 0 que estão separados logicamente mas podem utilizar uma outra Area OSPF como trânsito, ou entre áreas não-Backbone que precisam utilizar outra área como transito:

O OSPF virtual link deve ser usado somente em casos específicos, conexões temporárias ou cenários de backup em caso de falha.

Configurando OSPF Virtual link

No exemplo abaixo, o virtual link servirá na conexão entre dois roteadores da Area 0 que estão separados por uma falha no link.

R1
#
ospf 1
  area 0.0.0.0
  network 192.168.1.0 0.0.0.255
  network 192.168.11.0 0.0.0.255
 area 0.0.0.1
  network 192.168.12.0 0.0.0.255
  vlink-peer 192.168.3.3
#
R3
#
ospf 1
 area 0.0.0.0
  network 192.168.3.0 0.0.0.255
  network 192.168.33.0 0.0.0.255
 area 0.0.0.1
  network 192.168.23.0 0.0.0.255
  vlink-peer 192.168.1.1
#

Comandos display

[R1]display  ospf vlink
         OSPF Process 1 with Router ID 192.168.1.1
                 Virtual Links
 Virtual-link Neighbor-ID  -> 192.168.3.3, Neighbor-State: Full
 Interface: 192.168.12.1 (GigabitEthernet0/0)
 Cost: 2  State: P-2-P  Type: Virtual
 Transit Area: 0.0.0.1
 Timers: Hello 10, Dead 40, Retransmit 5, Transmit Delay 1

#
 [R1]display ospf peer
         OSPF Process 1 with Router ID 192.168.1.1
               Neighbor Brief Information
 Area: 0.0.0.1
 Router ID       Address         Pri Dead-Time  State             Interface
 192.168.12.2    192.168.12.2    1   35         Full/DR           GE0/0
 Virtual link:
 Router ID       Address         Pri Dead-Time  State             Interface
 192.168.3.3     192.168.23.3    1   36         Full              GE0/0

Até breve

Comware 7 – Configuração de rota estática IPv6

Durante o recebimento de pacotes para comunicação entre máquinas IPv6, o Roteador efetua uma consulta na sua tabela de roteamento IPv6 para verificar se existe alguma rota para o destino. Se a rota existir o pacote será encaminhado, senão, o pacote será descartado.

A maior parte dos parâmetros de configuração de rotas estáticas em IPv6 são idênticos ao IPv4. Como por exemplo, rota estática padrão, sumarizada e flutuante.

Os parâmetros para inserir uma rota estática IPv6 em equipamentos baseados no Comware, são:

[MSR] ipv6 route [endereço-ipv6-de-destino] [tamanho-do-prefixo] [próximo-salto]

O next-hop (ou próximo salto) pode ser identificado por um endereço IPv6, interface de saída ou ambos.

É possível verificar a tabela de roteamento IPv6 com o comando display ipv6 routing-table.

A rota “ipv6 route-static ::0 0 [próximo-salto]” é uma “rota padrão” e corresponde a qualquer prefixo IPv6 (utilizado quando uma rota específica não é encontrada na tabela de roteamento).

Exemplo de Configuração

Endereço do next-hop como link-local

Caso haja a necessidade de configurar o endereço de next-hop como endereço IPv6 link-local, é necessário configurar a interface de saída, como no exemplo abaixo:

ipv6 route-static 2001:db8:222::2 64 GigabitEthernet0/0 fe80::88e5:7aff:fe7

Testes

Para validar as rotas configuradas resumimos alguns comandos abaixo:

ping ipv6 [endereço do host em IPv6]
! Testes de Ping

tracert ip [endereço do host em IPv6]
! Testes de tracerout

display ipv6 routing-table
! Verificar tabela de roteamento IPv6

display ipv6 interface [interface com endereço IPv6 no roteador]
! Verifique todos os endereços IPv6 da interface ( global, link-local, etc)

Perguntas e Respostas: VRF x VPN-instance

Pessoal, segue abaixo um pequeno resumo sobre a nomenclatura utilizada nas documentações Cisco x HP sobre o assunto VRF. Acredito que possa ajudar de forma rápida a entender alguns conceitos:

VRF: Virtual Routing and Forwarding
A utilização de VRFs (Virtual Routing and Forwarding) 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. Utilizado em cenários MPLS L3VPN com MP-BGP.

VRF Lite
A mesma funcionalidade que a VRF para criação de tabelas de roteamento independentes, mas nomeado para cenários sem MPLS L3VPN. Chamado também de Multi-VRF.

VPN-Instance
Termo utilizado nas documentações HP para VRF no Comware.

MCE (Multi CE)
Termo utilizado nas documentações HP para VRF-Lite.

Dúvidas e colocações, deixe um comentário.

Comware7: Template para IPv6 Prefix-list

Um prefixo ‘bogon’ é uma rota que nunca deve aparecer na tabela de roteamento da Internet. Um pacote roteado pela Internet pública nunca deve ter um endereço de origem em um intervalo ‘bogon'(não incluindo VPNs ou outros tipos túneis). Estes são geralmente encontrados como  endereços de origem de ataques DDoS.

A equipe 6Bogon mantém recomendações atualizadas para Filtro de Pacotes e para Filtro de rotas IPv6 para xSP, descrevendo as recomendações para filtragem de pacotes e filtragem de rotas para uso em roteadores de borda que falam IPv6 em/com xSPs.

Roteadores utilizam prefix-list para filtro de rotas em processos de roteamento, como por exemplo, o protocolo BGP. Uma vez que a prefix-list é criada, ela é utilizada no processo para filtrar as rotas aprendidas ou ensinada a um roteador par.

Voltando aos ‘bogons’, há a seguinte sugestão de prefixos que devem ser permitidos em uma tabela de roteamento IPv6 para o Comware7:

ipv6 prefix-list global-routes deny   2001:0DB8:: 32 less-equal 128
ipv6 prefix-list global-routes permit 2001:0200:: 23 le 64
ipv6 prefix-list global-routes permit 2001:0400:: 23 le 64
ipv6 prefix-list global-routes permit 2001:0600:: 23 le 64
ipv6 prefix-list global-routes permit 2001:0800:: 23 le 64
ipv6 prefix-list global-routes permit 2001:0A00:: 23 le 64
ipv6 prefix-list global-routes permit 2001:0C00:: 23 le 64
ipv6 prefix-list global-routes permit 2001:0E00:: 23 le 64
ipv6 prefix-list global-routes permit 2001:1200:: 23 le 64
ipv6 prefix-list global-routes permit 2001:1400:: 23 le 64
ipv6 prefix-list global-routes permit 2001:1600:: 23 le 64
ipv6 prefix-list global-routes permit 2001:1800:: 23 le 64
ipv6 prefix-list global-routes permit 2001:1A00:: 23 le 64
ipv6 prefix-list global-routes permit 2001:1C00:: 22 le 64
ipv6 prefix-list global-routes permit 2001:2000:: 20 le 64
ipv6 prefix-list global-routes permit 2001:3000:: 21 le 64
ipv6 prefix-list global-routes permit 2001:3800:: 22 le 64
ipv6 prefix-list global-routes permit 2001:4000:: 23 le 64
ipv6 prefix-list global-routes permit 2001:4200:: 23 le 64
ipv6 prefix-list global-routes permit 2001:4400:: 23 le 64
ipv6 prefix-list global-routes permit 2001:4600:: 23 le 64
ipv6 prefix-list global-routes permit 2001:4800:: 23 le 64
ipv6 prefix-list global-routes permit 2001:4A00:: 23 le 64
ipv6 prefix-list global-routes permit 2001:4C00:: 23 le 64
ipv6 prefix-list global-routes permit 2001:5000:: 20 le 64
ipv6 prefix-list global-routes permit 2001:8000:: 19 le 64
ipv6 prefix-list global-routes permit 2001:A000:: 20 le 64
ipv6 prefix-list global-routes permit 2001:B000:: 20 le 64
ipv6 prefix-list global-routes permit 2002:0000:: 16 le 64
ipv6 prefix-list global-routes permit 2003:0000:: 18 le 64
ipv6 prefix-list global-routes permit 2400:0000:: 12 le 64
ipv6 prefix-list global-routes permit 2600:0000:: 12 le 64
ipv6 prefix-list global-routes permit 2610:0000:: 23 le 64
ipv6 prefix-list global-routes permit 2620:0000:: 23 le 64
ipv6 prefix-list global-routes permit 2800:0000:: 12 le 64
ipv6 prefix-list global-routes permit 2A00:0000:: 12 le 64
ipv6 prefix-list global-routes permit 2C00:0000:: 12 le 64

Referência

http://www.team-cymru.org/ipv6-router-reference.html
http://www.team-cymru.org/Reading-Room/Templates/IPv6Routers/xsp-recommendations.txt

Vídeo: Comware – Tabela de Roteamento

A tabela de roteamento possui registro dos destinos para encaminhamento dos pacotes. As rotas  podem ser aprendidas manualmente (rotas estáticas ou redes diretamente conectadas) e dinamicamente (aprendidos via protocolo de roteamento dinâmico como OSPF, BGP,etc).

Nesse vídeo faremos uma breve descrição do funcionamento, aprendizado e escolha das rotas por um Roteador.

Comware 7 – BGP Community

O atributo do BGP community é utilizado como para marcação para um determinado grupo de rotas. Provedores de Serviço utilizam essas marcações para aplicar políticas de roteamento específicas em suas redes, como por exemplo, alterando o Local Preference, MED, etc. O atributo simplifica a configuração das políticas de roteamento, gerenciamento e manutenção.

Os ISP’s podem também estabelecem um mapeamento de community com o cliente ou com outro provedor para que sejam aplicadas regras de roteamento.

O recebimento e envio de communities BGP em Roteadores HP necessitam da configuração explicita do comando advertise-community. No exemplo abaixo, segue a configuração de um peer BGP em um roteador com o Comware 7:

bgp 65500
 group AS65500 internal
 peer AS65500 connect-interface LoopBack1
 peer 192.168.2.2 group AS65500
 #
 address-family ipv4 unicast
  peer AS65500 enable
  peer AS65500 advertise-community
#

O atributo community é opcional e transitivo (optional transitive) de tamanho variável. O atributo consiste em um conjunto de 4 octetos ou um número de 32 bits que específica uma community. A representação de uma community BGP é geralmente feita no formato AA:NN onde o AA é o Autonomous System (AS) e o NN é o número da community.

Algumas communities tem significados pré-definidos como:

  • NO_EXPORT (0xFFFFFF01)
  • NO_ADVERTISE (0xFFFFFF02)
  • NO_EXPORT_SUBCONFED (0xFFFFFF03)

-A community  NO_EXPORT  diz ao roteador que ele deve  propagar os prefixos somente dentro de peers iBGP e que não deve propagar esses prefixos para roteadores pares eBGP.

-A community NO_EXPORT_SUBCONFED possui as mesmas funcionalidades do NO_EXPORT dentro de cenários com confederation.

-A community NO_ADVERTISE  diz ao roteador que ele não deve anunciar o prefixo para nenhum peer BGP.

Abaixo, deixamos um exemplo de configuração utilizando a community NO_EXPORT e o output:

R1	
#
 ip prefix-list COMM_iBGP index 10 permit 192.168.11.0 24
#
route-policy SET_COMM permit node 5
 if-match ip address prefix-list COMM_iBGP
 apply community no-export
#
route-policy SET_COMM permit node 65535
#
#
bgp 65500
 group AS65500 internal
 peer AS65500 connect-interface LoopBack1
 peer 192.168.2.2 group AS65500
 #
 address-family ipv4 unicast
  network 192.168.11.0 255.255.255.0
  network 192.168.111.0 255.255.255.0
  peer AS65500 enable
  peer AS65500 route-policy SET_COMM export
  peer AS65500 advertise-community
#

Verificando no Roteador R2 a marcação enviada por R1 para o prefixo 192.168.11.0/24 :

[R2]display bgp routing-table ipv4 192.168.11.0
 BGP local router ID: 192.168.22.2
 Local AS number: 65500
 Paths:   1 available, 1 best
 BGP routing table information of 192.168.11.0/24:
 From            : 192.168.1.1 (192.168.11.1)
 Rely nexthop    : 192.168.12.1
 Original nexthop: 192.168.1.1
 OutLabel        : NULL
 Community       : No-Export
 AS-path         : (null)
 Origin          : igp
 Attribute value : MED 0, localpref 100, pref-val 0
 State           : valid, internal, best
 IP precedence   : N/A
 QoS local ID    : N/A
 Traffic index   : N/A

Configurando os valores manualmente…

Um prefixo pode também participar de mais de uma community e com isso um roteador pode tomar uma ação em relação ao prefixo baseado em uma (algumas) ou todas as communities associadas ao prefixo. O roteador tem a opção de manter, adicionar ou modificar o atributo antes de passar para os outros roteadores.

#
 ip prefix-list COMM_eBGP index 10 permit 192.168.111.0 24
 ip prefix-list COMM_iBGP index 10 permit 192.168.11.0 24
#
route-policy SET_COMM permit node 5
 if-match ip address prefix-list COMM_iBGP
 apply community no-export
#
route-policy SET_COMM permit node 10
 if-match ip address prefix-list COMM_eBGP
 apply community 65500:90
#
route-policy SET_COMM permit node 65535
#
bgp 65500
 group AS65500 internal
 peer AS65500 connect-interface LoopBack1
 peer 192.168.2.2 group AS65500
 #
 address-family ipv4 unicast
  network 192.168.11.0 255.255.255.0
  network 192.168.111.0 255.255.255.0
  peer AS65500 enable
  peer AS65500 route-policy SET_COMM export
  peer AS65500 advertise-community
#

Verificando a marcação enviada por R1 do prefixo 192.168.111.0/24:

[R4] display bgp routing-table ipv4 192.168.111.0
 BGP local router ID: 192.168.44.4
 Local AS number: 65507
 Paths:   1 available, 1 best
 BGP routing table information of 192.168.111.0/24:
 From            : 192.168.24.2 (192.168.22.2)
 Rely nexthop    : 192.168.24.2
 Original nexthop: 192.168.24.2
 OutLabel        : NULL
 Community       : <65500:90>
 AS-path         : 65500
 Origin          : igp
 Attribute value : pref-val 0
 State           : valid, external, best
 IP precedence   : N/A
 QoS local ID    : N/A
 Traffic index   : N/A

Em resumo, as operadoras utilizam communities BGP para manipulação de grande quantidade de prefixos para fins de políticas de roteamento, blackhole, etc. Grandes corporações também as utilizam para identificação de rotas de empresas filiais, rotas aprendidas em fusões com outras empresas,  políticas de roteamento, redes de serviço e mais.

Referências

http://babarata.blogspot.com.br/2010/05/bgp-atributo-community.html

http://www.noction.com/blog/understanding_bgp_communities

Vídeo: Comware VRRP com Track de Interface

O VRRP (Virtual Router Redundancy Protocol) permite a utilização de um endereço IP virtual em diferentes Switches/Roteadores. O funcionamento do VRRP é bem simples, dois ou mais dispositivos são configurados com o protocolo para troca de mensagens e então, o processo elege um equipamento MASTER e um ou mais como BACKUP.

Em caso de falha do Roteador VRRP Master o Roteador VRRP Backup assumirá rapidamente a função e o processo ocorrerá transparente para os usuários da rede.

Há também cenários que o roteador Master do VRRP continua ativo, mas não consegue encaminhar os pacotes devido a interface saída (como para a Internet por exemplo) cair. Podemos então fazer o track para o processo VRRP monitorar algum objeto, que pode ser o estado da interface( UP ou down), pingar determinado site, teste de conexão telnet e etc; e dessa forma reduzir a prioridade VRRP baseando-se em uma condição.