Comware – Limpando a lixeira

O comando dir, permite visualizarmos os arquivos dentro de um diretório. Caso estejamos na raiz (sem digitar em nenhum comando para mover-se no modo user-view), o comando irá exibir o conteúdo da memória flash:

<4800G>dir
Directory of flash:/

   0     -rw-    483956  Jun 26 2000 10:45:17   a5500ei-btm-715-us.btm
   1     -rw-  13940314  Jun 26 2000 10:49:24   a5500ei-cmw520-r2220p02.bin
   2     drw-         -  Apr 26 2000 12:00:31   seclog
   3     drw-         -  Apr 26 2000 13:14:20   oldcfg

31496 KB total (7164 KB free)

As vezes para atualizar o sistema operacional do Switch ou Roteador precisamos liberar espaço na memória flash. Utilize o comando delete para remover os arquivos:

<4800G>delete a5500ei-cmw520-r2220p02.bin
Delete flash:/a5500ei-cmw520-r2220p02.bin?[Y/N]:
Before pressing ENTER you must choose 'YES' or 'NO'[Y/N]:y
.
%Delete file flash:/a5500ei-cmw520-r2220p02.bin...Done.

O comando dir /all exibe quais arquivos estão na lixeira exibindo o nome do arquivo entre colchetes( [ ] ).

<4800G>dir /all
Directory of flash:/
   0     -rwh         4  Apr 26 2000 12:19:54   snmpboots
   1     -rwh      4184  Apr 26 2000 13:23:14   private-data.txt
   2     drw-         -  Apr 26 2000 12:00:31   seclog
   3     drw-         -  Apr 26 2000 13:14:20   oldcfg
   4     -rwh      8221  Apr 26 2000 13:23:19   qosindex
   5     -rw-      7638  Apr 26 2000 13:20:14   [3comoscfg.cfg]
   5     -rw-  10315278  Jun 26 2000 10:39:39   [s4800g-cmw520-r2102p02.bin]
   5     -rw-      9811  Apr 26 2000 13:14:55   [teste-qos.cfg]
   5     -rw-     23867  Apr 26 2000 13:15:18   [atual.cfg]
   5     -rw-     23867  Apr 26 2000 13:15:39   [atual.cfg.bkp]
   5     -rw-     12611  Apr 26 2000 13:15:59   [3comoscfg.cfg.old]
   5     -rw-    483956  Apr 26 2000 14:13:07   [a5500ei-btm-715-us.btm]
   5     -rw-  13940314  Apr 26 2000 14:13:20   [a5500ei-cmw520-r2220p02.bin]

Após a exclusão do arquivo, o mesmo ficará na lixeira até efetuarmos a limpeza com o comando reset recycle-bin.

Para deletar o arquivo de forma que o mesmo não vá para lixeira utilize o comando delete /unreserved [nome do arquivo].

Obs: Tome cuidado para não desligar o equipamento caso tenha removido os arquivos do Comware.

O comando boot-loader define qual imagem será escolhida como principal e a de  backup na inicialização do Switch.

Por Exemplo, após atualização por TFTP da imagem atual do Switch de s4800g-cmw520-r2102p02.bin para s4800g-cmw520-r2202p15-s56.bin, precisaremos informar ao equipamento qual versão do Sistema Operacional iremos utilizar no próximo boot.

<4800G>boot-loader file S4800G-cmw520-r2202p15-s56.bin main

Faça a validação com o comando display boot-loader

Bootrom

No documento de liberação de releases para alguns modelos de Switches será solicitado o upgrade do bootrom .

<4800G>bootrom update file s4800g-btm_604.btm

Após efetuados os passos acima, reinicie o equipamento com o comando reboot.

Inté!  🙂

Roteadores HP: 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.

OSPF Areas

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:

OSPF Virtual link

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.

OSPF Virtual link - AREA 0

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: ACL para gerenciamento Telnet

A utilização de listas de acesso (ACL) para limitar as redes que poderão efetuar o gerenciamento do Switch e/ou Roteador é uma técnica bastante utilizada para restringir os hosts que terão permissão de acesso o equipamento.

Os equipamentos com a versão 7 do Comware diferem um pouco na configuração de atribuição de uma ACL  ao acesso Telnet e SSH.

#
acl basic 2000
 rule 0 permit source 192.168.11.1 0
 rule 5 permit source 192.168.11.12 0
 rule 10 permit source 192.168.11.11 0
