Baixe o app para aproveitar ainda mais
Prévia do material em texto
PROGRAMAÇÃO EM AMBIENTES DE REDES DE COMPUTADORES Raiza Artemam de Oliveira Ferramentas básicas de administração de redes Objetivos de aprendizagem Ao final deste texto, você deve apresentar os seguintes aprendizados: � Identificar ferramentas para configuração de redes. � Descrever ferramentas de diagnóstico de redes. � Aplicar ferramentas de estatística de redes. Introdução Quando os primeiros computadores surgiram na década de 1970, eram centralizados com terminais conectados a mainframes, momento em que não havia um gerenciamento de redes. Nos anos de 1980, deu-se início às redes locais com alguma velocidade de conexão entre as máquinas, surgindo, com isso, os primeiros sistemas de gerenciamento de redes (KUROSE; ROSS, 2007). Com o nascimento da World Wide Web, ou internet, como conhecemos hoje, as redes alcançaram grandes distâncias e se tornaram cada vez mais complexas, com mais máquinas conectadas. Atualmente, com o avanço e a popularização da internet das coisas (IoT), quase tudo está conectado à internet, tornando o serviço de gerenciar e garantir o correto funcionamento das redes essencial e complexo. Gerenciamento de redes consiste no controle de qualquer objeto passível de monitorar em uma estrutura de recursos físicos e lógicos de uma rede e que podem ser distribuídos em diversos ambientes geografi- camente próximos ou não, a fim de satisfazer às exigências operacionais de desempenho e de qualidade de serviços em tempo real. O modelo de redes open systems interconnection (OSI) define cinco áreas de gerenciamento de redes, que formam o acrônimo FCAPS: (i) gerenciamento de falhas (fault); (ii) gerenciamento de configuração (configuration); (iii) gerenciamento de contabilidade (account); (iv) gerencia- mento de desempenho (performance); e (v) gerenciamento de segurança (security) (TANENBAUM, 2003). Neste capítulo, você conhecerá algumas ferramentas para auxiliar no processo de gerenciamento de redes. Ferramentas para configuração de redes Uma rede de computadores é composta por um conjunto de hosts, os quais podem ser computadores, celulares ou qualquer dispositivo eletrônico capaz de se conectar à rede (KUROSE; ROSS, 2007). Além do hardware, para que uma rede exista e funcione, é necessário que o software, a parte lógica, esteja configurado corretamente. Para que a rede funcione de modo correto, é preciso configurar parâmetros como o endereço internet protocol (IP) e as interfaces de saída, por meio de algumas ferramentas de configuração que podem ser aplicadas para auxiliar o processo de configuração. ifconfig A primeira ferramenta para configuração de redes que será abordada refere-se à ferramenta ifconfig, termo que compreende um acrônimo para interface configuration. Trata-se de uma das ferramentas mais utilizadas para configurar, adicionar, deletar e gerenciar as interfaces de rede do sistema. O comando ifconfig é utilizado para configurar interfaces de rede. Se nenhum argu- mento for informado, o ifconfig somente mostra o estado das interfaces correntemente definidas. Se um argumento interface for informado, ele mostra somente o estado da interface informada. De outra forma, ele assume que os parâmetros devem ser configurados (POGUE, 2015). A sintaxe para usar a ferramenta ifconfig é: ifconfig [interface] [opções | endereços] Ferramentas básicas de administração de redes2 E os principais parâmetros aceitos são: � -a: exibe todas as interfaces de rede, mesmo as desativadas; � -s: exibe uma lista curta de informações sobre as interfaces; � [interface]: nome da interface de rede a consultar; � up: flag para ativar a interface; � down: flag para desativar o driver da interface; � [-]arp: habilita ou desabilita (–) o uso do address resolution protocol (ARP) na interface; � [-]allmulti: habilita ou desabilita o modo promíscuo da interface; � mtu N: configura a Unidade Máxima de Transferência (MTU) da interface. Para Ethernet, é um valor entre 1.000 e 2.000, sendo o padrão 1.500; � netmask [endereço]: ajusta o valor da máscara de sub-rede da interface; � [-]broadcast [endereço]: configura o endereço de broadcast da interface; � hw [classe] [MAC]: configura o endereço media access control (MAC) da interface, se o driver do dispositivo suportar essa operação. A classe mais comum é ether (Ethernet). route Outra ferramenta importante para configuração de redes consiste na ferramenta route, por meio da qual é possível exibir e manipular a tabela de rotas de um host. Os comandos route add e route del podem ser usados, res- pectivamente, para incluir ou excluir uma rota na tabela de rotas (CLEMM, 2007). Na Figura 1, você pode observar uma topologia de rede com dois hosts conectados e roteadores entre eles, com três possíveis rotas entre os pacotes enviados do host A para o host B. Por meio do comando route, podemos alterar, inserir ou remover rotas — por exemplo, com o comando route del, é possível excluir a rota entre os hosts A e B que passam pelo roteador B. 3Ferramentas básicas de administração de redes Figura 1. Roteamento entre dois hosts. O comando route exibe a tabela de roteamento de uma rede, e sua principal aplicação consiste em configurar rotas estáticas para hosts ou redes especi- ficadas por meio de uma interface, após esta ter sido configurada por meio da ferramenta ifconfig. A ferramenta route aceita diversos parâmetros, como add, delete e change, e a sintaxe para utilizá-la é exibida a seguir: route [-f] [-p] [comando [destino] [mask máscara _ de _ rede] [gateway] [metric métrica]] [if interface]] Em que o parâmetro -f limpa a tabela de roteamento de todas as entradas que não são rotas de host. Se este parâmetro for utilizado em conjunto com um dos comandos add, change ou delete, a tabela ficará limpa antes da execução do comando. Ferramentas básicas de administração de redes4 Usamos o parâmetro -p com o comando add, e a rota especificada é empregada para inicializar a tabela de roteamento IP sempre que o protocolo TCP/IP é iniciado. Por padrão, as rotas adicionadas não são preservadas quando o transmission control protocol (TCP/IP) é iniciado (POGUE, 2015). Os comandos usados com a ferramenta route são: � add: adiciona uma rota; � change: modifica uma rota existente; � delete: exclui uma ou mais rotas; � print: imprime na tela uma ou mais rotas. O parâmetro destino especifica o destino de rede da rota. E o parâmetro mask máscara_de_rede é aplicado para especificar a máscara de rede associada ao destino de rede (KUROSE; ROSS, 2007). A máscara de sub-rede pode ser aquela apropriada para um endereço de rede IP, para uma rota de host ou 0.0.0.0 para a rota-padrão. Caso a máscara seja omitida, receberá o valor-padrão de 255.255.255.255. O gateway especifica o endereço IP do próximo salto ou o encaminha- mento por meio do qual é possível chegar ao conjunto de endereços definido pelo destino de rede e pela máscara de sub-rede. Para rotas de sub-redes conectadas localmente, o endereço de gateway é o endereço IP atribuído à interface que está conectada à sub-rede. Para rotas remotas, disponíveis entre um ou mais roteadores, o endereço de gateway é um endereço IP acessado diretamente atribuído a um roteador vizinho. O parâmetro metric define um valor numérico que indica o custo para a rota, usado durante a seleção entre várias rotas na tabela de roteamento que mais se aproximam do endereço de destino de um pacote que está sendo enca- minhado (CLEMM, 2007). Tal valor deve estar entre 1 e 9.999. Por padrão, a rota escolhida é a que tem a menor métrica, unidade capaz de indicar o número de saltos, a velocidade, a confiabilidade ou a taxa de transferência do caminho. O parâmetro if interface indica o índice da interface por meio do qual se chega ao destino. É possível usar valores decimais ou hexadecimais para o índice de interface. Quando o parâmetro if é omitido, determina-se a interface do endereço do gateway. 5Ferramentas básicas de administraçãode redes Ferramentas para diagnóstico de redes Redes de computadores podem apresentar defeitos — queda de um nó na rede, não funcionamento de aplicações como o esperado, pacotes não serem enviados —, situações em que passam a não funcionar de maneira satisfatória. Nesse cenário, é essencial poder contar com ferramentas que auxiliem a identificar os pontos críticos que afetam negativamente o desempenho da rede: para isso, existem várias ferramentas para diagnóstico de rede. O processo de diagnós- tico em uma rede de computadores constitui um processo analítico que visa a identificar e isolar o problema para que seja possível propor uma solução eficiente (FOROUZAN, 2008). A seguir, apresentamos algumas ferramentas importantes para o diagnóstico de redes. ping Trata-se de um utilitário que usa um protocolo chamado internet control message protocol (ICMP) para testar a conectividade entre hosts, o qual está localizado na camada de redes na arquitetura TCP/IP (KUROSE; ROSS, 2007). Tal protocolo permite que um roteador ou host destino reporte à estação de origem uma condição de erro no processamento de um datagrama, e sua função consiste exclusivamente em informar erros ao nível IP de origem. O comando ping está disponível nos principais sistemas operacionais, inclusive Windows e distribuições Linux. Seu funcionamento consiste no envio e recebimento de pacotes entre dois hosts. O ping envia um ECHO_REQUEST do protocolo ICMP e espera receber um ECHO_RESPONSE. Basicamente, trata-se de um sistema que envia um pequeno conjunto de dados para má- quinas conectadas a uma rede e calcula o tempo que esta leva para receber e responder a ele. Se o host de destino estiver ativo, uma resposta é devolvida ao host solicitante. A sintaxe para usar a ferramenta ping é apresentada a seguir: ping [-n] [-r] [-s tamanho _ do _ pacote] [-src IP] Host [número _ de _ solicitações] Em que o parâmetro -n especifica a saída numérica e o parâmetro -r contorna as tabelas de roteamento e envia diretamente para um host em uma rede conectada. Essa opção pode ser usada para efetuar ping de um host local por meio de uma interface que não tem uma rota através dela. O pa- râmetro -s tamanho_do_pacote especifica a quantidade de bytes de dados a serem enviados. Por padrão, o pacote enviado tem o tamanho de 56 Ferramentas básicas de administração de redes6 bytes, que, somado ao tamanho do cabeçalho do protocolo ICMP, resulta em 64 bytes de dados. O parâmetro -src IP aplica um endereço IP de interface da máquina informado como endereço de origem nos pacotes ping de saída. Geralmente, a saída do ping consiste no tamanho do pacote utilizado, o endereço do host destino, o número de sequência do pacote ICMP, o tempo de vida e a latência, com todos os tempos dados em milissegundos. Além da existência de um dispositivo conectado em si, o resultado de um ping possibilita obter informações sobre a qualidade da transmissão de dados, principalmente sobre a latência. nslookup Outra ferramenta importante para o diagnóstico de redes é a ferramenta nslookup (name system look up), que está presente nos sistemas operacionais Windows e Linux. Por meio dela, é possível obter informações sobre registros de domain name server (DNS) de um host ou domínio, que permitem diagnosticar eventuais problemas de configuração DNS (CLEMM, 2007). O comando nslookup mostra o nome e o endereço IP do servidor de nomes primário, exibindo um convite de comando para realizar consultas. Para solicitar as informações sobre o DNS de um domínio por meio do comando nslookup, basta usar a seguinte sintaxe: nslookup nome _ do _ host Por padrão, nslookup realiza consultas ao servidor DNS primário con- figurado na máquina. No entanto, é possível consultar um servidor DNS específico adicionando o símbolo - e o nome do servidor da seguinte forma: nslookup host – servidor _ DNS A ferramenta nslookup oferece diferentes modos de consulta: � set type=mx: permite recolher informações relativas aos servidores do serviço de mensagens de um domínio; � set type=ns: reúne informações relativas ao servidor de nomes associado ao domínio; � set type=a: coleta informações relativas a um guest (hóspede) da rede; 7Ferramentas básicas de administração de redes � set type=soa: exibe as informações sobre o responsável pelo domínio; � set type=cname: mostra as informações relativas ao pseudônimo; � set type=hinfo: quando estes dados são informados, exibe as informações relativas ao hardware e ao sistema operacional do guest. traceroute Trata-se de uma ferramenta de diagnóstico que rastreia a rota de um pacote por meio de uma rede de computadores que utiliza protocolos IP e ICMP, presente em grande parte dos sistemas operacionais. Seu funcionamento baseia-se no uso do campo TTL (time to live) do pacote IPv4 destinado a limitar o tempo de vida dele. Este valor é decrementado a cada vez que o pacote é encaminhado por um roteador. Ao atingir o valor zero, o pacote é descartado e o host que enviou a requisição recebe uma mensagem TIME_EXCEEDED por meio do protocolo ICMP. Pela manipulação do campo TTL, é possível receber essa mensagem de cada um dos roteadores no caminho do pacote (CLEMM, 2007). Quando a rede utiliza o protocolo IPv6 em vez do IPv4, então se utiliza o campo hop limit, equivalente ao campo TTL do IPv4. A sintaxe para utilizar essa ferramenta consiste em: traceroute [-hops saltos] [-num] [-port porta] [-src IP] Host [tamanho _ do _ pacote] Em que -hops configura o tempo de vida máximo (número máximo de saltos) usado nos pacotes de análise de saída. Por padrão, o número de saltos é 30. O parâmetro -num imprime na tela endereços de salto numericamente, em vez do modo simbólico e numérico, salvando uma consulta de endereço para nome do servidor de nomes para cada gateway localizado no caminho. O parâmetro -port configura o número da porta UDP base usado em análises. O comando traceroute depende de um intervalo de portas UDP abertas de base. Se uma porta UDP não estiver disponível, o parâmetro -port poderá ser usado para selecionar um intervalo de portas não utilizado. O parâmetro -src aplica o endereço IP informado como endereço de origem nos pacotes de análise de saída. Nos hosts com mais de um endereço IP, o sinalizador -src pode ser usado para forçar o endereço de origem para algo diferente do endereço IP da interface na qual o pacote de análise é enviado. Ferramentas básicas de administração de redes8 O único parâmetro obrigatório para o comando traceroute é o nome do host ou número do IP de destino. O parâmetro tamanho_do_pacote especifica o tamanho do pacote enviado, que, por padrão, é determinado com base na MTU da interface de saída. O comando traceroute determinará o comprimento do pacote de análise com base na MTU da interface de saída. Os pacotes de análise user datagram protocol (UDP) são configurados com um valor improvável de modo a impedir o processamento pelo host de destino. O comando traceroute envia três análises para cada salto e registra os seguintes campos: � número de saltos; � endereço de gateway; � tempo de rota de cada análise bem-sucedida. Caso as respostas da análise se originem de gateways diferentes, o resul- tado exibirá o endereço de cada sistema que estiver respondendo. Deve-se atentar para o fato de que o comando traceroute impõe um carregamento excessivo na rede, portanto deve ser usado principalmente para isolar falhas manualmente. É preciso evitar usar traceroute durante operações normais ou a partir de scripts automatizados. O comando traceroute exibirá o símbolo ! após o tempo de rota se o número de saltos for um ou menos. Um valor de tempo de vida máximo de um salto ou menos geralmente indica uma incompatibilidade no modo como as respostas do ICMP são manipuladas por diferentes software de rede. São outras anotações possíveis: � !H: host inatingível; � !N: rede inatingível; � !P: protocolo inatingível; � !S: falha narota de origem; � !F: fragmentação necessária. Mike Muuss foi o criador da ferramenta ping, dando a ela este nome, pois lembrava o som que o sonar emitia (DINCA, 2012). 9Ferramentas básicas de administração de redes Ferramentas para estatística de redes Muitas vezes, deve-se conhecer quais conexões TCP ativas estão abertas e sendo executadas em um host na rede, o que é possível por exemplo, pela ferramenta netstat, a qual lista o protocolo em uso, o endereço local e o número de porta, o endereço externo, o número de porta e o estado da conexão (CLEMM, 2007). Conexões TCP inexplicáveis podem configurar uma grande ameaça de segurança, já que podem indicar que algo ou alguém está conectado ao host local. Adicionalmente, as conexões TCP desnecessárias podem consumir recursos valiosos do sistema, reduzindo a velocidade de desempenho do host (KUROSE; ROSS, 2007). Dessa forma, a ferramenta netstat pode ser aplicada para examinar as conexões abertas em um host quando o desempenho parecer comprometido. A seguir, apresentam-se alguns exemplos de utilização do comando netstat e das opções de linha de comando disponíveis: � netstat -a: exibe todas as portas de conexões e de escuta. Cone- xões de servidor normalmente não são mostradas. Na Figura 2, há um exemplo de execução da ferramenta netstat. Figura 2. Saída do comando netstat -a no sistema operacional Windows. O estado LISTENING significa, esperando, na escuta, ou seja, aceitando conexões na referida porta. Já o estado ESTABLISHED refere-se à existência de uma conexão ativa na respectiva porta; Ferramentas básicas de administração de redes10 � netstat -e: exibe estatísticas sobre a interface Ethernet do com- putador, a qual é, normalmente, a placa de rede local, que conecta o computador à rede local. Na Figura 3, temos um exemplo da execução da ferramenta netstat com o parâmetro –e, que exibe informações sobre a interface Ethernet da rede, observando-se informações estatísticas sobre a rede, como o total em bytes de pacotes enviados e recebidos. Figura 3. Saída do comando netstat -e no sistema operacional Windows. telnet Por meio do telnet, um protocolo de rede que permite acesso a um host remoto, pode-se realizar um teste de comunicação de portas para avaliar possíveis bloqueios na sua estrutura de rede (CLEMM, 2007). A ferramenta telnet permite testes nas seguintes portas: � 21 : porta FTP; � 22: porta SSH; � 143: porta IMAP; � 587: porta SMTP; � 3306: porta MySQL. A sintaxe para utilizar a ferramenta telnet no sistema operacional Linux é: telnet [endereço _ ip] 11Ferramentas básicas de administração de redes Geralmente, o comando necessário para iniciar uma sessão telnet é telnet nome_do_servidor. O parâmetro nome_do_servidor indica o host remoto à qual se quer conectar, com a possibilidade de indicar o endereço IP — por exemplo, para se conectar ao host no endereço IP 189.85.146.42, basta digitar: telnet 189.85.146.42. Também se pode determinar a porta a ser utilizada enviando o endereço IP ou o nome do servidor pelo número de porta — por exemplo, para acessar a porta 200 do host 189.85.146.42, digita-se telnet 189.85.146.42 200. A seguir, apresentamos alguns comandos opcionais úteis da ferramenta telnet: � login usuário: permite o acesso de usuários devidamente creden- ciados à máquina especificada em telnet; � logout: desconecta o usuário da máquina remota; � dir: exibe o diretório da máquina conectada via telnet; CLEMM, A. Network management fundamentals. Cisco Press, 2007. 552 p. DINCA, L. M. Secret message in a ping: creation and prevention. In: INTERNATIONAL CONFERENCE ON SIGNAL PROCESSING, 11., 2012, Saint Malo; Mont Saint-Michel. Proce- edings [...]. Saint Malo; Mont Saint-Michel: SIP ’12; TELEINFO ’12, 2012. p. 32–37. FOROUZAN, B. A. Comunicação de dados e redes de computadores. 4. ed. Porto Alegre: AMGH; Bookman, 2008. 1134 p. KUROSE, J. F.; ROSS, K. W. Redes de computadores e a Internet: uma abordagem top-down. 3. ed. São Paulo: Pearson Addison Wesley, 2007. 634 p. POGUE, D. Windows 10: the missing manual. Sebastopol: O’Reilly, 2015. 690 p. TANENBAUM, A. S. Redes de computadores. 4. ed. Rio de Janeiro: Campus, 2003. 945 p. Ferramentas básicas de administração de redes12
Compartilhar