O comando show interface traz muitas informações que podemos utilizar para identificar problemas na interface, e até na rede. As vezes perdemos muito tempo atrás de uma informação que poderia ser encontrada analisando este comando. No início é um tanto confuso interpretar essas informações (giants, overrun, BW100000,…), mas para facilitar segue abaixo a explicação para a maioria dos dados apresentados pelo comando show interface em uma interface FastEthernet. FastEthernet0 is up: Indica que a interface (hardware) está ativa. Line protocol is up: Indica que a parte lógica (software/processos/protocolos) da interface está ok. MTU 1500 bytes: Tamanho máximo dos pacotes transmitidos pela interface. BW 100000 Kbit: Banda da interface em kilobits por segundos. Pode ser configurado com o comando bandwith. DLY 100 usec: Delay da interface em microsegundos. reliability 255/255: Confiabilidade da interface, onde 255 é o máximo (100%). Se existir problemas na camada 1 ou 2 a confiabilidade diminui (241/255, por exemplo). txload 1/255, rxload 1/255: Carga da interface, onde 255/255 indica 100% de utilização. O cálculo é feito baseado no valor indicado no comando bandwith (tx = transmitido e rx = recebido). Encapsulation ARPA: Tipo de encapsulamento utilizado. Keepalive set (10 sec): A cada 10 segundos um keepalive é enviado para verificar se a interface está “viva”. Full-duplex, 100Mb/s, 100BaseTX/FX: Velocidade, estilo e sentido (unidirecional ou bidirecional) da comunicação e tipo da interface. Last clearing of “show interface” counters never: Mostra quando foram zerados os contadores da interface (no exemplo acima, nunca). Queueing strategy: fifo: Tipo de fila utilizada na interface (Neste caso First In, First Out). Output queue 0/40, 0 drops; input queue 0/75, 0 drops: Número de pacotes na fila de entrada e saída. Se tiver mais pacotes do que a fila suporta, eles serão descartados, incrementando o contador “output drop”. 5 minute input rate 270000 bits/sec, 174 packets/sec: Média de bits e pacotes recebidos por segundos. Para mudar o tempo de coleta destas informações use o comando “load-interval” na interface. 5 minute output rate 1977000 bits/sec, 226 packets/sec: Média de bits e pacotes transmitidos por segundos. Para mudar o tempo de coleta destas informações use o comando “load-interval” na interface. runts: Pacotes descartados por não terem o tamanho mínimo (64 bytes, no caso do ethernet). giants(Jabber): Número de pacotes descartados por excederem o tamanho máximo. Por padrão são considerados giants pacotes ethernets maiores que 1518 . throttles: Número de vezes que o receptor na porta foi desativada, possivelmente devido à sobrecarga de buffer ou processador. input errors: Número total de erros, incluindo runts, giants, falta de buffer, CRC, frame, overrun e ignored counts. CRC: O Cyclic Redundancy Checksum aponta erros físicos normalmente, como configuração de velocidade e duplex diferentes (de um lado está configurado full-duplex e no outro equipamento half-duplex), por exemplo. Problemas desse tipo são verificados olhando o checksum do pacote recebido. frame: Número de pacotes recebidos que tem erro de CRC ou algum problema na estrutura do frame. overrun: Número de vezes que a interface não foi capaz de entregar os dados recebidos para o buffer, porque a taxa de entrada excedeu a capacidade do receptor. Muitas vezes ocorre por que a utilização da CPU está alta (acima de 80%). Se o número aumentar rapidamente verifique a utilização da CPU usando o comando “show processos CPU “. ignored: Número de pacotes recebido, mas ignorados, por problema no buffer. Excesso de tráfego, Broadcast storms e bursts of noise podem causar o incremento deste contador. watchdog: Número de vezes que aconteceu um “timer expired” no watchdog. Isso acontece quando é recebido um pacote maior que 2048. input packets with dribble condition detected: Informa quanto frame “pequenos” foram recebidos. Contador apenas informativo, já que o roteador aceita estes pacote (pacote maior que que os runts). packets output: Número total de pacotes transmitidos. bytes: Total de bytes transmitidos. underruns: Número de vezes que o transmissor enviou dados mais rápido do que o roteador poderia receber. Algumas interfaces podem não trazer esta informação. output errors: Todos de erros que impediram a transmissão dos datagramas para fora da interface. Observe que se somarmos os erros apresentados anteriormente o valor pode ser diferente deste (alguns erros não se enquadram em nenhum das categorias acima, mas são considerados pelo “output errors”). collisions: Número de mensagens retransmitidas por causa de colisão no meio (Ethernet). Colisões podem ser causadas pelo uso de hubs, excesso no cascateamento de switches, configuração divergente quanto a velocidade e duplex, entre outros. interface resets: Número de vezes que a interface foi resetada. Isto pode acontecer quando os pacotes que estão na fila para transmissão não são transmitidos em alguns segundos. Quase sempre ocasionado por congestionamento da rede. babbles: Indica quantas vezes o tempo para a transmissão de pacotes jabber expirou. late collision: Número de “late collision”, que são colisões que ocorrem após o a transmissão do preambulo. Podem ocorrer quando a rede é muito grande ou é grande a distancia entre os equipamentos. deferred: Este contador é incrementado quando a interface tem que esperar a confirmação do “carrier” para realizar a transmissão. lost carrier: Número de vezes que o “carrier” foi perdido durante a transmissão. no carrier: Número de vezes que o “carrier” não esteve presente para a transmissão. output buffer failures: Número de erros causados por falta de recursos na saída (transmissão). output buffers swapped out: Número de pacotes trocados com a memória DRAM. Até a próxima.
O início do Google
O pessoal é criativo…
Access-list dinâmica (Lock-and-Key)
Access-lists dinâmicas são ferramentas interessantes, que podem, por exemplo, nos permitir identificar o usuário antes de dar acesso a um determinado recurso (Lock-and-key). Com o Lock-and-key configurado, o usuário pode ter acesso a uma host ou rede que era bloqueado inicialmente. Para isso o usuário deve primeiro se autenticar no roteador, via Telnet. Após autenticado a ACL dinâmica é inserida na interface, permitindo o tráfego. Após o tempo limite configurado a ACL é removida, voltando ao cenário inicial (tráfego negado). Exemplo: Neste cenário o roteador BrainRT01 não permite nenhum tipo de tráfego, além do Telnet para sua Loopback. Apenas após o usuário do Host1 se autenticar ele poderá ter acesso ao Server1. ! Crie um usuário (ou quantos desejar), para autenticação local username brainwork password cisco123 ! ! Crie uma Loopback que será usada para autenticação. Também é possível usar a interface física. interface Loopback0 ip address 172.16.1.1 255.255.255.255 ! ! A primeira linha na ACL 101 permite apenas o Telnet para autenticação (loopback) access-list 101 permit tcp 1.1.1.0 0.0.0.255 host 172.16.1.1 eq telnet ! Entrada dinâmica na ACL 101, que permitirá acesso total, após autenticação ! Neste exemplo ela ficará ativa 30 minutos após a autenticação, com ou sem tráfego access-list 101 dynamic testlist timeout 30 permit ip any any ! Aplique a access-list 101 na interface por onde o usuário se conectará interface FastEthernet0/1 ip address 1.1.1.1 255.255.255.0 ip access-group 101 in ! line vty 0 4 password cisco ! Indique que a autenticação será local login local ! Após se autenticar será encerrado o Telnet, e se não tiver atividade a sessão é finalizada, após 5 minutos autocommand access-enable host timeout 5 Após configurar o roteador o usuário do Host1 deve dar um Telnet no IP 172.16.1.1, e informar o usuário e senha configurados. Imediatamente após a conexão o usuário é desconectado, afinal ele não deve ter acesso ao equipamento propriamente. Alias CUIDADO: Após habilitar o comando “autocommand access-enable host timeout 5” na line, o acesso ao equipamento deverá ser feito pela console!!! Com o usuário autenticado, a ACL dinâmica é adicionada e o usuário passará a ter acesso, como desejado. Access-list antes da autenticação: BrainRT01#sh access-lists Extended IP access list 101 10 permit tcp 1.1.1.0 0.0.0.255 host 172.16.1.1 eq telnet (53 matches) 20 Dynamic testlist permit ip any any permit ip host 1.1.1.2 any (12 matches) (time left 599) BrainRT01# Access-list depois da autenticação: BrainRT01#sh access-lists Extended IP access list 101 10 permit tcp 1.1.1.0 0.0.0.255 host 172.16.1.1 eq telnet (41 matches) 20 Dynamic testlist permit ip any any permit ip host 1.1.1.2 any (320 matches) (time left 599) BrainRT01# Informações sobre o impacto na performance, pré-requisitos e outros, podem ser encontrado nestes dois links: Link 1, Link 2. Até a próxima.
Recuperando a Pre-Shared-Key da VPN no PIX/ASA
As VPNs IPSec no PIX/ASA são criadas com base em grupos, e antes do usuário se autenticar o grupo deve ser autenticado. Para isso é configurado no servidor VPN (PIX/ASA) e no client (instalado no computador) o nome e a senha do grupo (Pre-Shared-Key). Por segurança, após a Pre-Shared-Key do grupo VPN ser configurada ela é criptografada e não é exibida no show running-config. Então o que fazer se você precisa configurar o client para um novo usuário e não sabe a senha do grupo? Observe que o show-running não exibe a Pre-Shared-Key configurada para o grupo VPNBRAIN: BrainFW01# show running-config : Saved : ASA Version 8.2(1) ! hostname BrainFW01 domain-name brainwork.com.br enable password 1fNd8BA3gg2DMlZx encrypted passwd 2KFQnbNIdI.2KYOU encrypted names !——- Parte da configuração foi omitida interface Ethernet0/0 nameif outside security-level 0 ip address 200.20.20.2 255.255.255.192 standby 200.20.20.3 ! interface Ethernet0/1 nameif inside security-level 100 ip address 172.16.0.1 255.255.0.0 standby 172.16.0.2 ! interface Ethernet0/2 nameif DMZ security-level 50 ip address 10.10.0.1 255.255.255.0 standby 10.10.0.2 !——- Parte da configuração foi omitida group-policy VPNBRAIN internal group-policy VPNBRAIN attributes dns-server value 172.16.0.10 172.16.0.11 vpn-tunnel-protocol IPSec split-tunnel-policy tunnelspecified split-tunnel-network-list value VPNBRAIN_splitTunnelAcl default-domain value brainwork.com.br username admin password VXSiyjWZ8nmp7vEk encrypted privilege 15 tunnel-group VPNBRAIN type remote-access tunnel-group VPNBRAIN general-attributes address-pool vpnpool default-group-policy VPNBRAIN tunnel-group VPNBRAIN ipsec-attributes pre-shared-key * ! class-map inspection_default match default-inspection-traffic ! ! policy-map type inspect dns migrated_dns_map_1 parameters message-length maximum 1024 policy-map global_policy class inspection_default inspect dns migrated_dns_map_1 inspect ftp inspect h323 h225 inspect h323 ras inspect rsh inspect rtsp inspect esmtp inspect sqlnet inspect skinny inspect sunrpc inspect xdmcp inspect sip inspect netbios inspect tftp ! service-policy global_policy global prompt hostname context Cryptochecksum:759f1e06b7f44fed061aeec19349a730 : end BrainFW01# A solução para esta necessidade é simples, a partir da versão 7 do PIX/ASA OS. Basta logar no equipamento onde a VPN está configurada, e no modo privilegiado digite more system:running-config. Este comando apresentará a running-config com as Pre-Shared-Keys exibidas em “clear text”. Exemplo do comando more system:running-config, com a Pre-Shared-Key sendo exibida. BrainFW01# more system:show running-config : Saved : ASA Version 8.2(1) ! hostname BrainFW01 domain-name brainwork.com.br enable password 1fNd8BA3gg2DMlZx encrypted passwd 2KFQnbNIdI.2KYOU encrypted names !——- Parte da configuração foi omitida interface Ethernet0/0 nameif outside security-level 0 ip address 200.20.20.2 255.255.255.192 standby 200.20.20.3 ! interface Ethernet0/1 nameif inside security-level 100 ip address 172.16.0.1 255.255.0.0 standby 172.16.0.2 ! interface Ethernet0/2 nameif DMZ security-level 50 ip address 10.10.0.1 255.255.255.0 standby 10.10.0.2 !——- Parte da configuração foi omitida group-policy VPNBRAIN internal group-policy VPNBRAIN attributes dns-server value 172.16.0.10 172.16.0.11 vpn-tunnel-protocol IPSec split-tunnel-policy tunnelspecified split-tunnel-network-list value VPNBRAIN_splitTunnelAcl default-domain value brainwork.com.br username admin password VXSiyjWZ8nmp7vEk encrypted privilege 15 tunnel-group VPNBRAIN type remote-access tunnel-group VPNBRAIN general-attributes address-pool vpnpool default-group-policy VPNBRAIN tunnel-group VPNBRAIN ipsec-attributes pre-shared-key BR@!N# ! class-map inspection_default match default-inspection-traffic ! ! policy-map type inspect dns migrated_dns_map_1 parameters message-length maximum 1024 policy-map global_policy class inspection_default inspect dns migrated_dns_map_1 inspect ftp inspect h323 h225 inspect h323 ras inspect rsh inspect rtsp inspect esmtp inspect sqlnet inspect skinny inspect sunrpc inspect xdmcp inspect sip inspect netbios inspect tftp ! service-policy global_policy global prompt hostname context Cryptochecksum:759f1e06b7f44fed061aeec19349a730 : end BrainFW01# Outra opção é copiar a running-config para um TFTP Server (copy run ftp://172.16.0.20/running-config). A copia da running-config enviada para o servidor TFTP também apresentará a Pre-Shared-Key em “clear text”. Mais informações no site da Cisco. Até a próxima.
10 anos do MSN
O programa de mensagens instantâneas da Microsoft é o software mais popular da categoria no Brasil, e no dia 22 de julho completou 10 anos de vida. O MSN, ou Windows Live Messenger, como é chamado atualmente, conta com mais de 330 milhões de usuários, tem integração com o Hotmail, permite chamadas de voz e vídeo e ainda jogos online. Todas essas funcionalidades foram adicionadas ao longo dos anos, uma vez que em 1999 o programa era utilizados apenas para troca de mensagens. Parabéns (atrasado) MSN!!! Até a próxima.
Salvando a configuração no PC
Acho que todo mundo sabe a importância de fazer backups periódicos das configurações dos equipamentos de rede. Com esta prática podemos voltar as configurações rapidamente, caso um problema ocorra, diminuindo consideravelmente o downtime da rede. A maneira mais fácil de salvar as configurações é através dos emuladores de terminais, como o Hyper Terminal e Tera Terminal. Com eles podemos fazer o backup sem a necessidade de um TFTP Server. Segue abaixo o procedimento para fazer o backup, utilizando o Hyper Terminal (apesar de não ser meu software favorito, ele vem com o Windows…). 1°)Abra o Hyper Terminal (Iniciar > Todos os Programas > Acessórios > Comunicações > Hyper Terminal), e de um nome qualquer para a conexão (brainwork, por exemplo). 2°) Na tela “Conectar-se”, especifique como será realizada a conexão. Para o acesso via Telnet, selecione “TCP/IP (Winsock)”, no campo “Conectar-se usando:”.Também poderíamos fazer o acesso via console ou SSH. 3°) Em seguida, coloque o IP do equipamento, já que vamos acessar via Telnet. 4°) Faça o login no equipamento, usando o seu usuário e senha. No modo de configuração privilegiado (#) digite “terminal length 0”. Isto fará com que o output dos comandos seguintes sejam exibidos sem interrupções. 5°) Em seguida vá ao menu “Transferir” e clique na opção “Capturar texto…”. Escolha um local e digite um nome para o arquivo de backup que será gerado, e clique em “Salvar”. 6°) Após clique em “Iniciar”. 7°) De volta ao equipamento, digite “show run”, e toda a saída do comando mostrada na tela será gravada. 8°) Vá novamente ao menu “Transferir” e clique na opção “Capturar texto…”, mas desta vez selecione “Parar”. Basta ir no local que você indicou no item 5 para verificar que o backup foi gerado corretamente. Outras informações no site da Cisco. Até a próxima.