! ACL com os hosts com permissão de acesso
#
 telnet server enable
 telnet server acl 2000
! Habilitando o serviço Telnet e aplicando  a ACL 2000
#

Para filtrar o acesso via SSH utilize a mesma lógica.

ssh server enable
ssh server acl 2000

Caso o seu switch/roteador não suportar os comandos citados, veja o script citado por esse mesmo blog no post: http://www.comutadores.com.br/acl-para-gerenciamento-telnet-ssh-snmp/

Até logo

Comware – 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:

Comware - BGP Community

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

Falando um pouco mais sobre custo STP

Uma vez que o Switch root da rede é definido, os Switches não-Root definirão a partir do Switch Root o melhor caminho para ele e bloquearão os caminhos redundantes, afim de evitar loop na rede.

O custo atribuído à velocidade da porta é um fator determinante na escolha do melhor caminho.

STP Cost Comware

No exemplo acima, o Switch SW2 bloqueou o caminho com maior custo para o Switch Root.

Nos casos em que é necessário saber qual o custo de cada porta (em Switches baseados no Comware) verifique com o comando display stp interface [nome-da-interface número-da-interface] :

[Switch]display stp interface GigabitEthernet 1/0/1
 ----[CIST][Port2(GigabitEthernet1/0/1)][FORWARDING]----
 Port protocol       : Enabled
 Port role           : Designated Port (Boundary)
 Port ID             : 128.2
 Port cost(Legacy)   : Config=auto, Active=20
 Desg.bridge/port    : 32768.0837-6c44-0100, 128.2
<saída omitida>

Para manipulação manual dos custos das portas STP  acesse o post: http://www.comutadores.com.br/spanning-tree-manipulando-o-custo-do-caminho-para-o-root-path-cost/

Um comando bem interessante para validar qual o custo utilizado de um Switch não-Root para o Switch root é o display stp root:

[SW2]display stp root
 MST ID   Root Bridge ID        ExtPathCost IntPathCost Root Port
 0        0.0837-6c44-0100      23          0           GE1/0/2


[SW3]display stp root
 MST ID   Root Bridge ID        ExtPathCost IntPathCost Root Port
 0        0.0837-6c44-0100      43          0           GE1/0/1

Dúvidas? deixe um comentário.
Até breve.

Comware 7 – Traffic Classifier – Match por aplicação

As versões novas do Comware 7 já possuem suporte para configuração de “match” nos perfis de tráfego para fins de QoS e etc; baseado no reconhecimento das aplicações, conforme output abaixo:

[MSR1002-4]traffic classifier APLICACAO operator or
[MSR1002-4-classifier-APLICACAO]if-match  application ?
  STRING<1-63>     Application name. 'A-Z', 'a-z', '0-9', '_', and '-' are
                   permitted, but 'invalid' and 'other' are prohibited
  afs3-kaserver    AFS/Kerberos authentication service
  aol              America Online
  appleqtc         Apple Quick Time
  bgp              Border Gateway Protocol
  bittorrent       BitTorrent File Transfer Traffic
  bootpc           Bootstrap Protocol Client
  bootps           Bootstrap Protocol Server
  chargen          Character Generator
  citrixadmin      Citrix ADMIN
  citrixima        Citrix IMA
  citriximaclient  Citrix MA Client
  clearcase        Clearcase
  cma              CORBA Management Agent
  corba-iiop       Corba Internet Inter-Orb Protocol
  corba-iiop-ssl   Corba Internet Inter-Orb Protocol SSL
  corbaloc         CORBA LOC
  cuseeme          Desktop Video Conferencing
  daytime          Daytime Protocol
  dbase            dBASE Unix
  dhcpv6-client    DHCPv6 Client
  dhcpv6-server    DHCPv6 Server
  dicom            Digital Imaging and Communications in Medicine, DICOM
  dicom-iscl       DICOM ISCL
  dicom-tls        DICOM TLS
  dns              Domain Name Server
  dns-llq          DNS Long-Lived Queries
  doom             Doom Id Software
  echo             Echo
  edm-adm-notify   EDM ADM Notify
  edm-manager      EDM Manger
  edm-mgr-cntrl    EDM MGR Cntrl
  edm-mgr-sync     EDM MGR Sync
  edm-stager       EDM Stager
  edm-std-notify   EDM STD Notify
  finger           Finger
  fix              Financial Information Exchange
  ftp              File Transfer [Control]
  ftp-data         File Transfer [Default Data]
  ftps             ftp protocol, control, over TLS/SSL
  ftps-data        ftp protocol, data, over TLS/SSL
  g-talk           Google Talk
  gnutella-rtr     gnutella-rtr
  gnutella-svc     gnutella-svc
  gopher           Gopher
  gprs-data        GPRS Data
  gprs-sig         GPRS SIG
  gtp-control      GTP-Control Plane (3GPP)
  gtp-user         GTP-User Plane (3GPP)
  h225             H.323 Call Setup
  h245             Control Protocol for Multimedia Communication
  h263-video       H.263 Video Streaming
  h323callsigalt   H.323 Call Signal Alternate
  h323gatedisc     H.323 Gatekeeper Discovery
  h323hostcallsc   H.323 Host Call Secure
  hl7              Health Level Seven
  http             Hyper Text Transfer Protocol
  https            http protocol over TLS/SSL
  ibm-db2          IBM-DB2
  ica              Citrix ICA
  icabrowser       Citrix ICA
  ils              Windows Internet Locator service
  imap             Internet Message Access Protocol
  imap3            Interactive Mail Access Protocol v3
  imaps            imap4 protocol over TLS/SSL
  ipx              Internet Packet Exchange
  irc              Internet Relay Chat Protocol
  irc-serv         IRC-SERV
  ircs             Secure IRC
  irdmi            iRDMI
  isakmp           Internet Security Association and Key Management Protocol
  isi-gl           Interoperable Self Installation Graphics Language
  kazaa            KaZaA
  kerberos         Kerberos
  kerberos-adm     kerberos administration
  kerberos-iv      kerberos version iv
  kftp             Kerberos V5 FTP Control
  kftp-data        Kerberos V5 FTP Data
  klogin           Klogin
  kshell           Kshell
  ktelnet          Kerberos V5 Telnet
  l2tp             Level 2 Tunnel Protocol
  ldap             Lightweight Directory Access Protocol
  ldaps            ldap protocol over TLS/SSL
  login            Login
  mdns             Multicast DNS
  mdnsresponder    Multicast DNS Responder IPC
  mgcp-callagent   Media Gateway Control Protocol Call Agent
  mgcp-gateway     Media Gateway Control Protocol Gateway
  microsoft-ds     Microsoft Directory Services
  mmcc             multimedia conference control tool
  ms-sql-m         Microsoft-SQL-Monitor
  ms-sql-s         Microsoft-SQL-Server
  msn-messenger    MSN Messenger
  msrpc            Microsoft RPC
  netbios-dgm      NETBIOS Datagram Service
  netbios-ns       NETBIOS Name Service
  netbios-ssn      NETBIOS Session Service
  news             news
  nfs              Network File System
  nicname          Nicname
  nmap             Network Mapper
  nntp             Network News Transfer Protocol
  nntps            nntp protocol over TLS/SSL
  notes            IBM Lotus Notes
  npp              Network Printing Protocol
  ntp              Network Time Protocol
  orasrv           Oracle
  ott              One Way Trip Time
  pcanywheredata   Symantic PCAnywhere Data
  pcanywherestat   Symantic PCAnywhere Stat
  pop3             Post Office Protocol Version 3
  pop3s            pop3 protocol over TLS/SSL
  pptp             Point-to-Point Tunneling Protocol
  presence         XMPP Link-Local Messaging
  printer          Printer
  radius           Remote Authentication Dial In User Service (RADIUS)
  radius-acct      RADIUS Accounting
  radius-dynauth   RADIUS Dynamic Authorization
  ras              H.323 Gatekeeper Registration Admission Status
  rcp              Radio Control Protocol
  rfb              Remote Framebuffer
  rip              Routing Information Protocol
  rsh              Remote Shell Commands
  rsvp-encap-1     Resource Reservation Protocol Encapsulation-1
  rsvp-encap-2     Resource Reservation Protocol Encapsulation-2
  rsvp-tunnel      RSVP Tunnel
  rsync            rsync
  rtcp             Real-Time Control Protocol
  rtelnet          Remote Telnet Service
  rtp              Real-Time Transport Protocol
  rtsp             Real Time Streaming Protocol
  sccp             Skinny Client Control Protocol
  sdp              Session Description Protocol
  sip              Session Initiation Protocol
  smtp             Simple Mail Transfer
  snmp             Simple Network Management Protocol
  snmptrap         Simple Network Management Protocol Trap
  socks            Firewall ecurity Protocol
  sqlexec          IBM Informix SQL Interface
  sqlexec-ssl      IBM Informix SQL Interface Encrypted
  sqlnet           SQL*NET for Oracle
  ssh              The Secure Shell (SSH) Protocol
  stun             Session Traversal Utilities for NAT (STUN) port
  stuns            STUN over TLS
  sunrpc           SUN Remote Procedure Call
  svn              Subversion
  syslog           System Logging
  systat           System Statistics
  tacacs           Terminal Access Controller Access Control System
  tacacs-ds        TACACS-Database Service
  telnet           Telnet
  telnets          telnet protocol over TLS/SSL
  tftp             Trivial File Transfer
  time             Time
  timed            Time Server
  tunnel           TUNNEL
  who              Who
  whoispp          whois++
  x11              X Window System
  xdmcp            X Display Manager Control Protocol

