Predefinição:RCO 1110232 2020-2

De MediaWiki do Campus São José
Revisão de 15h51min de 14 de abril de 2021 por Eraldo (discussão | contribs) (→‎Objetivos)
Ir para navegação Ir para pesquisar

Professor

Professor: Eraldo Silveira e Silva
Email: eraldo@ifsc.edu.br
Atendimento paralelo: a definir

IMPORTANTE: o direito de recuperar uma avaliação em que se faltou somente existe mediante justificativa reconhecida pela coordenação. Assim, deve-se protocolar a justificativa no prazo de 48 horas, contando da data e horário da avaliação, e aguardar o parecer da coordenação. O não cumprimento desse procedimento implica a impossibilidade de fazer a recuperação, e assim a reprovação na disciplina.

Plano de Ensino

Atenção: ver forma de avaliação no SIGAA

Objetivos e Conhecimentos conforme PPC

Objetivos

(1) Caracterizar e classificar as redes de computadores.
(2) Utilizar e configurar aplicações cliente e aplicativos de rede da Internet, identificando as funcionalidades dos protocolos utilizados.
(3) Identificar as funcionalidades e a abrangência dos protocolos da arquitetura Internet (TCP/IP).
(4) Planejar e configurar redes e sub-redes IP;

Conhecimentos

(1) Componentes de uma rede de computadores: aplicações, hosts, roteadores, enlaces;
(2) Comutação de pacotes;
(3) Aplicações de rede: Web, DNS, FTP, SSH;
(4) Protocolos de transporte e portas utilizadas pelas aplicações.
(5) Endereçamento de redes IP e sub-redes;
(6) Roteamento estático de redes IP;

Apostilas

ATENÇÂO: Estamos em fase de atualização desta apostila.

Proposta de Cronograma de Semanas/Aulas

9/11/20: Aula Inicial

Objetivos

  • Recepção: Apresentação da disciplina, plano de aula, laboratórios e métodos de avaliação.
  • Parte Teórica: Introdução a Redes de Computadores [slides]
    • Um exemplo de Rede ou de rede de Redes: a Internet
  • Parte Prática: Laboratório 0 (preparação da Máquina Virtual com o Simulador de Rede Imunes)

Laboratório 0

Laboratório 0: Instalação de VirtualBox e do Imunes'
  • Para realizar os roteiros em casa deve-se utilizar o VirtualBox e uma máquina virtual pré-configurada com todo o ferramental necessário:
    1. Baixe e instale o VirtualBox;
    2. Baixe a máquina virtual e salve em um diretório qualquer de sua máquina;
    3. Acesse o diretório onde salvou o arquivo Redes.ova e dê duplo clique sobre o mesmo;
    4. Irá abrir um janela do VirtualBox com a opção de Importar Appliance Virtual, deixe todas as opções padrão e clique em Importar;
    5. Irá abrir outra janela do VirtualBox: Importando Appliance...;
    6. Ao terminar sua máquina virtual estará pronta para uso. Usuário: aluno, senha: aluno.

16/11/20: Aula Inicial

Objetivos

25/11/20: Conceitos Básicos de Redes

Objetivos

Objetivos

Geral:Caracterizar e classificar as redes de computadores.

  • Conceito de rede de computadores (revisão)
  • A Internet como exemplo: visão geral (revisão)
  • Comutação de Circuitos X Pacotes
  • Componentes de uma rede de pacotes: computadores, roteadores, switches.
  • Redes LAN, WAN e MAN
  • Enlaces e topologias
  • Redes de Comutação de Pacotes: quadros,pacote, endereçamento MACxIP
  • Taxa de Transmissão, Vazão, Bandwidth e Retardo

Ver tarefa e apostila no SIGAA

AULA 2/11/20

Objetivos

Após este laboratório o aluno deverá ser capaz de:

  • Verificar a configuração de interfaces de rede de um hospedeiro usando a ferramenta ifconfig, identificando:
  • O endereço de hardware da interface (endereço MAC);
  • O endereço IPv4 e IPv6 da Interface com as suas máscaras de rede;
  • Testar a conectividade entre dois hospedeiros usando a ferramenta ping e ganhar insight em relação aos atrasos na rede;
  • Observar a rota de pacotes IP entre dois hospedeiros usando a ferramenta traceroute;
  • Capturar pacotes de uma interface usando a ferramenta wireshark.

Ferramentas de Apoio

  • ifconfig
  • Ping
  • traceroute
  • wireshark (se der tempo)

Link Laboratório 1

https://wiki.sj.ifsc.edu.br/index.php/Professores:RoteirosLabsANP

LabsRedesSubs

Outros

https://www.rapidtables.com/convert/number/ascii-to-binary.html


AULA 16/12/20

Objetivos

Objetivos

