Mudanças entre as edições de "Predefinição:RCO 1110232 2020-2"
(99 revisões intermediárias pelo mesmo usuário não estão sendo mostradas) | |||
Linha 13: | Linha 13: | ||
Objetivos | Objetivos | ||
− | (1) Caracterizar e classificar as redes de computadores. | + | :(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 | + | :(2) Utilizar e configurar aplicações cliente e aplicativos de rede da Internet, identificando as funcionalidades dos protocolos utilizados. |
− | protocolos utilizados. | + | :(3) Identificar as funcionalidades e a abrangência dos protocolos da arquitetura Internet (TCP/IP). |
− | (3) Identificar as funcionalidades e a abrangência dos protocolos da arquitetura Internet (TCP/IP). | + | :(4) Planejar e configurar redes e sub-redes IP; |
− | (4) Planejar e configurar redes e sub-redes IP; | ||
Conhecimentos | Conhecimentos | ||
− | (1) Componentes de uma rede de computadores: aplicações, hosts, roteadores, enlaces; | + | :(1) Componentes de uma rede de computadores: aplicações, hosts, roteadores, enlaces; |
− | (2) Comutação de pacotes; | + | :(2) Comutação de pacotes; |
− | (3) Aplicações de rede: Web, DNS, FTP, SSH; | + | :(3) Aplicações de rede: Web, DNS, FTP, SSH; |
− | (4) Protocolos de transporte e portas utilizadas pelas aplicações. | + | :(4) Protocolos de transporte e portas utilizadas pelas aplicações. |
− | (5) Endereçamento de redes IP e sub-redes; | + | :(5) Endereçamento de redes IP e sub-redes; |
− | (6) Roteamento estático de redes IP; | + | :(6) Roteamento estático de redes IP; |
== Apostilas == | == Apostilas == | ||
Linha 553: | Linha 552: | ||
<ol> | <ol> | ||
− | <li> 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: | + | <li> 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''': |
<syntaxhighlight lang=html> | <syntaxhighlight lang=html> | ||
<html><body><h1>REDES DE COMPUTADORES</h1> | <html><body><h1>REDES DE COMPUTADORES</h1> | ||
Linha 564: | Linha 563: | ||
</li> | </li> | ||
<li> | <li> | ||
− | DESAFIO: Pesquise e coloque um link que ao ser clicado leva ao site: http://sj.ifsc.edu.br | + | DESAFIO: Pesquise e coloque na página acima um link que ao ser clicado leva ao site: http://sj.ifsc.edu.br |
</li> | </li> | ||
</ol> | </ol> | ||
+ | |||
+ | =====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. | ||
+ | |||
+ | <ol> | ||
+ | <li> | ||
+ | Usando o browser (preferencialmente o firefox), acesse a URL: http://tele.sj.ifsc.edu.br/~odilson/RED29004/RED29004.html | ||
+ | <li> | ||
+ | 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. | ||
+ | </li> | ||
+ | <li> | ||
+ | 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. | ||
+ | </li> | ||
+ | </ol> | ||
+ | |||
+ | =====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. | ||
+ | |||
+ | <ol> | ||
+ | <li> | ||
+ | Usando o browser (preferencialmente o firefox), acesse a URL: http://tele.sj.ifsc.edu.br/~odilson/RED29004/RED29004_arq4.html | ||
+ | <li> | ||
+ | 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. | ||
+ | </li> | ||
+ | <li> | ||
+ | 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. | ||
+ | </li> | ||
+ | </ol> | ||
+ | |||
+ | ==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 | ||
+ | *[http://docente.ifsc.edu.br/odilson/RCO60803/Servico%20de%20Nomes%20DNS.pdf Serviço de Nomes - DNS] | ||
+ | |||
+ | *[http://www.inf.ufes.br/~zegonc/material/Redes_de_Computadores/Dns01-ufes.pdf Slides UFSC Adicionais] | ||
+ | *[https://paginas.fe.up.pt/~mgi97018/dns.html FE Portugal] | ||
+ | |||
+ | ===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. | ||
+ | <ol> | ||
+ | <li> Executar um comando: | ||
+ | <syntaxhighlight lang=shell> | ||
+ | ping www.ifsc.edu.br | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | e usando um analisador de pacotes verificar os pacotes DNS e ICMP gerados. | ||
+ | </li> | ||
+ | <li> Limpar o cache DNS com: | ||
+ | <syntaxhighlight lang=shell> | ||
+ | sudo systemd-resolve --flush-caches | ||
+ | </syntaxhighlight> | ||
+ | </li> | ||
+ | <li> Gerar uma resuisição DNS manualmente: | ||
+ | <syntaxhighlight lang=shell> | ||
+ | host -t A www.ifsc.edu.br | ||
+ | </syntaxhighlight> | ||
+ | Este comando pode ser acompanhado da captura de pacotes para verificar o acesso DNS. | ||
+ | </li> | ||
+ | <li> | ||
+ | </li> | ||
+ | </ol> | ||
+ | |||
+ | |||
+ | ==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=== | ||
+ | *[http://docente.ifsc.edu.br/odilson/RCO60803/UDP%20Basico.pdf Introdução a camada de transporte e UDP básico] | ||
+ | |||
+ | ===Parte 1 - Fluxo único UDP=== | ||
+ | |||
+ | <ol> | ||
+ | <li> | ||
+ | O professor executará o programa netcat para escutar em uma porta UDP na máquina da CLOUD IFSC da seguinte forma. | ||
+ | <br>netcat -l -u 191.36.8.58 PORTA</br> | ||
+ | </li> | ||
+ | <li> | ||
+ | O aluno enviará uma mensagem UDP para a porta que o professor indicar. | ||
+ | netcat -u IP_DEST PORTA | ||
+ | </li> | ||
+ | <li> | ||
+ | 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. | ||
+ | </li> | ||
+ | <li> 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 | ||
+ | </li> | ||
+ | <li> Foi identificado algum procedimento para conexão em nível de transporte? | ||
+ | </li> | ||
+ | </ol> | ||
+ | |||
+ | ===Parte 2 - Fluxo único TCP=== | ||
+ | |||
+ | *Fonte Base | ||
+ | *[http://docente.ifsc.edu.br/odilson/RCO60803/TCP%20Basico.pdf Camada de transporte: TCP básico] | ||
+ | |||
+ | |||
+ | <ol> | ||
+ | <li> | ||
+ | O professor executará o programa netcat para escutar em uma porta UDP na máquina da CLOUD IFSC da seguinte forma. | ||
+ | <br>netcat 191.36.8.58 PORTA</br> | ||
+ | </li> | ||
+ | <li> | ||
+ | O aluno enviará uma mensagem UDP para a porta que o professor indicar. | ||
+ | netcat IP_DEST PORTA | ||
+ | </li> | ||
+ | <li> | ||
+ | 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. | ||
+ | </li> | ||
+ | <li>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 | ||
+ | </li> | ||
+ | <li> Foi identificado algum procedimento para conexão em nível de transporte? | ||
+ | </li> | ||
+ | <li> | ||
+ | Identifique as mensagens associadas a conexão (mostre o recorte da tela). | ||
+ | </li> | ||
+ | <li> | ||
+ | Identifique as mensagens associadas a transmissão dos dados. | ||
+ | </li> | ||
+ | </ol> | ||
+ | |||
+ | ==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: | ||
+ | |||
+ | *[https://wiki.x2go.org/doku.php/doc:installation:x2goclient X2GO client para Windos] | ||
+ | |||
+ | 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=== | ||
+ | |||
+ | #Introdução ao mundo IP | ||
+ | #Verificação das configurações de interfaces de rede | ||
+ | #Verificação de tabelas de roteamento nos hospedeiros e no roteador | ||
+ | #Verificação de movimentação de pacotes (rotas) em roteadores | ||
+ | |||
+ | Usaremos como base a seguinte arquitetura de rede: | ||
+ | |||
+ | [[Arquivo:2_sub-redes_com_1_roteador.png]] | ||
+ | |||
+ | ===Fonte Base=== | ||
+ | *[http://docente.ifsc.edu.br/odilson/RED29004/MACxIP.pdf Endereçamento MAC x Endereçamento IP] | ||
+ | |||
+ | ===Procedimento 1 - Análise simples do Roteamento: Entrega Direta e Indireta=== | ||
+ | |||
+ | #Baixe o arquivo de configuração da rede, no terminal digite: <syntaxhighlight lang=bash> | ||
+ | wget -4 http://docente.ifsc.edu.br/odilson/RED29004/Roteador_com_duas_redes.imn | ||
+ | </syntaxhighlight> | ||
+ | #Execute o Imunes.<syntaxhighlight lang=bash> | ||
+ | sudo imunes</syntaxhighlight> | ||
+ | #Carregue o arquivo de configuração: <syntaxhighlight lang=bash> | ||
+ | File >> Open >> /home/aluno/Roteador_com_duas_redes.imn</syntaxhighlight> | ||
+ | #Inicie a simulação no Imunes: <syntaxhighlight lang=bash> | ||
+ | Experiment >> Execute </syntaxhighlight> | ||
+ | #*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. | ||
+ | #<span style="color: #9966CC;">Anotar os endereços de hardware (ou MAC) e IP de cada dispositivo na rede. No terminal de cada PC execute: <syntaxhighlight lang=bash> | ||
+ | ifconfig </syntaxhighlight> | ||
+ | #<span style="color: #9966CC;">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.<syntaxhighlight lang=bash> | ||
+ | route -n </syntaxhighlight> | ||
+ | #<span style="color: #9966CC;">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. | ||
+ | ##Deixe o ping entre '''pc1''' e '''pc2''', em '''pc1''' execute:<syntaxhighlight lang=bash> | ||
+ | ping 10.0.0.21</syntaxhighlight> | ||
+ | ##No '''router1''' capture pacotes com o Wireshark na interface eyh0:<syntaxhighlight lang=bash> | ||
+ | Clique com o botão direito do mouse sobre o Cliente1 >> Wireshark >> eth0... </syntaxhighlight> | ||
+ | ##Observe que não há tráfego de pacotes no '''router1''', portanto, entrega direta. | ||
+ | #<span style="color: #9966CC;">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.<span style="color: black;"> | ||
+ | |||
+ | ===Procedimento 2 - Configuração básica de interface de rede=== | ||
+ | #No '''pc3''' teste a conectividade com os demais '''PCs''', por exemplo, fazendo ''pings'' para o '''pc1''' e '''pc4''': <syntaxhighlight lang=bash> | ||
+ | ping 10.0.0.20 | ||
+ | ping 10.0.1.21</syntaxhighlight> | ||
+ | #*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. | ||
+ | #Assim sendo, configure a interface de rede no '''pc3'''. | ||
+ | #*<span style="color: #9966CC;"> Anote todos os comandos executados. | ||
+ | ##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. | ||
+ | ##Tente "pingar" para o '''pc1'''. Ainda não haverá sucesso, pois não há um roteador devidamente configurado no '''pc3'''. | ||
+ | ##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". | ||
+ | #Execute o comando ping do '''pc3''' para o '''pc4'''. Obteve sucesso? Se não corrija as configurações. | ||
+ | #Execute o comando ping do '''pc3''' para o '''pc1'''. Obteve sucesso? Se não corrija as configurações. | ||
+ | #Execute o comando ping do '''pc2''' para o '''pc3'''. Obteve sucesso? Se não corrija as configurações. | ||
+ | |||
+ | ====Referências adicionais==== | ||
+ | |||
+ | * [http://linux-ip.net/html Guia de Administração da Camada IP no Linux] | ||
+ | |||
+ | |||
+ | |||
+ | =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 [http://jodies.de/ipcalc calculdor IP] para observar a anatomia deste endereço. | ||
+ | |||
+ | [[Arquivo:RCO_Enderecamento_IP.png|450px]] | ||
+ | |||
+ | *Exercício (ver SIGA A) | ||
+ | |||
+ | Faça um análise do endereço 191.36.8.59/26 e responda: | ||
+ | <ol> | ||
+ | <li>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. | ||
+ | </li> | ||
+ | <li>Faça uma tabela com cada número decimal (estão entre pontos) e o correspondente em bits. | ||
+ | </li> | ||
+ | <li>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? | ||
+ | </li> | ||
+ | <li>Quantos bits correspondem ao host id e ao net id? | ||
+ | </li> | ||
+ | <li> Quantos hospedeiros poderiam estar nesta rede? | ||
+ | </li> | ||
+ | <li>Como é representada a máscara de rede em bits e em decimal? | ||
+ | </li> | ||
+ | <li>Qual o endereço MAC da eth0? Mostre em hexadecimal e em bits. | ||
+ | </li> | ||
+ | </ol> | ||
+ | |||
+ | =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: | ||
+ | |||
+ | [[Arquivo:3_roteadores_tab_estaticas.png]] | ||
+ | |||
+ | ===Tabelas estáticas de roteamento=== | ||
+ | #Baixe o arquivo de configuração da rede, no terminal digite: <syntaxhighlight lang=bash> | ||
+ | wget -4 http://docente.ifsc.edu.br/odilson/RED29004/3_roteadores_tab_estaticas.imn | ||
+ | </syntaxhighlight> | ||
+ | #Execute o Imunes.<syntaxhighlight lang=bash> | ||
+ | sudo imunes</syntaxhighlight> | ||
+ | #Carregue o arquivo de configuração: <syntaxhighlight lang=bash> | ||
+ | File >> Open >> /home/aluno/3_roteadores_tab_estaticas.imn</syntaxhighlight> | ||
+ | #Inicie a simulação no Imunes: <syntaxhighlight lang=bash> | ||
+ | Experiment >> Execute </syntaxhighlight> | ||
+ | #*Observe que a rede é composta de 3 PCs ('''pc0''' - '''pc2''') e 3 roteadores roteador ('''R0''' - '''R2'''). | ||
+ | #Testes de conectividade de enlace e configuração do ''default gateway''. | ||
+ | ##Por exemplo, no '''pc0''' execute o comando: <syntaxhighlight lang=bash> ping 10.0.0.1 </syntaxhighlight> <span style="color: #9966CC;"> Obteve sucesso? Sim ou não e por quê? | ||
+ | ##Teste a conectividade do '''pc0''' executando o comando: <syntaxhighlight lang=bash> ping 10.0.10.1 </syntaxhighlight> <span style="color: #9966CC;"> Obteve sucesso? Sim ou não e por quê? Qual foi o erro observado? | ||
+ | ##Por exemplo, no '''pc0''' execute o comando: <syntaxhighlight lang=bash> ping 10.0.10.2 </syntaxhighlight> <span style="color: #9966CC;"> Obteve sucesso? Sim ou não e por quê? Qual foi o erro observado? | ||
+ | ##Configure o roteador padrão em todos os PCs. Adapte o comando exemplo do '''pc0''' para todos os PCs: <syntaxhighlight lang=bash> route add -net default gw 10.0.0.1 </syntaxhighlight> | ||
+ | ##*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. | ||
+ | ##Teste novamente a conectividade, no '''pc0''' execute o comando: <syntaxhighlight lang=bash> ping 10.0.10.1 </syntaxhighlight> e <syntaxhighlight lang=bash> ping 10.0.10.2 </syntaxhighlight> <span style="color: #9966CC;">Obteve sucesso? O comportamento foi o mesmo das tentativas anteriores? Sim ou não e por quê? Qual foi o erro observado? | ||
+ | ##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'''). | ||
+ | ###<span style="color: #9966CC;">Qual a origem e destino dos pacotes? Explique? | ||
+ | ###<span style="color: #9966CC;">Qual a diferença no ping entre os dois itens? | ||
+ | #Iniciando o roteamento. | ||
+ | ##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: <syntaxhighlight lang=bash> route add -net 10.0.0.0/24 gw 10.0.10.1 </syntaxhighlight> <span style="color: #9966CC;"> 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'''. | ||
+ | ##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. | ||
+ | ##<span style="color: #9966CC;"> Trace e anote as rotas entre os ''hosts'' através do '''traceroute'''. | ||
+ | #Testando a queda de enlace. | ||
+ | ##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: <syntaxhighlight lang=bash> ifconfig eth1 down </syntaxhighlight> <span style="color: #9966CC;">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=== | ||
+ | #Baixe o arquivo de configuração da rede, no terminal digite: <syntaxhighlight lang=bash> | ||
+ | wget -4 http://docente.ifsc.edu.br/odilson/RED29004/3_roteadores_tab_estaticas_com_loop.imn | ||
+ | </syntaxhighlight> | ||
+ | #Execute o Imunes.<syntaxhighlight lang=bash> | ||
+ | sudo imunes</syntaxhighlight> | ||
+ | #Carregue o arquivo de configuração: <syntaxhighlight lang=bash> | ||
+ | File >> Open >> /home/aluno/3_roteadores_tab_estaticas_com_loop.imn</syntaxhighlight> | ||
+ | #Inicie a simulação no Imunes: <syntaxhighlight lang=bash> | ||
+ | Experiment >> Execute </syntaxhighlight> | ||
+ | #Execute o Wireshark na interface eth1 de todos os roteadores e na interface eth0 do '''pc0'''. | ||
+ | #Gere um tráfego único a partir do '''pc0''' para o '''pc2''': <syntaxhighlight lang=bash> | ||
+ | ping -c1 10.0.2.20 </syntaxhighlight> | ||
+ | #Pare a captura em todos os Wiresharks. | ||
+ | #<span style="color: #9966CC;">Qual mensagem de erro foi recebida no terminal do '''pc0'''? | ||
+ | #<span style="color: #9966CC;">Analisando as capturas dos Wireshark responda: | ||
+ | ##Aproximadamente em qual roteador o pacote foi descartado? Procure pelo menor valor de '''ttl'''. | ||
+ | ##Qual o significado da linha com o seguinte conteúdo parcial: ''Time-to-live exceeded (Time to live exceeded in transit)''? | ||
+ | ##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=== | ||
+ | |||
+ | *[http://docente.ifsc.edu.br/odilson/RCO60803/UDP%20Basico.pdf Udp Básico] | ||
+ | *[http://docente.ifsc.edu.br/odilson/RCO60803/TCP%20Basico.pdf Tcp Básico] | ||
+ | *[http://docente.ifsc.edu.br/odilson/RED29004/MACxIP.pdf MACxIP] | ||
+ | |||
+ | 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.==== | ||
+ | |||
+ | [[Arquivo:LabRevisao-TCP-UDP-RCO.png|650px]] | ||
+ | |||
+ | ====PARTE 2: Investigação do UDP==== | ||
+ | |||
+ | <ol> | ||
+ | <li> | ||
+ | Executar o netcat como servidor (usando UDP) no pc3. Ele deve esperar por dados na PORTA 5000. | ||
+ | '''<br>netcat -l -u -p 5000</br>''' | ||
+ | </li> | ||
+ | <li> | ||
+ | Escutar os pacotes na interface do pc3 usando o wireshark. Clicar com o botão direito do mouse para acessar o wireshark. | ||
+ | </li> | ||
+ | <li> | ||
+ | Realizar uma comunicação entre PC1 e PC3 usando o netcat como cliente no PC1. Ele deve usar a porta local 6000. | ||
+ | '''<br>netcat -u 10.0.3.21 -p 6000 5000</br>''' | ||
+ | </li> | ||
+ | <li> | ||
+ | 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). | ||
+ | </li> | ||
+ | <li> | ||
+ | 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). | ||
+ | </li> | ||
+ | <li>Elaborar um diagrama de troca de mensagens para esta comunicação. | ||
+ | </li> | ||
+ | </ol> | ||
+ | |||
+ | ====PARTE 2: Investigação do TCP==== | ||
+ | |||
+ | <ol> | ||
+ | <li> | ||
+ | Executar o netcat como servidor (usando TCP) no pc3. Ele deve esperar por dados na PORTA 5000. | ||
+ | '''<br>netcat -l -t -p 5000</br>''' | ||
+ | </li> | ||
+ | <li> | ||
+ | Escutar os pacotes na interface do pc3 usando o wireshark. | ||
+ | </li> | ||
+ | <li> | ||
+ | Realizar uma comunicação entre PC1 e PC3 usando o netcat como cliente no PC1. Ele deve usar a porta local 6000. | ||
+ | '''<br>netcat -t 10.0.3.21 -p 6000 5000</br>''' | ||
+ | </li> | ||
+ | <li> | ||
+ | Identificar um pacote desta comunicação no sentido pc1->pc3. Indicar: | ||
+ | *o segmento TCP capturado; | ||
+ | *as portas fonte e destino; | ||
+ | </li> | ||
+ | <li> | ||
+ | Identificar um pacote desta comunicação no sentido pc3->pc1. Indicar: | ||
+ | *o segmento TCP capturado; | ||
+ | *as portas fonte e destino; | ||
+ | </li> | ||
+ | <li>Elaborar um diagrama de troca de mensagens para esta comunicação. | ||
+ | </li> | ||
+ | <li> Discutir a diferença observada entre a comunicação com o UDP (etapa 1) e com o TCP. | ||
+ | </li> | ||
+ | </ol> | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | =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 | ||
+ | |||
+ | ==Revisão da Camada IP== | ||
+ | |||
+ | *[http://docente.ifsc.edu.br/odilson/RED29004/PPTs%20-%20Cap%C3%ADtulo%204%20A%20camada%20de%20REDE.pdf Slides Completos Camada IP] | ||
+ | |||
+ | Focar em: | ||
+ | *Slides 1 - Créditos dos Slides | ||
+ | *Slides 15 - Redes do Tipo Datagrama | ||
+ | *Slide: 19 - O roteador | ||
+ | *Slide: 3,30 - Posicionamento de Protocolos na camada IP | ||
+ | *Slide 31 - Endereçamento IP | ||
+ | *Slides: 44 a 46 - DHCP | ||
+ | *Slides: 47 e 48 - NAT | ||
+ | *Slide 35 - subredes | ||
+ | *Slide: 38 e 39 - Endereçamento Hierárquico | ||
+ | *Slides: 49 e 50 - ICMP | ||
+ | * | ||
+ | |||
+ | |||
+ | |||
+ | <!-- | ||
+ | |||
+ | <syntaxhighlight lang=shell> | ||
+ | Use a nice truetype font and size by default... | ||
+ | xterm*faceName: DejaVu Sans Mono Book | ||
+ | xterm*faceSize: 11 | ||
+ | |||
+ | ! Every shell is a login shell by default (for inclusion of all necessary environment variables) | ||
+ | xterm*loginshell: true | ||
+ | |||
+ | ! I like a LOT of scrollback... | ||
+ | xterm*savelines: 16384 | ||
+ | |||
+ | ! double-click to select whole URLs :D | ||
+ | xterm*charClass: 33:48,36-47:48,58-59:48,61:48,63-64:48,95:48,126:48 | ||
+ | |||
+ | ! DOS-box colours... | ||
+ | xterm*foreground: rgb:a8/a8/a8 | ||
+ | xterm*background: rgb:00/00/00 | ||
+ | xterm*color0: rgb:00/00/00 | ||
+ | xterm*color1: rgb:a8/00/00 | ||
+ | xterm*color2: rgb:00/a8/00 | ||
+ | xterm*color3: rgb:a8/54/00 | ||
+ | xterm*color4: rgb:00/00/a8 | ||
+ | xterm*color5: rgb:a8/00/a8 | ||
+ | xterm*color6: rgb:00/a8/a8 | ||
+ | xterm*color7: rgb:a8/a8/a8 | ||
+ | xterm*color8: rgb:54/54/54 | ||
+ | xterm*color9: rgb:fc/54/54 | ||
+ | xterm*color10: rgb:54/fc/54 | ||
+ | xterm*color11: rgb:fc/fc/54 | ||
+ | xterm*color12: rgb:54/54/fc | ||
+ | xterm*color13: rgb:fc/54/fc | ||
+ | xterm*color14: rgb:54/fc/fc | ||
+ | xterm*color15: rgb:fc/fc/fc | ||
+ | |||
+ | ! right hand side scrollbar... | ||
+ | xterm*rightScrollBar: true | ||
+ | xterm*ScrollBar: true | ||
+ | |||
+ | ! stop output to terminal from jumping down to bottom of scroll again | ||
+ | xterm*scrollTtyOutput: false | ||
+ | </syntaxhighlight> | ||
+ | --> |
Edição atual tal como às 18h41min de 14 de abril de 2021
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' |
---|
|
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
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 2ObjetivosApós este laboratório o aluno deverá ser capaz de:
Sobre o analisador WiresharkO 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 WiresharkQuando 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:
ETAPA 2 - Verificando pacotes do ping (ICMP REQUEST/REPLY))
Etapa 3ATENÇÃO: ESTA ESTA DEVERÁ SER ENTREGUE NA FORMA DE TAREFA. VER SIGAA.
|
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
- Acessar com o browser a URL http://tele.sj.ifsc.edu.br/~odilson/RED29004/RED29004.html Ver código fonte.
- Capturar pacotes e verificar captura.
- Acessar com telnet: telnet -4 tele.sj.ifsc.edu.br 80 GET /~odilson/RED29004//RED29004.html HTTP/1.0
- 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
- 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>
- Abra o arquivo usando o browser. Clicando sobre ele provavelmente já será mostrado.
- 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.
- Usando o browser (preferencialmente o firefox), acesse a URL: http://tele.sj.ifsc.edu.br/~odilson/RED29004/RED29004.html
- 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.
- 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.
- Usando o browser (preferencialmente o firefox), acesse a URL: http://tele.sj.ifsc.edu.br/~odilson/RED29004/RED29004_arq4.html
- 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.
- 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.
- Executar um comando:
ping www.ifsc.edu.br
e usando um analisador de pacotes verificar os pacotes DNS e ICMP gerados.
- Limpar o cache DNS com:
sudo systemd-resolve --flush-caches
- 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
-
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
- O aluno enviará uma mensagem UDP para a porta que o professor indicar. netcat -u IP_DEST PORTA
- 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.
- 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
- Foi identificado algum procedimento para conexão em nível de transporte?
Parte 2 - Fluxo único TCP
- Fonte Base
- Camada de transporte: TCP básico
-
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
- O aluno enviará uma mensagem UDP para a porta que o professor indicar. netcat IP_DEST PORTA
- 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.
- 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
- Foi identificado algum procedimento para conexão em nível de transporte?
- Identifique as mensagens associadas a conexão (mostre o recorte da tela).
- 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
- Introdução ao mundo IP
- Verificação das configurações de interfaces de rede
- Verificação de tabelas de roteamento nos hospedeiros e no roteador
- Verificação de movimentação de pacotes (rotas) em roteadores
Usaremos como base a seguinte arquitetura de rede:
Fonte Base
Procedimento 1 - Análise simples do Roteamento: Entrega Direta e Indireta
- 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
- Execute o Imunes.
sudo imunes
- Carregue o arquivo de configuração:
File >> Open >> /home/aluno/Roteador_com_duas_redes.imn
- 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.
- Anotar os endereços de hardware (ou MAC) e IP de cada dispositivo na rede. No terminal de cada PC execute:
ifconfig
- 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
- 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.
- Deixe o ping entre pc1 e pc2, em pc1 execute:
ping 10.0.0.21
- No router1 capture pacotes com o Wireshark na interface eyh0:
Clique com o botão direito do mouse sobre o Cliente1 >> Wireshark >> eth0...
- Observe que não há tráfego de pacotes no router1, portanto, entrega direta.
- Deixe o ping entre pc1 e pc2, em pc1 execute:
- 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
- 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.
- Assim sendo, configure a interface de rede no pc3.
- Anote todos os comandos executados.
- 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.
- Tente "pingar" para o pc1. Ainda não haverá sucesso, pois não há um roteador devidamente configurado no pc3.
- 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".
- Execute o comando ping do pc3 para o pc4. Obteve sucesso? Se não corrija as configurações.
- Execute o comando ping do pc3 para o pc1. Obteve sucesso? Se não corrija as configurações.
- 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.
- Exercício (ver SIGA A)
Faça um análise do endereço 191.36.8.59/26 e responda:
- 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.
- Faça uma tabela com cada número decimal (estão entre pontos) e o correspondente em bits.
- 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?
- Quantos bits correspondem ao host id e ao net id?
- Quantos hospedeiros poderiam estar nesta rede?
- Como é representada a máscara de rede em bits e em decimal?
- 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:
Tabelas estáticas de roteamento
- 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
- Execute o Imunes.
sudo imunes
- Carregue o arquivo de configuração:
File >> Open >> /home/aluno/3_roteadores_tab_estaticas.imn
- Inicie a simulação no Imunes:
Experiment >> Execute
- Observe que a rede é composta de 3 PCs (pc0 - pc2) e 3 roteadores roteador (R0 - R2).
- Testes de conectividade de enlace e configuração do default gateway.
- Por exemplo, no pc0 execute o comando: Obteve sucesso? Sim ou não e por quê?
ping 10.0.0.1
- Teste a conectividade do pc0 executando o comando: Obteve sucesso? Sim ou não e por quê? Qual foi o erro observado?
ping 10.0.10.1
- Por exemplo, no pc0 execute o comando: Obteve sucesso? Sim ou não e por quê? Qual foi o erro observado?
ping 10.0.10.2
- 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.
- Teste novamente a conectividade, no pc0 execute o comando: e
ping 10.0.10.1
Obteve sucesso? O comportamento foi o mesmo das tentativas anteriores? Sim ou não e por quê? Qual foi o erro observado?ping 10.0.10.2
- 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).
- Qual a origem e destino dos pacotes? Explique?
- Qual a diferença no ping entre os dois itens?
- Por exemplo, no pc0 execute o comando:
- Iniciando o roteamento.
- 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: O que ocorreu com o ping e o wireshark? Por quê?
route add -net 10.0.0.0/24 gw 10.0.10.1
- 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.
- 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.
- Trace e anote as rotas entre os hosts através do traceroute.
- 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:
- Testando a queda de enlace.
- 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: 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?
ifconfig eth1 down
- 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:
Testando campo TTL com loop na rede
- 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
- Execute o Imunes.
sudo imunes
- Carregue o arquivo de configuração:
File >> Open >> /home/aluno/3_roteadores_tab_estaticas_com_loop.imn
- Inicie a simulação no Imunes:
Experiment >> Execute
- Execute o Wireshark na interface eth1 de todos os roteadores e na interface eth0 do pc0.
- Gere um tráfego único a partir do pc0 para o pc2:
ping -c1 10.0.2.20
- Pare a captura em todos os Wiresharks.
- Qual mensagem de erro foi recebida no terminal do pc0?
- Analisando as capturas dos Wireshark responda:
- Aproximadamente em qual roteador o pacote foi descartado? Procure pelo menor valor de ttl.
- Qual o significado da linha com o seguinte conteúdo parcial: Time-to-live exceeded (Time to live exceeded in transit)?
- 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.
PARTE 2: Investigação do UDP
-
Executar o netcat como servidor (usando UDP) no pc3. Ele deve esperar por dados na PORTA 5000.
netcat -l -u -p 5000
- Escutar os pacotes na interface do pc3 usando o wireshark. Clicar com o botão direito do mouse para acessar o wireshark.
-
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
-
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).
-
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).
- Elaborar um diagrama de troca de mensagens para esta comunicação.
PARTE 2: Investigação do TCP
-
Executar o netcat como servidor (usando TCP) no pc3. Ele deve esperar por dados na PORTA 5000.
netcat -l -t -p 5000
- Escutar os pacotes na interface do pc3 usando o wireshark.
-
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
-
Identificar um pacote desta comunicação no sentido pc1->pc3. Indicar:
- o segmento TCP capturado;
- as portas fonte e destino;
-
Identificar um pacote desta comunicação no sentido pc3->pc1. Indicar:
- o segmento TCP capturado;
- as portas fonte e destino;
- Elaborar um diagrama de troca de mensagens para esta comunicação.
- 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
Revisão da Camada IP
Focar em:
- Slides 1 - Créditos dos Slides
- Slides 15 - Redes do Tipo Datagrama
- Slide: 19 - O roteador
- Slide: 3,30 - Posicionamento de Protocolos na camada IP
- Slide 31 - Endereçamento IP
- Slides: 44 a 46 - DHCP
- Slides: 47 e 48 - NAT
- Slide 35 - subredes
- Slide: 38 e 39 - Endereçamento Hierárquico
- Slides: 49 e 50 - ICMP