Os testes foram executados em um Roteador MSR1002-4 com Version 7.1.059, Release 0305P04.

Comware: Configurando o atributo Preferred_value (weight) em anúncios de prefixos BGP via route-policy

O atributo BGP Preferred_value permite ao roteador examinar internamente as atualizações BGP decidir a rota preferêncial.

O atributo não é encaminhado nas mensagens BGP e possui apenas função local em um roteador. Para aqueles que estão acostumados a configuração do protocolo BGP em roteadores Cisco com IOS, a funcionalidade é idêntica a configuração BGP weight, que é proprietária.

O Preferred_value é eficiente quando há a necessidade de manipular um destino na saída de um AS, em meio múltiplas rotas.

Vence a rota com maior valor do Preferred_value e é possível configurar valores entre 0 e 65535.

Por padrão os prefixos aprendidos via eBGP possuem o valor como 0 e o Preferred_Value é o parâmetro preferencial para escolha da melhor rota.

Seleção de rotas BGP

Segue abaixo a lista com a ordem para escolha da melhor rota na tabela BGP:

    1. Seleciona a rota com maior preferred_value (similar ao weight da Cisco).
    2. Seleciona a rota com maior Local_Pref.
    3. Seleciona a rota originada pelo roteador local.
    4. Seleciona a rota com menor AS-Path.
    5. ….

Exemplo de Configuração

No exemplo abaixo iremos manipular o roteamento do AS 64507 para o prefixo 2001:db8:3::/64 anunciado pelo AS 64500, para o roteador RA escolher o caminho via RC (next-hop 2001:db8:13::3). O exemplo de configuração é o mesmo para os prefixos IPv4.

Comware BGP Preferred_value
Script de configuração de um roteador MSR com o Comware 7

ipv6 prefix-list abc index 10 permit 2001:DB8:3:: 64
! Configurando a prefix-list da rede 2001:db8::3/64
#
route-policy SET_PV permit node 10
 if-match ipv6 address prefix-list abc
 apply preferred-value 200
! Criando a route-map para aplicar o Preferred_value 200 a prefix-list abc
#
bgp 64507
 peer 2001:DB8:12::2 as-number 64500
 peer 2001:DB8:13::3 as-number 64500
 #
 address-family ipv6 unicast
  network 2001:DB8:1:: 64
  peer 2001:DB8:12::2 enable
  peer 2001:DB8:13::3 enable
  peer 2001:DB8:13::3 route-policy SET_PV import
! Aplicando a route-policy SET_PV para os prefixos aprendidos pelo peer
#

Verificando a tabela de roteamento

[RA]display bgp routing-table ipv6
 Total number of routes: 3

 BGP local router ID is 192.168.11.1
 Status codes: * - valid, > - best, d - dampened, h - history,
               s - suppressed, S - stale, i - internal, e – external
               Origin: i - IGP, e - EGP, ? - incomplete
* >e Network : 2001:DB8:2::                            PrefixLen : 64
     NextHop : 2001:DB8:12::2                          LocPrf    :
     PrefVal : 0                                       OutLabel  : NULL
     MED     : 0
     Path/Ogn: 64500i
* >e Network : 2001:DB8:3::                             PrefixLen : 64
     NextHop : 2001:DB8:13::3                           LocPrf    :
     PrefVal : 200                                      OutLabel  : NULL
     MED     : 0                                     
     Path/Ogn: 64500i