Após este laboratório o aluno deverá ser capaz de:

  • utilizar a ferramenta wireshark para captura de pacote:
    • funções básicas de filtragem na captura e no display;
    • verificação de estruturas de pacotes;
  • consolidar o conceito de protocolo e de camadas de protocolos através da análise de troca de pacotes com ping e traceroute usando:
    • as janelas com detalhes dos pacotes e encapsulamentos;
    • a opção de flow graph para visualizar as trocas de mensagens.
Laboratório 2 - Wireshark e encapsulamento

Laboratório 2

Objetivos

Após este laboratório o aluno deverá ser capaz de:

  • utilizar a ferramenta wireshark para captura de pacote:
    • funções básicas de filtragem na captura e no display;
    • verificação de estruturas de pacotes;
  • consolidar o conceito de protocolo e de camadas de protocolos através da análise de troca de pacotes com ping e traceroute usando:
    • as janelas com detalhes dos pacotes e encapsulamentos;
    • a opção de flow graph para visualizar as trocas de mensagens.

Sobre o analisador Wireshark

O analisador de pacotes exibe os conteúdos de todos os campos dentro de uma mensagem de protocolo. Para que isso seja feito, o analisador de pacotes deve “entender” a estrutura de todas as mensagens trocadas pelos protocolos.

Suponha que estamos interessados em mostrar os vários campos nas mensagens trocadas pelo protocolo HTTP na Figura 5. O analisador de pacotes entende o formato dos quadros Ethernet, e desta forma pode identificar o datagrama IP dentro de um quadro. Ele também entende o formato do datagrama IP, para que ele possa extrair o segmento TCP dentro do datagrama IP. Ele entende a estrutura do segmento TCP, para que possa extrair a mensagem HTTP contida no segmento. Finalmente, ele entende o protocolo HTTP e então, por exemplo, sabe que os primeiros bytes de uma mensagem HTTP contém a cadeia “GET”, “POST” ou “HEAD”.

