Laboratório: NetKit DHCP e NAT: mudanças entre as edições
Linha 55: | Linha 55: | ||
#Verifique as '''tabelas de roteamento''' de cada '''pc''' com o comando '''route -n'''; | #Verifique as '''tabelas de roteamento''' de cada '''pc''' com o comando '''route -n'''; | ||
#Verifique a conectividade em rede entre os '''pc''' com o comando '''ping'''; | #Verifique a conectividade em rede entre os '''pc''' com o comando '''ping'''; | ||
#Acrescente '''rotas estáticas''' com o comando '''route -n''', de forma que todas as redes possam trocar pacotes (ver: [http://wiki.foz.ifpr.edu.br/wiki/index.php/Rede_e_Roteamento#route Rotas estáticas]; | #Acrescente '''rotas estáticas''' com o comando '''route -n''', de forma que todas as redes possam trocar pacotes (ver: [http://wiki.foz.ifpr.edu.br/wiki/index.php/Rede_e_Roteamento#route Rotas estáticas]); | ||
#Verifique novamente as '''tabelas de roteamento''' com o comando '''route -n'''; | #Verifique novamente as '''tabelas de roteamento''' com o comando '''route -n'''; | ||
#Verifique a conectividade em rede entre os '''pc''' com o comando '''ping'''. | #Verifique a conectividade em rede entre os '''pc''' com o comando '''ping'''. |
Edição das 11h30min de 2 de dezembro de 2016
Laboratório: NetKit DHCP e NAT
O Netkit2 [1] é um ambiente para experimentos com redes de computadores desenvolvido no Câmpus São José, do IFSC, inspirado no Netkit [2], desenvolvido pela Universidade de Roma, na Itália.
O Netkit2 se compõe de máquinas virtuais Linux (implementadas com kernel Linux UML – User Mode Linux), que funcionam como roteadores ou computadores e switches virtuais (UML switch) para interligar as máquinas virtuais. Para todos os efeitos, cada máquina virtual funciona como se fosse um computador real, possuindo uma ou mais interfaces de rede. Com esses recursos é possível criar redes de configurações arbitrárias para estudar protocolos de comunicação e serviços de rede [1].
O Netkit2 já está instalado no laboratório e pode ser iniciado com o comando:
netkit2
Caso deseja instalar o Netkit2 em outro computador Linux, consultar a referência [1].
Exercício 1: Teste do Netkit2
O script abaixo apresenta uma rede de computadores básica para ser testada no Netkit2 [1]:
pc1[type]=generic pc2[type]=generic pc1[eth0]=lan1:ip=192.168.0.1/24 pc2[eth0]=lan1:ip=192.168.0.2/24
A rede resultante é:
- Edite um arquivo de texto e salve em uma pasta de trabalho (extensão .conf);
- Carregue o arquivo no NetKit2 com a opção File -> Load and Run;
- Clique na opção File -> Graph e veja a topologia da rede em execução;
- Verifique as configurações de cada pc com o comando ifconfig;
- Verifique a conectividade em rede entre os pc com o comando ping;
Exercício 2: Redes interligadas por gateway
O script abaixo apresenta duas redes locais interligadas por um gateway [1]:
pc1[type]=generic pc2[type]=gateway pc3[type]=generic pc1[default_gateway]=192.168.0.2 pc3[default_gateway]=192.168.1.1 pc1[eth0]=lan0:ip=192.168.0.1/24 pc2[eth0]=lan0:ip=192.168.0.2/24 pc2[eth1]=lan1:ip=192.168.1.1/24 pc3[eth0]=lan1:ip=192.168.1.2/24
A rede resultante é:
- Parte 1
- Edite e carregue o arquivo no NetKit2;
- Verifique as configurações de cada pc com o comando ifconfig;
- Verifique as tabelas de roteamento de cada pc com o comando route -n;
- Verifique a conectividade em rede entre os pc com o comando ping;
- Parte 2
- Inclua mais um gateway na rede, como mostra a figura:
- Verifique as configurações de cada pc com o comando ifconfig;
- Verifique as tabelas de roteamento de cada pc com o comando route -n;
- Verifique a conectividade em rede entre os pc com o comando ping;
- Acrescente rotas estáticas com o comando route -n, de forma que todas as redes possam trocar pacotes (ver: Rotas estáticas);
- Verifique novamente as tabelas de roteamento com o comando route -n;
- Verifique a conectividade em rede entre os pc com o comando ping.
Exercício 3: Redes com gateway e servidor DHCP
Pesquise sobre a configuração de servidor DHCP no Netkit2 (ver Usando DHCP no Netkit2)
- Modifique o script do exercício anterior, de forma que o PC2 atue como servidor DHCP para a interface eth0.
- Inclua novos PCs configurados para obter endereço IP dinamicamente na rede 192.168.0.0/24.
- Verifique no arquivo /etc/dhcp/dhcpd.conf as configurações do servidor DHCP.
- Verifique no arquivo /etc/default/isc-dhcp-server as interfaces de rede que estão sendo providas por DHCP.
- Verifique no arquivo /var/lib/dhcp/dhcpd.leases a listagem dos IP alugados pelo servidor.
- Modifique o script acrescentando pelo menos dois novos PCs sem configuração da interface de rede, incluindo no script linhas do tipo: pc4[eth0]=link.
- Executar manualmente em um dos PC sem configuração da interface o comando dhclient eth0 e verifique se obtem configuração de IP do DHCP.
- Ative captura de pacotes (com Wireshark ou tcpdump) na interface eth0 do PC2 (Servidor DHCP) e em seguida, em outro computador sem interface configurada execute o comando dhclient eth0. Em seguida verifique os pacotes capturados relativos a negociação do cliente com o servidor DHCP.
Exercício 4: Redes com gateway e NAT
Pesquise sobre a configuração do roteador NAT no Netkit2 (ver Usando NAT no Netkit2)
- Modifique o script do exercício anterior, de forma que o PC2 atue como roteador NAT para os pacotes saindo pela interface eth1, agora chamada de interface externa.
- Execute o comando ping entre computadores das diversas redes para testar conectividade.
- Ative em um PC externo ao NAT o servidor apache com o comando service apache2 start e inclua uma página HTML básica no arquivo /var/www/index.html.
- Acesse a página Web no servidor apache com o navegador lynx.
- Capturar pacotes com tcpdump (ou Wireshark) na interface de um PC externo ao roteador NAT e identifique o tráfego HTTP entre o servidor apache e o navegador lynx.
- Verifique nos pacotes capturados se o roteador NAT está mascarando os pacotes saindo pela sua interface externa.
Exercício 5: Redes com gateway para acesso a Internet
Pesquise sobre a interligação das redes virtuais do Netkit2 com a rede real (ver Uplink para rede real)
- Modifique o script do exercício anterior, de forma que o PC2 tenha um uplink para a rede real.
- Execute o comando ping entre computadores da rede virtual e servidores da Internet.
Avaliação
Elaborar relatório descrevendo os experimentos realizados, incluindo a criação de rotas estáticas, funcionamento do servidor DHCP, roteador NAT e acesso da rede virtual do NetKit à rede real:
- Incluir figuras das topologias de rede, telas mostrando as configurações e saídas dos comandos (p.ex. ifconfig, ping, traceroute, route, etc).
Referências
--Evandro.cantu (discussão) 16h49min de 25 de novembro de 2015 (BRST)