*  e Network : 2001:DB8:3::                             PrefixLen : 64
     NextHop : 2001:DB8:12::2                           LocPrf    :
     PrefVal : 0                                        OutLabel  : NULL
     MED     :
     Path/Ogn: 64500i

Veja que a rota “best” para o prefixo 2001:db8:3::/64 está com o Preferred_value como 200.

Até logo

Comware: Configurando o atributo MED em anúncios de prefixos BGP via route-policy

O propósito do atributo MED (ou MULTI_EXIT_DISC) é permitir que rotadores em um determinado AS digam a roteadores em outro AS a preferência de caminho para determinado prefixo. Apesar de conseguir manipular o “custo” de decisão do melhor caminho em outro AS, o MED não está no topo das escolhas de prioridades do protocolo, mas em diversos casos é muito eficiente.

Apesar de eu já ter utilizado o parâmetro algumas vezes, sempre me esqueço do comando correto e não consigo encontrar nos “Configure Guide” da vida em cenários com a aplicação do MED dentro de uma route policy. Uma das coisas mais legais de ter um blog é poder salvar assuntos que no futuro também facilitarão minha vida. 🙂

Voltando ao assunto… há a possibilidade de configurar o atributo MED direto no processo BGP (já para a versão7 do Comware a configuração deverá ser feita dentro do address-family).

Entretando, para configurar o MED dentro de uma route-policy o comando correto para atribuir um valor para o BGP Multi-Exit Discriminator é apply cost [valor MED].

route-policy SET_MED permit node 10
 if-match ip address prefix-list abc
 apply cost 1000

Seleção de rotas BGP antes do atributo MED

Segue abaixo a lista com a ordem para escolha da melhor rota na tabela BGP antes do atributo MED:

    1. Seleciona a rota com maior preferred_value (similar ao weight da Cisco).
    2. Seleciona a rota com maior Local_Pref.
    3. Seleciona a rota originada pelo roteador local.
    4. Seleciona a rota com menor AS-Path.
    5. Seleciona a rota baseado na prioridade de origem.
    6. Seleciona a rota com o menor MED.

Obs: Caso as opções de melhor preferência estejam com os mesmos atributos, o MED será a sexta opção para desempate.

Exemplo de Configuração

Comware BGP MED

No cenário acima o roteador RB anuncia o prefixo 192.168.11.0/24 com o atributo MED com valor 10 e o roteador RC também anuncia o prefixo 192.168.11.0/24 mas com o atributo MED como 20.

Os Roteadores do AS 64500 comparam o menor MED e caso não exista melhor parâmetro para seleção, o atributo MED será escolhido para encaminhar o tráfego ao roteador (vence o menor valor MED).

Configuração do Roteador RB (com o Comware7)

#
ip prefix-list rede_192 index 5 permit 192.168.11.0 24
#
route-policy SET_MED_10 permit node 10
 if-match ip address prefix-list rede_192
 apply cost 10
#
bgp 64507
 peer 192.168.12.2 as-number 64500
#
 address-family ipv4 unicast
     peer 192.168.12.2 enable
     peer 192.168.12.2 route-policy SET_MED_10 export
#

Os roteadores do ASN 64500 terão em sua tabela BGP o seguinte cenário:

[RE]display bgp routing-table ipv4
 Total number of routes: 5
 BGP local router ID is 192.168.3.3
 Status codes: * - valid, > - best, d - dampened, h - history,
               s - suppressed, S - stale, i - internal, e – external
               Origin: i - IGP, e - EGP, ? - incomplete
     Network            NextHop         MED        LocPrf     PrefVal Path/Ogn
* >i 192.168.1.0        192.168.12.1    0          100        0       64507i
*  e                    192.168.13.1    0                     0       64507
  >i 192.168.2.0        192.168.2.2     0          100        0       i
* >i 192.168.11.0       192.168.12.1    10         100        0       64507i
*  e                    192.168.34.1    20                    0       64507i

Veja que a rota “best” em nosso cenário é o prefixo com menor valor do atributo MED.

Até logo!

Referências

CCIE Routing and Switching Certification Guide, 4th Edition, Cisco Press, Wendell Odom, Rus Healy, Denise Donohue

Comware – 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

Comware - Rota Estática IPv6

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)

Até mais! 🙂