Nós utilizaremos o sniffer Wireshark (http://www.wireshark.org) para estes laboratórios, o que nos permite exibir os conteúdos das mensagens sendo enviadas/recebidas de/por protocolos em diferentes camadas da pilha de protocolos. Tecnicamente falando, Wireshark é um analisador de pacotes que pode ser executado em computadores com Windows, Linux/UNIX e MAC.

É um analisador de pacotes ideal para nossos laboratórios, pois é estável, tem uma grande base de usuários e é bem documentado incluindo um guia de usuário (http://www.wireshark.org/docs/wsug_html/), páginas de manual (http://www.wireshark.org/docs/man-pages/), e uma seção de FAQ detalhada (http://www.wireshark.org/faq.html), funcionalidade rica que inclui a capacidade de analisar mais que 500 protocolos, e uma interface com o usuário bem projetada. Ele funciona em computadores ligados a uma Ethernet para conectar-se à Internet, bem como protocolos ponto a ponto, tal como PPP.

OBS: Se o wireshark estiver instalado em sua máquina, para chamá-lo a partir de um terminal deve fazer:

 sudo wireshark

ETAPA 1: Identificando os campos da interface do Wireshark

Quando você executar o programa Wireshark, a interface com o usuário exibida na Figura abaixo aparecerá. Inicialmente, nenhum dado será apresentado nas janelas. A interface do Wireshark tem seis componentes principais:

  1. Os menus de comandos são localizados no topo da janela. Por enquanto, interessam apenas os menus File e Capture. O menu File permite salvar dados de capturas de pacotes ou abrir um arquivo contendo dados de capturas de pacotes previamente realizadas, e sair da aplicação. O menu Capture permite iniciar uma captura de pacotes;
  2. A barra de ferramentas contém os comandos de menu que são mais frequentemente utilizados. Há atalhos para abrir ou salvar dados de captura de pacotes e para iniciar ou parar uma captura de pacotes;
  3. Abaixo da barra de ferramentas, está o campo de filtragem de pacotes exibidos. Nele podem ser digitados nome de protocolo ou outra informação apresentada na janela de listagem de pacotes. Apenas os pacotes que correspondem ao filtro são exibidos;
  4. A janela de listagem de pacotes apresenta um resumo de uma linha para cada pacote capturado, incluindo o número do pacote (atribuído pelo Wireshark; este não é o número do pacote contido no cabeçalho de qualquer protocolo), o tempo que o pacote foi capturado, os endereços fonte e destino do pacote, o tipo de protocolo, e informação específica do protocolo contida no pacote. A lista de pacotes pode ser ordenada conforme qualquer uma destas categorias clicando no nome de uma coluna correspondente. O campo tipo do protocolo lista o protocolo de mais alto nível que enviou ou recebeu este pacote, i.e., o protocolo que é a fonte ou o último sorvedouro para este pacote;
  5. A janela de detalhes de cabeçalho de pacotes fornece detalhes sobre o pacote selecionado na janela de listagem de pacotes. Para selecionar um pacote, basta clicar sobre ele com o botão esquerdo do mouse na janela de listagem de pacotes. Os detalhes apresentados incluem informações sobre o quadro Ethernet e o datagrama IP que contém o pacote. A quantidade de detalhes exibida pode ser expandida ou contraída. Se o pacote foi carregado sobre TCP ou UDP, detalhes correspondentes também são apresentados, os quais também podem ser contraídos ou expandidos. Finalmente, detalhes sobre o protocolo de mais alto nível que enviou ou recebeu este pacote também são apresentados;
  6. A janela de conteúdo de pacotes mostra o conteúdo inteiro do quadro capturado, nos formatos ASCII e hexadecimal.

Figura 3 - Interface com o usuário do Wireshark

ETAPA 2 - Verificando pacotes do ping (ICMP REQUEST/REPLY))

  1. Inicie o navegador web;
  2. Inicie o Wireshark. Inicialmente as janelas estarão vazias, pois não há captura de pacotes em progresso;
  3. Para iniciar uma captura de pacotes, selecione o menu Capture e depois Interfaces. Provavelmente sua interface de rede será a eth0.
  4. Isso faz com que a janela de interfaces de rede disponíveis seja apresentada (Figura 4);
    Figura 4 - Interfaces de rede no Wireshark
  5. O botão Start da interface eth0 deve ser selecionado. Na Figura 4, no Wireshark foi selecionada a interface wlan;
  6. Como nada está acontecendo na rede, a janela apresenta o conteúdo vazio;
  7. Execute um comando ping (endereço na saída da nossa rede - ver aula anterior):
      ping 200.237.201.153
    
  8. Ao voltar para a janela do Wireshark, houve a captura de todos os pacotes envolvidos no process;
  9. Antes de continuar, vamos parar a captura de pacotes e trabalhar com o que temos. Basta clicar em Capture e depois em Stop;
  10. Para testar as capacidades de filtragem, vamos inserir a cadeia “icmp” (sem as aspas e em minúsculo) no especificação do filtro de exibição e depois selecionar Apply (ou Aplicar). Observe que somente os pacotes envolvidos no ping estão sendo mostrados. Os resultados obtidos devem ser similar a tela mostrada na Figura 5.
  11. Selecione a primeira mensagem ECHO REQUEST: as informações dos cabeçalhos do quadro Ethernet, do datagrama IP, do pacote ICMP aparecem na janela de cabeçalhos de pacotes. É possível ver os detalhes, expandido ou comprimindo os itens com um clique na seta ao lado deles.
  12. Selecione uma mensagem ECHO REPLY. Analise o pacote: endereço fonte, endereço destino etc;
  13. Saia do Wireshark.

Figura 5 - Tela Wireshark - Ping

Etapa 3

ATENÇÃO: ESTA ESTA DEVERÁ SER ENTREGUE NA FORMA DE TAREFA. VER SIGAA.

  1. Com Wireshark ativo (Abra-o novamente) e em modo captura, faça um "ping" para um site conhecido (você pode usar o nome: www.ifsc.edu.br por exemplo).
    1. Aplique um filtro icmp no display. Recorte a tela observada e indique os pacotes ICMP ECHO REQUEST. Discuta quem são os endereços IP e MAC que aparecem no pacote IP e Frame Ethernet.
    2. Aplique um comando Flow Graph e mostre a troca de mensagens do ping através de um recorte da tela;
    3. Encerre e execute novamente o wireshark. Através do menu captura crie um filtro para captura de pacotes icmp que SOMENTE saem da sua máquina (ver ip.src). Faça um recorte das telas de criação do filtro (mostrando o filtro).
    4. Faça uma captura usando o filtro, recorte a tela e mostre os resultados.
  2. Faça uma captura de sua escolha usando de forma combinada filtros de captura e de display. Por exemplo, mostre somente pacotes originados e/ou destinados a um determinado host (ip.addr == 192.168..., ip.src, ip.dst).


AULA 23/12/20

Objetivos

  • Finalização do Laboratório de Wireshark
  • Avaliação (?)

AULA 3/2/2021

LINK PARA AULA SÍNCRONA

https://conferenciaweb.rnp.br/webconf/redes-de-computadores-tecnico-subsequente-em-telecomunicacoes

LINK PARA SLIDES

OBJETIVOS

ESTUDO DA CAMADA DE APLICAÇÂO

  • Conceito de Protocolo de Aplicação
  • Modelo Cliente Servidor
  • Introdução ao Protocolo HTTP
    • Formato e Comandos
    • Conexões Persistentes e Não persistentes


DESENVOLVIMENTO DA AULA

  • Apresentação de Slides (40 minutos) - Link SIGA A
  • Exemplos Wiki (15 minutos)
  • Proposição de Questionário
  • Discussão das Respostas do Questionário

Exemplos

Exemplo 1

Acessando e vendo uma página html no browser

  1. Acessar com o browser a URL http://tele.sj.ifsc.edu.br/~odilson/RED29004/RED29004.html
  2. Ver código fonte.
  3. Capturar pacotes e verificar captura.
  4. Acessar com telnet: telnet -4 tele.sj.ifsc.edu.br 80 GET /~odilson/RED29004//RED29004.html HTTP/1.0
  5. Acessar com telnet: telnet -4 tele.sj.ifsc.edu.br 80 GET /~odilson/RED29004//RED29004.html HTTP/1.1

Exemplo 2

Repetir os passos do exemplo http://tele.sj.ifsc.edu.br/~odilson/RED29004/RED29004_arq3.html

AULA 10/2/2021

LINK PARA AULA SÍNCRONA

https://conferenciaweb.rnp.br/webconf/redes-de-computadores-tecnico-subsequente-em-telecomunicacoes

LINK PARA SLIDES

Laboratório de HTPP Básico

ATENÇÃO: A execução deste laboratório deve ser reportada em um documento a ser postado no SIGAA. Para cada item faça um recorte da tela e comente o que foi feito.

Parte 1 - Observando o significado de um código/página HTML
  1. Edite em um editor de texto comum um código html (siga o exemplo a seguir mas faça diferente) e salve o arquivo como teste.html:
     <html><body><h1>REDES DE COMPUTADORES</h1>
     <p>Alo IFSC!</p>
     </body></html>
    
  2. Abra o arquivo usando o browser. Clicando sobre ele provavelmente já será mostrado.
  3. DESAFIO: Pesquise e coloque na página acima um link que ao ser clicado leva ao site: http://sj.ifsc.edu.br
Parte 2 - Funcionamento Básico do Comando GET no HTTP

Nesta etapa será realizado um acesso básico a uma página que está no IFSC SJ.

  1. Usando o browser (preferencialmente o firefox), acesse a URL: http://tele.sj.ifsc.edu.br/~odilson/RED29004/RED29004.html
  2. Acesse a direita, o menu no Firefox os 3 pontos e abra Desenvolvimento Web -> Console Web. Desabilite o cache e faça um refresh com F5.
  3. Recorte os comandos/respostas envolvidos no acesso a página e monte um diagrama de troca de mensagens indicando as mensagens envolvidas e as partes envolvidas. Faça um texto explicativo.
Parte 3 - Funcionamento Básico do Comando GET no HTTP - Página com múltiplos links

Nesta etapa será realizado um acesso básico a uma página que está no IFSC SJ.

  1. Usando o browser (preferencialmente o firefox), acesse a URL: http://tele.sj.ifsc.edu.br/~odilson/RED29004/RED29004_arq4.html
  2. Acesse a direita, o menu no Firefox os 3 pontos e abra Desenvolvimento Web -> Console Web. Desabilite o cache e faça um refresh com F5.
  3. Recorte os comandos/respostas envolvidos no acesso a página e monte um diagrama de troca de mensagens indicando as mensagens envolvidas e as partes envolvidas. Faça um texto explicativo sobre a sequência de acontecimentos e os principais campos envolvidos nos comandos/resposta.

AULA 17/2/2021

LINK PARA AULA SÍNCRONA

https://conferenciaweb.rnp.br/webconf/redes-de-computadores-tecnico-subsequente-em-telecomunicacoes

LINK PARA SLIDES

Ver siga

Exercícios em Aula

Estes exercícios serão executados pelo professor e poderão ser reproduzidos pelos alunos após a aula. O aluno deverá consultar a gravação da aula.

  1. Executar um comando:
      ping www.ifsc.edu.br
    

    e usando um analisador de pacotes verificar os pacotes DNS e ICMP gerados.

  2. Limpar o cache DNS com:
      sudo systemd-resolve --flush-caches
    
  3. Gerar uma resuisição DNS manualmente:
     host -t A  www.ifsc.edu.br
    

    Este comando pode ser acompanhado da captura de pacotes para verificar o acesso DNS.


AULA DIA 3/3/2021

Objetivos

Após esta o aluno deverá ser capaz de:

  • explicar o papel dos protocolos de transporte na arquitetura TCP/IP;
  • entender o papel das portas nos protocolos de transporte;
  • diferenciar os protocolos UDPs e TCPs;
  • descrever a estrutura pacote UDP e as principais características do UDP;
  • entender porque o TCP é orientado a conexão e descrever as principais características do TCP;
  • descrever a estrutura do pacote (segmento)TCP
  • usar o netcat para realizar testes de conexão/envio de dados em portas.

LINK PARA AULA SÍNCRONA

https://conferenciaweb.rnp.br/webconf/redes-de-computadores-tecnico-subsequente-em-telecomunicacoes

LINK PARA SLIDES

LABORATÓRIO BÁSICO UDP e TCP

  • Familiarizar-se com o UDP
  • Entender a estrutura do pacote UDP
  • Entender o conceito de portas
  • Entender o conceito de multiplexação

FERRAMENTA PARA ESTE LABORATÓRIO

  • netcat no Linux ou NetPal no Androide;
  • capturador de tela no Linux ou no Androide;
  • capturador de pacotes (computador do professor).
  • processador de texto para montar um mini relatório.

Fonte Base

Parte 1 - Fluxo único UDP

  1. O professor executará o programa netcat para escutar em uma porta UDP na máquina da CLOUD IFSC da seguinte forma.
    netcat -l -u 191.36.8.58 PORTA
  2. O aluno enviará uma mensagem UDP para a porta que o professor indicar. netcat -u IP_DEST PORTA
  3. O professor vai capturar pacotes pelo wireshark. O aluno deve recortar a tela para fazer um mini-relatório. Cada aluno recorta a tela das suas comunicações.
  4. Identifique e anote os seguintes dados na captura do wireshark:
      • IP FONTE e DESTINO (discuta quem são estes endereços)
      • PORTAS FONTE E DESTINO para ambas comunicações
      • Campo de protocolo no pacote IP
      • Campo de tamanho (anote o tamanho) e checksum no pacote (datagrama) UDP
      • O campo de dados no pacote UDP
  5. Foi identificado algum procedimento para conexão em nível de transporte?

Parte 2 - Fluxo único TCP


  1. O professor executará o programa netcat para escutar em uma porta UDP na máquina da CLOUD IFSC da seguinte forma.
    netcat 191.36.8.58 PORTA
  2. O aluno enviará uma mensagem UDP para a porta que o professor indicar. netcat IP_DEST PORTA
  3. O professor vai capturar pacotes pelo wireshark. O aluno deve recortar a tela para fazer um mini-relatório. Cada aluno recorta a tela das suas comunicações.
  4. Identifique e anote os seguintes dados na captura do wireshark:
      • IP FONTE e DESTINO (discuta quem são estes endereços)
      • PORTAS FONTE E DESTINO para ambas comunicações
      • Campo de protocolo no pacote IP
      • Campo de tamanho (anote o tamanho) e checksum no pacote (datagrama) UDP
      • O campo de dados no pacote UDP
  5. Foi identificado algum procedimento para conexão em nível de transporte?
  6. Identifique as mensagens associadas a conexão (mostre o recorte da tela).
  7. Identifique as mensagens associadas a transmissão dos dados.

AULA DIA 10/3/2021

Objetivos

Após esta o aluno deverá ser capaz de:

  • explicar o papel dos protocolos de transporte na arquitetura TCP/IP;
  • entender o papel das portas nos protocolos de transporte;
  • diferenciar os protocolos UDPs e TCPs;
  • descrever a estrutura pacote UDP e as principais características do UDP;
  • entender porque o TCP é orientado a conexão e descrever as principais características do TCP;
  • descrever a estrutura do pacote (segmento)TCP

Esta aula é continuação da aula anteirior. O professor vai usar slides para rever o assunto e vai propor: 1) Um questionário 2) Um mini relatório do laboratório da aula anterior.

