Este post é apenas um complemento ao post Filtrando comandos show no IOS, de 2010… Além dos exemplos já citados no post anterior, temos outras duas opções: Partition: Com este parâmetro, semelhante ao section (acho que é anterior ao section), temos acesso a partes específicas da configuração. Nem todos equipamentos suportam esta opção. Barra (/): Podemos usar a /depois de um comando show run para buscar uma string específica. No exemplo abaixo busquei por “0/20”. Modo Hard Core Os exemplos acima, e do post anterior, são simples e extremamente úteis. Agora, podemos elevar um pouco o nível usando expressões regulares. As possibilidades são enormes, e abaixo estão apenas alguns exemplos do uso de expressão regular para encontrar o que você precisa na configuração. show run | i ^interface|^_ipv6 address: Mostra as linhas da configuração que começam com “Interface” ou “ipv6 address. Ou seja, te traz a interface e o ipv6 configurado. BrainRT01#show run | i ^interface|^_ipv6 addressinterface Loopback0 ipv6 address 2001:0EDE:D4::/128interface Loopback10 ipv6 address 2010:2010:2010::/128interface FastEthernet0/0 ipv6 address 2001:DB9:DE::2/64interface FastEthernet0/1 ipv6 address 2003:55::1/64interface FastEthernet1/0 ipv6 address 2003:56::2/64BrainRT01# show interf status | i Gi1/0/(29|3[0-9]): Mostra o status de todas as portas do slot 1/0, no range 29-39. BrainGW01#show interf status | i Gi1/0/(29|3[0-9])Gi1/0/29 [SW010 G0/1] connected trunk a-full a-1000 10/100/1000BaseTXGi1/0/30 [SW011 G0/1] connected trunk a-full a-1000 10/100/1000BaseTXGi1/0/31 [SW01 G0/1] connected trunk a-full a-1000 10/100/1000BaseTXGi1/0/32 [SW01 G0/2] connected trunk a-full a-1000 10/100/1000BaseTXGi1/0/33 [SW02 G0/1] notconnect 1 auto auto 10/100/1000BaseTXGi1/0/34 [SW02 G0/2] notconnect 1 auto auto 10/100/1000BaseTXGi1/0/35 [SW03 G0/1] connected trunk a-full a-1000 10/100/1000BaseTXGi1/0/36 [SW03 G0/2] connected trunk a-full a-1000 10/100/1000BaseTXGi1/0/37 [SW04 G0/1] connected trunk a-full a-1000 10/100/1000BaseTXGi1/0/38 [SW04 G0/2] connected trunk a-full a-1000 10/100/1000BaseTXGi1/0/39 [SW05 G0/1] connected trunk a-full a-100 10/100/1000BaseTXBrainGW01# show interf status | i _10_: Mostra todas as linhas que tem o número 10 com espaço antes e depois. Útil se você quer mostrar todas as portas de uma VLAN específica, no exemplo a VLAN 10. BrainGW01#show interf status | i _10_Gi1/0/7 [DHQSUP] connected 10 a-full a-1000 10/100/1000BaseTXGi1/0/10 CONEXAO COM UPS connected 10 a-full a-100 10/100/1000BaseTXGi1/0/11 CONEXAO AVPN E connected 10 a-full a-100 10/100/1000BaseTXGi1/0/12 TESTE TREND DDI monitoring 10 a-full a-1000 10/100/1000BaseTXGi1/0/13 CONEXAO COM CISCO connected 10 a-full a-100 10/100/1000BaseTXGi1/0/14 [PatchView-MASTER] connected 10 a-full a-100 10/100/1000BaseTXGi1/0/15 connected 10 a-full 100 10/100/1000BaseTXGi1/0/16 [ILO CallManager] notconnect 10 auto auto 10/100/1000BaseTXGi1/0/17 [ILO DESX02] connected 10 a-full a-100 10/100/1000BaseTXGi1/0/18 [ILO DESX01] connected 10 a-full a-100 10/100/1000BaseTXGi1/0/19 [ILO DHQVCENTE connected 10 a-full a-100 10/100/1000BaseTXGi1/0/20 [STORAGE A] connected 10 a-full a-100 10/100/1000BaseTXGi1/0/21 [STORAGE B] connected 10 full 100 10/100/1000BaseTXGi1/0/24 TESTE TREND DDI monitoring 10 a-full a-1000 10/100/1000BaseTXGi1/0/25 notconnect 10 full 1000 10/100/1000BaseTXGi1/0/27 [ROOTNET ETH0 – notconnect 10 full 1000 10/100/1000BaseTXBrainGW01# show inter status | i a-100_|_100_: Mostra as interfaces que estão trabalhando em 100 Mbps, configuradas estaticamente ou via auto negociação. BrainGW01#show inter status | i a-100_|_100_Gi1/0/6 CONEXAO ROTEADOR A connected trunk a-full a-100 10/100/1000BaseTXGi1/0/10 CONEXAO COM UPS connected 10 a-full a-100 10/100/1000BaseTXGi1/0/11 CONEXAO AVPN E connected 10 a-full a-100 10/100/1000BaseTXGi1/0/13 CONEXCO COM CISCO connected 10 a-full a-100 10/100/1000BaseTXGi1/0/14 [PatchView-MASTER] connected 10 a-full a-100 10/100/1000BaseTXGi1/0/15 connected 10 a-full 100 10/100/1000BaseTXGi1/0/17 [ILO DESX02] connected 10 a-full a-100 10/100/1000BaseTXGi1/0/18 [ILO DESX01] connected 10 a-full a-100 10/100/1000BaseTXGi1/0/19 [ILO VCENTE connected 10 a-full a-100 10/100/1000BaseTXGi1/0/20 [STORAGE A] connected 10 a-full a-100 10/100/1000BaseTXGi1/0/21 [STORAGE B] connected 10 full 100 10/100/1000BaseTXGi1/0/22 [DEFW01-SEC – E connected trunk full 100 10/100/1000BaseTXGi1/0/23 [DEFW01-PRI – E connected trunk full 100 10/100/1000BaseTXGi1/0/28 [DESWLAB01 – F0 connected trunk a-full a-100 10/100/1000BaseTXGi1/0/39 [SW05 G0/1] connected trunk a-full a-100 10/100/1000BaseTXGi1/0/40 [SW05 G0/2] connected trunk a-full a-100 10/100/1000BaseTXPo5 [INTERFACE G1/0/39 connected trunk a-full a-100BrainGW01# show interface | i line|Description|bits: Apresenta todas as interfaces, suas descrições, e os bits por segundo que estão fluindo através delas. BrainRT01#show interface | i line|Description|bitsFastEthernet0/0 is up, line protocol is up 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/secFastEthernet0/1 is up, line protocol is up Description: CONEXAO R1 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/secFastEthernet1/0 is up, line protocol is up Description: CONEXAO R2 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/secLoopback0 is up, line protocol is up 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/secLoopback10 is up, line protocol is up 5 minute input rate 0 bits/sec, 0 packets/sec 5 minute output rate 0 bits/sec, 0 packets/secBrainRT01# E ai? alguém tem o costume de usar expressão regular junto com os comandos “shows”? Até a próxima.
ICMPv6 e descoberta de vizinhança em IPv6
O ICMPv6, nova versão do protocolo ICMP para ser usado com o IPv6, possui todas as funcionalidades da versão anterior (v4) e ainda é encarregado de fazer o trabalho que anteriormente era realizado pelo ARP, RARP e IGMP. Ou seja, o ICMPv6 é fundamental para o funcionamento de uma rede IPv6, sem ele a rede não funciona (nada de bloquear completamente o ICMPv6 nos firewall hein!?!?). Como mencionado, o ICMPv6 é responsável por mapear o endereço físico para o endereço lógico (como fazia o ARP no IPv4), mapear o endereço lógico para o endereço físico (papel do RARP em redes IPv4) e gerenciar membros de grupos multicast (ex papel do IGMP). Mas não é só isso. O novo ICMP ainda é usado pelo MLD (Multicast Listener Discovery), NDP (Neighbor Discovery Protocol), para fazer o “Patch Discovery”, Mobility Support e autoconfiguração de endereçamento IP no processo “Stateless”. Na tabela abaixo temos os tipos de mensagens ICMPv6, com os códigos e suas respectivas descrições. Descoberta de Vizinhança O processo de descoberta de vizinhança IPv6 usa mensagens ICMP e endereços multicast “solicited node” para determinar o endereço da camada de enlace (2) de um vizinho no mesmo segmento, verificar a acessibilidade e monitorar dispositivos vizinhos. Neste processo podemos destacar 4 mensagens: Router Solicitation, Router Advertisement, Neighbor Solicitation e Neighbor Advertisement. Router Solicitation (RS): Quando um host deseja saber se existe um roteador (ou roteadores) disponível no segmento, o host envia uma mensagem deste tipo, onde a origem do pacote é o endereço do host (link local) e o destino é o grupo multicast “All Routers” (FF02::2). Router Advertisement (RA): Os roteadores enviam mensagens RA em resposta as mensagens RS, e também de tempos em tempos, desde que sejam configurados para isso (comportamento padrão em roteadores Cisco). Quando o anúncio RA é feito de forma automática a origem do pacote tem o IP da interface do roteador (link local) e o destino é o endereço multicast “All Nodes” (FF02::1). Quando a RA é em resposta a uma RS a origem é o endereço da interface do roteador e o destino é o endereço de origem da RS (OBS: Ao que parece, os roteadores Cisco sempre enviam RA para o endereço FF02::1). Neighbor Solicitation (NS): Mensagem que desempenha papel semelhante ao que fazia o ARP em redes IPv4. É enviada pelo host quando este quer determinar o endereço da camada de enlace de outro nó no mesmo segmento. A origem do pacote é o endereço IPv6 do host que está enviando a solicitação (ou :: durante a detecção de endereço duplicado) e o destino é o endereço multicast “solicited node” (FF02::1:FFxx:xxxx, onde os “x” correspondem aos bits finais do IPv6 a ser pesquisado). A mensagem NS também inclui o endereço da camada 2 do host de origem. Neighbor Advertisement (NA): É a mensagem enviada em resposta a uma NS. Também é enviada no caso de mudança de endereço IP d eum determinado host. Quando é gerado em resposta a uma mensagem NS a origem e destino são endereço unicast (host que está enviando a NA para o host que enviou o NS). No caso da mensagem NA gerada para anunciar a alteração de endereço, o destino é o grupo multicast “All Nodes” FF02::1. Na tabela abaixo temos as mensagens ICMPv6 usadas no processo de descoberta de vizinhança, com tipos, códigos e descrições. Podemos verificar as mensagens de Descoberta de Vizinhança montando uma estrutura simples, com dois roteadores. No primeiro (R1) configure manualmente o ip, como o comando ipv6 address 2002:DB8:1:1::1/64) e no R2 deixe a configuração automática (ipv6 address autoconfig). Assim que damos um no shut na interface do R2 ele envia as mensagens NS, NA, RA e RS. Para ver as mensagens ICMPv6, como na figura acima, use o comando debug ipv6 icmp. Livro IPv6 na Prática Bom, se você leu o post até aqui talvez esteja realmente interessado em IPv6. Então recomendaria o livro IPv6 na Prática, do Adilson Florentino. O livro trata de forma clara todo esse processo de vizinhança, icmpv6, endereçamento, roteamento e ainda conta com exemplos de configuração para a demonstração dos conceitos. Mais informações sobre ICMPv6: – Funcionalidades Básicas IPv6 – ICMPv6 Packet Types and Codes – IPv6 Configuration Guide Até a próxima.
CCNA Exam Simulation Day
O Netfinders Brasil, através de seu novo portal de treinamento, estará promovendo no dia 24 de agosto um simulado para o CCNA. O simulado é online e gratuito, onde todos poderão participar e verificar o nível de conhecimento para a prova. Além disso, quem fizer uma doação de qualquer valor, ainda participará do sorteio de um voucher para o exame 200-120 (CCNA). Todos que doarem (qualquer quantia) terão acesso exclusivo ao Portal Netfinders, onde poderão usar os foruns de aulas para sanar dúvidas em relação aos tópicos abordados na prova. O voucher será entregue para quem atingir a maior pontução no simulado, e em caso de empate uma atividade prática será enviada aos classificados, a fim de definir o vencedor. Veja todas as informações no blog Netfindersbrasil. Até a próxima.
Atualizando o Cisco ASA sem parar os serviços
Quando temos um par de firewalls ASA trabalhando em modo Ativo-Backup, podemos fazer a atualização do software sem grande impacto no funcionamento da rede. O processo de atualização é o mesmo usado quando temos um equipamento trabalhando sozinho, mas se observarmos a ordem do script abaixo, podemos atualizar os dois equipamentos que estão em Ativo-Backup sem pararmos a rede. Atualizando um par de ASA (Ativo-Backup), sem interromper o tráfego. !Salve a config copiando o output do comando abaixoactive# more system:running-config!Transfira o novo software para o equipamento ativoactive# copy tftp://10.1.1.1/asa911-smp-k8.bin disk0:/asa911-smp-k8.bin!Transfira o novo software para o equipamento backupactive# failover exec mate copy /noconfirm tftp://10.1.1.1/asa911-smp-k8.bin disk0:/asa911-smp-k8.bin!Transfira o novo ASDM para o equipamento ativoactive# copy tftp://10.1.1.1/asdm-711.bin disk0:/asdm-711.bin!Transfira o novo ASDM para o equipamento backupactive# failover exec mate copy /noconfirm tftp://10.1.1.1/asdm-711.bin disk0:/asdm-711.bin!Verifique a configuração de bootactive(config)# configure terminalhostname(config)# show running-config boot system boot system disk0:/cdisk.bin boot system disk0:/asa841-smp-k8.bin!Mude a configuração de boot apontando os novos softwareshostname(config)# no boot system disk0:/cdisk.binhostname(config)# no boot system disk0:/asa841-smp-k8.binhostname(config)# boot system disk0://asa911-smp-k8.binhostname(config)# asdm image disk0:/asdm-711.bin!Salve a configuraçãoactive(config)# write memory!Reinicie o equipamento backupactive# failover reload-standby!Quando o equipamento backup voltar, passe ele para ativo e reinicie o equipamento que era o ativo.active# no failover activeactive# reload Após reiniciar o ASA backup você pode acomapnhar o status com o comando show failover. Aguarde até ele estar pronto (Standby Ready) antes de torná-lo ativo. E uma observação importante: Neste exemplo estamos considerando que um upgrade onde não é preciso migrar a configuração. Mais informações neste link. Até a próxima.
Utilitários de rede do Windows 7
Aqui no blog costumamos falar de rede sempre olhando para o lado dos equipamentos de rede (basicamente Cisco), mas nesse post vamos mostrar os “utilitários de rede” que o Windows 7 possui. Acredito que a maioria, se não todos, estão disponíveis nas demais versões do Windows, mas como usei o Windows 7 para validação, falemos dele. Get MAC Address (Getmac.exe): Este comando lista as placas de rede e os respectivos MAC Address. Vivendo e aprendendo né?! Agora que conheci não acredito que passei a vida toda usando ipconfig /all para ver o MAC da placa de rede do computador. Hostname (Hostname.exe): Mostra o nome do host. Comando já mais conhecido, imagino. IP Configuration Utility (Ipconfig.exe): Provavelmente o segundo comando mais comum e utilizado desta lista. Este comando mostra o IP, Máscara e Gateway de todas as placas de rede do computador. Temos a opção ipconfig /all, que lista todas as informações de rede (DHCP Server, descrição da placa, DNS Server, MAC Address, …) das placas de rede. Também usamos o ipconfig para atualizar a configuração de DHCP (ipconfig /release e ipconfig /renew) e de DNS (ipconfig /flushdns). Name Server Lookup (Nslookup.exe): Utilitário para troubleshoot de problema relacionados a DNS. Ele mostra quem é o servidor DNS que está sendo utilizado para a resolução de nomes e também nos permite definir outro DNS Server para teste. Este utilitário merecia um post só para ele… também permite a checagem de MX (entra para email no servidor DNS). Net services commands (Net.exe): Comando com diversas opções, que pode listar informações da conta do usuário logado, compartilhamentos do computador, serve ainda para parar e iniciar serviços (DHCP Client, Net Logon) mapear e desmapear unidades de rede entre outros. Netstat (Netstat.exe): Mostra as conexões TCP ativas, portas utilizadas, estatísticas ethernet (netstat -e), portas que estão escutando (netstat -a), estatísticas por protocolo (netstat -s) e a tabela de rotas do computador (netstat -r). Network Command Shell (Netsh.exe): Mostra e permite mudar as configurações de rede do computador local ou remoto. Tem um vasta lista de opções, e até parece CLI de equipamento de rede. PathPing (Pathping.exe): Comando que combina as funções do Ping e do Tracert (outro que eu não conhecia até recentemente…). O comando pathping envia pacotes para cada roteador no caminho até o destino final durante um determinado período e depois calcula os resultados com base nos pacotes retornados de cada salto. Use a opção -n para não resolver nome, -R para ver se cada roteador no caminho suporta RSVP, -h para definir o número máximo de saltos até o destino. Ainda temos outras opções. TCP/IP NetBIOS Information (Nbtstat.exe): Usado para mostrar informações relacionadas ao NetBIOS (tabela de nomes, cache, e outros) do computador local ou remoto. O NetBIOS é uma espécie de DNS. TCP/IP Ping (Ping.exe): Agora o nosso campeão! Com certeza o comando mais usado e conhecido desta lista. Serve para verificar a conectividade com um host remoto utilizando o protocolo ICMP. Mede o tempo de resposta em milissegundos e possui várias opções (-l para definir o tamanho do pacote, -t para pingar indefinidamente, …). TCP/IP Route (Route.exe): O comando route serve para mostrar e editar as rotas na tabela de rotas do computador. TCP/IP Traceroute (Tracert.exe): O tracert mostra o caminho até um determinado host, mostrando o tempo necessário para alcançar cada salto. Basta uma olhada na Internet para encontrar todas as informações sobre estas ferramentas/comandos do Windows, inclusive com as opções de uso. Até a próxima.
OpenSSL Heartbeat e equipamentos Cisco
Ao que parece o OpenSSL Heartbeat é a vulnerabilidade do momento, afetando produtos que utilizam o OpenSSL da versão 1.0.1 até 1.0.1f. Esta vulnerabilidade permite que o invasor leia até 64KB de memória da vítima sem qualquer informação privilegiada ou credenciais, usando as respostas Heartbeat do OpenSSL. Até o momento sabe-se que os seguintes produtos Cisco são afetados por esta vulnerabilidade: Cisco AnyConnect Secure Mobility Client for iOS [CSCuo17488] Cisco Desktop Collaboration Experience DX650 Cisco Unified 7800 series IP Phones Cisco Unified 8961 IP Phone Cisco Unified 9951 IP Phone Cisco Unified 9971 IP Phone Cisco TelePresence Video Communication Server (VCS) [CSCuo16472] Cisco IOS XE [CSCuo19730] Cisco Unified Communication Manager (UCM) 10.0 Cisco Universal Small Cell 5000 Series running V3.4.2.x software Cisco Universal Small Cell 7000 Series running V3.4.2.x software Small Cell factory recovery root filesystem V2.99.4 or later Cisco MS200X Ethernet Access Switch Cisco Mobility Service Engine (MSE) Cisco TelePresence Conductor Cisco WebEx Meetings Server versions 2.x A Cisco disponibilizará o update de software para os produtos afetados gratuitamente, e já foi criada uma assinatura para o IPS. Instruções para mitigação deste problema podem ser encontrados neste post do Cisco Sourcefire Vulnerability Research Team, e produtos Meraki não foram afetados. Todas as informações sobre esta vulnerabilidade, com produtos afetados, não afetados, sob investigação, informações de como conseguir o update estão no Cisco Security Advisory. Até a próxima.