AULA DIA 10/3/2021

Objetivos

Após esta o aluno deverá ser capaz de:

  • Citar as principais caracteŕisticas do protocolo IP;
  • Identificar os principais campos de um pacote IP;
  • Identificar a parte netid e hostid de um endereço IP
  • Saber observar uma tabela de roteamento em um host e o significado da mesma;
  • Diferenciar entrega direta de indireta de pacotes.

Instruções Adicionais para Aula

Para esta aula necessitaremos da ferramenta imunes. Alguns alunos já instalaram a ferramenta em suas máquinas. Estas instruções são para àqueles alunos que estão com dificuldade de instalar em suas máquinas. Para estes alunos será repassado o acesso a uma máquina virtual no IFSC através da ferramenta X2GO client.

Torna-se necessário então INSTALAR o X2GO client em suas máquinas. Este software pode ser instalado no WINDOWS. Basta baixar e instalar normalmente através deste link:

Você deve ter direito de instalação no computador.

AULA DIA 17/03/2021

VER SIGAA - Fazer tarefa

AULA DIA 24/03/2021

Interligação de duas redes através de um roteador

Baseado na wiki do Prof.Odilson

Objetivos

  1. Introdução ao mundo IP
  2. Verificação das configurações de interfaces de rede
  3. Verificação de tabelas de roteamento nos hospedeiros e no roteador
  4. Verificação de movimentação de pacotes (rotas) em roteadores

Usaremos como base a seguinte arquitetura de rede:

2 sub-redes com 1 roteador.png

Fonte Base

Procedimento 1 - Análise simples do Roteamento: Entrega Direta e Indireta

  1. Baixe o arquivo de configuração da rede, no terminal digite:
    wget -4 http://docente.ifsc.edu.br/odilson/RED29004/Roteador_com_duas_redes.imn
    
  2. Execute o Imunes.
    sudo imunes
    
  3. Carregue o arquivo de configuração:
    File >> Open >> /home/aluno/Roteador_com_duas_redes.imn
    
  4. Inicie a simulação no Imunes:
    Experiment >> Execute
    
    • Ignore (dismiss) a mensagem de erro apresentada. O erro é proposital.
    • Observe que a rede é composta de 4 PCs (pc1 - pc4), 1 roteador (router1) e 2 switchs. O roteador possui duas interfaces de rede, com seus respectivos IPs - camada 3, que interliga as duas sub-redes. Cada switch tem 3 interfaces, mas sem IPs, camada 2.
  5. Anotar os endereços de hardware (ou MAC) e IP de cada dispositivo na rede. No terminal de cada PC execute:
    ifconfig
    
  6. Observar, interpretar e anotar a tabela de roteamento em todos os hospedeiros pc1 - pc4 e no roteador router1. Identificar os default gateways em cada PC.
    route -n
    
  7. Observar, "provar" e anotar que pacotes indo do pc1 para pc2 são enviados diretamente para pc2, ou seja, entrega direta. Explique a entrega direta.
    1. Deixe o ping entre pc1 e pc2, em pc1 execute:
      ping 10.0.0.21
      
    2. No router1 capture pacotes com o Wireshark na interface eyh0:
      Clique com o botão direito do mouse sobre o Cliente1 >> Wireshark >> eth0...
      
    3. Observe que não há tráfego de pacotes no router1, portanto, entrega direta.
  8. Observar, "provar" e anotar que pacotes indo de pc1 para pc4 são encaminhados ao roteador e, em seguida, entregues ao destino, ou seja, entrega indireta. Explique a entrega indireta.

Procedimento 2 - Configuração básica de interface de rede

  1. No pc3 teste a conectividade com os demais PCs, por exemplo, fazendo pings para o pc1 e pc4:
    ping 10.0.0.20 
    ping 10.0.1.21
    
    • Perceba que não há conectividade, não há resposta aos pings, dado que a interface de rede do pc3 não está devidamente configurada.
  2. Assim sendo, configure a interface de rede no pc3.
    • Anote todos os comandos executados.
    1. Inicie configurando o IP com o comando ifconfig (man ifconfig). Dica: Observe a configuração de rede do pc4, que está na mesma sub-rede, e tente adaptá-la para o pc3.
      • Assim que a configuração do IP for bem sucedida o ping para o pc4 deverá funcionar.
    2. Tente "pingar" para o pc1. Ainda não haverá sucesso, pois não há um roteador devidamente configurado no pc3.
    3. Configure o roteador no pc3 com o comando route (man route).
      • Assim que a configuração do roteador for bem sucedida o ping para o pc1, e qualquer outro PC da rede, deverá funcionar.
    • O mesmo deverá ser capaz de "pingar" para qualquer outro PC ou ser "pingado".
  3. Execute o comando ping do pc3 para o pc4. Obteve sucesso? Se não corrija as configurações.
  4. Execute o comando ping do pc3 para o pc1. Obteve sucesso? Se não corrija as configurações.
  5. Execute o comando ping do pc2 para o pc3. Obteve sucesso? Se não corrija as configurações.

Referências adicionais


AULA DIA 31/03/2021

Laboratório do Prof.Odilson com algumas modificações

Tabelas Estáticas de Roteamento

Objetivos

  • Revisão do Endereçamento IP
  • Analisar o funcionamento de roteadores com tabelas estáticas de roteamento.
  • Verificar a entrega direta e indireta de pacotes.
  • Estabelecer rotas estáticas em uma rede simples.
  • Analisar loops em rede.

Nesta aula teremos que finalizar o procedimento 2 do lab anterior.

Revisão do Endereçamento IP

O endereçamento IPv4, conforme estudamos, possui 32 bits. Quando configuramos uma interface de um computador com este endereço fornecemos um endereço IP ACOMPANHADO de uma máscara: Exemplo: Se logarmos no computador imunes.sj.ifsc.edu.br e fizermos o comando

ip addr

Vamos observar que a interface eth0 está configurada forma:

   2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000
   link/ether 86:56:2f:f9:4c:07 brd ff:ff:ff:ff:ff:ff
   inet 191.36.8.59/26 brd 191.36.8.63 scope global eth0

Indicando claramente que o endereço IPv4 da interface eth0 é:

191.36.8.59/26

Vamos usar o site calculdor IP para observar a anatomia deste endereço.

RCO Enderecamento IP.png

  • Exercício (ver SIGA A)

Faça um análise do endereço 191.36.8.59/26 e responda:

  1. Entre no PC imunes.sj.ifsc.edu.br, liste as propriedades da interface eth0 e cole a tela aqui. Use o endereço IP e máscara para respondere as próximas questões.
  2. Faça uma tabela com cada número decimal (estão entre pontos) e o correspondente em bits.
  3. Como seria o endereço da rede correspondente a este número IP (191.36.8.59/26) em bits (ou seja, na representação binária) e em decimal?
  4. Quantos bits correspondem ao host id e ao net id?
  5. Quantos hospedeiros poderiam estar nesta rede?
  6. Como é representada a máscara de rede em bits e em decimal?
  7. Qual o endereço MAC da eth0? Mostre em hexadecimal e em bits.

AULA DIA 7/04/2021

Objetivos

  • Analisar o funcionamento de roteadores com tabelas estáticas de roteamento.
  • Verificar a entrega direta e indireta de pacotes.
  • Estabelecer rotas estáticas em uma rede simples.
  • Analisar loops em rede.

Laboratório do Prof.Odilson com algumas modificações

Tabelas Estáticas de Roteamento

Arquitetura de rede

Em todos os experimentos será utilizado como base a seguinte arquitetura de rede:

3 roteadores tab estaticas.png

Tabelas estáticas de roteamento

  1. Baixe o arquivo de configuração da rede, no terminal digite:
    wget -4 http://docente.ifsc.edu.br/odilson/RED29004/3_roteadores_tab_estaticas.imn
    
  2. Execute o Imunes.
    sudo imunes
    
  3. Carregue o arquivo de configuração:
    File >> Open >> /home/aluno/3_roteadores_tab_estaticas.imn
    
  4. Inicie a simulação no Imunes:
    Experiment >> Execute
    
    • Observe que a rede é composta de 3 PCs (pc0 - pc2) e 3 roteadores roteador (R0 - R2).
  5. Testes de conectividade de enlace e configuração do default gateway.
    1. Por exemplo, no pc0 execute o comando:
       ping 10.0.0.1
      
      Obteve sucesso? Sim ou não e por quê?
    2. Teste a conectividade do pc0 executando o comando:
       ping 10.0.10.1
      
      Obteve sucesso? Sim ou não e por quê? Qual foi o erro observado?
    3. Por exemplo, no pc0 execute o comando:
       ping 10.0.10.2
      
      Obteve sucesso? Sim ou não e por quê? Qual foi o erro observado?
    4. Configure o roteador padrão em todos os PCs. Adapte o comando exemplo do pc0 para todos os PCs:
       route add -net default gw 10.0.0.1
      
      • Com este comando estamos: i) adicionando (add) uma rota ii) do tipo rede (net) iii) rota padrão (default), que é equivalente a 0.0.0.0 iv) com o roteador (gw - gateway) v) 10.0.0.1 que identifica a interface do roteador, R0, diretamente conectado ao host pc0, no caso.
    5. Teste novamente a conectividade, no pc0 execute o comando:
       ping 10.0.10.1
      
      e
       ping 10.0.10.2
      
      Obteve sucesso? O comportamento foi o mesmo das tentativas anteriores? Sim ou não e por quê? Qual foi o erro observado?
    6. Com os ping do item anterior ativos (um a cada tempo) rode o Wireshark no R0 (clique com o botào direito do mouse sobre o R0 e em seguida no menu wireshark eth0).
      1. Qual a origem e destino dos pacotes? Explique?
      2. Qual a diferença no ping entre os dois itens?
  6. Iniciando o roteamento.
    1. Deixe o ping do do pc0 para o R1 e o wireshark - eth0 no R0 rodando e estabeleça uma rota no roteador R1 com o comando:
       route add -net 10.0.0.0/24 gw 10.0.10.1
      
      O que ocorreu com o ping e o wireshark? Por quê?
      • Com este comando estamos: i) adicionando (add) uma rota ii) do tipo rede (net) iii) para a rede 10.0.0.0/24 iv) com o roteador (gw - gateway) v) 10.0.10.1 que identifica a interface do roteador, R0, diretamente conectado ao roteador R1.
    2. Em todos os roteadores crie rotas para todas as redes. Em cada roteador deve-se criar 3 rotas, para as sub-redes "distantes", não diretamente conectadas. Lembre-se que os enlaces diretos já criam automaticamente rotas para as respectivas sub-redes diretamente conectadas ao equipamento, ou seja, entrega direta. Se tudo estiver correto, todos os PCs e roteadores devem pingar entre si.
      • Crie rotas sempre pelo caminho mais curto, por exemplo, do R0 para a rede do pc1 e pc2 passando por R1 e para R2 respectivamente.
    3. Trace e anote as rotas entre os hosts através do traceroute.
  7. Testando a queda de enlace.
    1. Com todas as rotas em perfeito funcionamento, gere um ping do pc0 para o pc2 e execute wireshark eth0 no R0 , em seguida "derrube" o enlace entre o R0 e R2. Por exemplo, no R2 execute o comando:
       ifconfig eth1 down
      
      O que ocorreu com o ping e o wireshark? Por quê? Com este enlace comprometido qual seria a solução para a continuidade de funcionamento de toda a rede?

Testando campo TTL com loop na rede

  1. Baixe o arquivo de configuração da rede, no terminal digite:
    wget -4 http://docente.ifsc.edu.br/odilson/RED29004/3_roteadores_tab_estaticas_com_loop.imn
    
  2. Execute o Imunes.
    sudo imunes
    
  3. Carregue o arquivo de configuração:
    File >> Open >> /home/aluno/3_roteadores_tab_estaticas_com_loop.imn
    
  4. Inicie a simulação no Imunes:
    Experiment >> Execute
    
  5. Execute o Wireshark na interface eth1 de todos os roteadores e na interface eth0 do pc0.
  6. Gere um tráfego único a partir do pc0 para o pc2:
    ping -c1 10.0.2.20
    
  7. Pare a captura em todos os Wiresharks.
  8. Qual mensagem de erro foi recebida no terminal do pc0?
  9. Analisando as capturas dos Wireshark responda:
    1. Aproximadamente em qual roteador o pacote foi descartado? Procure pelo menor valor de ttl.
    2. Qual o significado da linha com o seguinte conteúdo parcial: Time-to-live exceeded (Time to live exceeded in transit)?
    3. Explique qual o objetivo do campo ttl no cabeçalho IP?


AULA DIA 10/04/2021

Objetivos

De forma geral esta aula VISA revisar o conceito de protocolos da camada de transporte.

O aluno deverá ser capaz após esta aula:

  • Compreender e saber explicar o papel dos protocolos de transporte em redes (de forma geral e na Arquitetura da Internet) e o seu papel como de formadores de canais lógicos entre aplicações;
  • Identificar as principais funcionalidades e diferenças entre os protocolos de transporte UDP e TCP;
  • Ter uma visão da estrutura dos pacotes UDP e TCP identificando-os com o wireshark.
  • Usar o netcat para realizar testes de conexão/envio de dados em portas, usando o UDP e o TCP.

Slides Utilizados

ATENÇÃO: Será proposto um questionário a ser postado no SIGAA desta aula. Fazer o questionário somente após ter elaborado o relatório do experimento abaixo.

Laboratório de Revisão UDP e TCP

ATENÇÃO: Será solicitado um mini relatório deste laboratório. Pada cada etapa deve ser recortada a tela de interesse e uma explicação deverá ser realizada.

PARTE 1: Construir a rede abaixo e testar a conectividade entre todos os PCs usando o comando ping.

LabRevisao-TCP-UDP-RCO.png

PARTE 2: Investigação do UDP

  1. Executar o netcat como servidor (usando UDP) no pc3. Ele deve esperar por dados na PORTA 5000.
    netcat -l -u -p 5000
  2. Escutar os pacotes na interface do pc3 usando o wireshark. Clicar com o botão direito do mouse para acessar o wireshark.
  3. Realizar uma comunicação entre PC1 e PC3 usando o netcat como cliente no PC1. Ele deve usar a porta local 6000.
    netcat -u 10.0.3.21 -p 6000 5000
  4. Identificar um pacote desta comunicação no sentido pc1->pc3. Indicar:
    • o datagrama UDP capturado;
    • as portas fonte e destino;
    • o conteúdo de dados (payload).
  5. Identificar um pacote desta comunicação no sentido pc3->pc1. Indicar:
    • o datagrama UDP capturado;
    • as portas fonte e destino;
    • o conteúdo de dados (payload).
  6. Elaborar um diagrama de troca de mensagens para esta comunicação.

PARTE 2: Investigação do TCP

  1. Executar o netcat como servidor (usando TCP) no pc3. Ele deve esperar por dados na PORTA 5000.
    netcat -l -t -p 5000
  2. Escutar os pacotes na interface do pc3 usando o wireshark.
  3. Realizar uma comunicação entre PC1 e PC3 usando o netcat como cliente no PC1. Ele deve usar a porta local 6000.
    netcat -t 10.0.3.21 -p 6000 5000
  4. Identificar um pacote desta comunicação no sentido pc1->pc3. Indicar:
    • o segmento TCP capturado;
    • as portas fonte e destino;
  5. Identificar um pacote desta comunicação no sentido pc3->pc1. Indicar:
    • o segmento TCP capturado;
    • as portas fonte e destino;
  6. Elaborar um diagrama de troca de mensagens para esta comunicação.
  7. Discutir a diferença observada entre a comunicação com o UDP (etapa 1) e com o TCP.



AULA DIA 14/04/2021

Objetivos

Aspectos adicionais da camada IP.

  • Protocolo ICMP
  • Protocolo DHCP
  • O NAT
  • O Protocolo IPv6
  • Protocolos de Roteamento Dinâmico e Hierarquia na Internet