Exercício Roteamento Linux Edgard Jamhour
Exercício 1 Para fazer o exercício, selecione 5 computadores e identifique como A, B, C, G1 e G2. 192.168.A.0/24 192.168.B.0/24 B 192.168.A.3 rede 1 rede 2 192.168.A.1 192.168.B.1 A G1 G2 C 192.168.A.2 192.168.B.2 10.26.135.x/17 10.26.135.y/17
Configuração da Bancada REDE 1 ENLACE REDE 2 eth0 eth0 eth1 eth0 eth0 eth0:1 eth0 A B G1 G2 C G1i G1o G2o G2i eth0 192.168.A.3/24 eth0 192.168.A.2/24 eth0:1 192.168.A.1/24 eth0 10.26.135.x/17 eth0:1 192.168.B.1/24 eth0 10.26.135.y/17 eth0 192.168.B.2/24 SUBSTITUA: A pelo número da sua bancada B pelo número da sua bancada + 4 x e y são os números da etiqueta do computador
Estrutura do Script #!/bin/bash if [ $# -eq 0 ]; then echo “Digite a opcao após o script” echo "1=A, 2=B, 3=G1, 4=G2, 5=C" exit fi if [ $1 -eq 1 ]; then echo "Configuracao do host A" elif [ $1 -eq 2]; then echo "Configuracao do host B" elif [ $1 -eq 3]; then echo "Configuracao do Gateway G1" elif [ $1 -eq 4]; then echo "Configuracao do Gateway G2" elif [ $1 -eq 5]; then echo "Configuracao do host C" else echo "Opcao invalida"
Exemplo: Bancada 1 # Variaveis R1=192.168.1.0; M1=255.255.255.0 A=192.168.1.3; B=192.168.1.2; G1i=192.168.1.1; R2=192.168.5.0; M2=255.255.255.0 C=192.168.5.2; G2i=192.168.5.1 G1o=10.26.135.17 ; G2o=10.26.135.18; Mo=255.255.128.0 # HOST A ifconfig eth0 $A netmask $M1 route add –net $R2 netmask $M2 gw $G1i # HOST B ifconfig eth0 $B netmask $M1 # G1 ifconfig eth0:1 $G1i netmask $M1 ifconfig eth0 $G1o netmask $M2 route add –net $R2 netmask $M2 gw $G2o # G2 ifconfig eth0:1 $G2i netmask $M2 ifconfig eth0 $G2o netmask $Mo route add –net $R1 netmask $M1 gw $G1o # HOST C ifconfig eth0 $C netmask $M2 route add –net $R1 netmask $M1 gw $G2i
Redirecionamento ICMP Quando um roteador recebe um pacote, ele pode enviar uma mensagem de redirecionamento (ICMP redirect) para o transmissor, caso ele conheça um outro roteador que possa fazer a entrega com menor custo. Isso acontece por exemplo, quando o transmissor, o receptor e o roteador estão conectados na mesma rede local. A mensagem de redirecionamento cria uma nova rota no transmissor. SWITCH 2. Redirecionamento A B 3. Nova rota criada em A 1. Pacote destinado a B 4. Pacote entregue diretamente a B
Roteamento sem Redirecionamento Nos roteadores: sysctl –w net.ipv4.ip_forward = 1 sysctl –w net.ipv4.conf.eth0.accept_redirects = 0 sysctl –w net.ipv4.conf.eth0.send_redirects = 0 sysctl –w net.ipv4.conf.all.accept_redirects = 0 sysctl –w net.ipv4.conf.all.send_redirects = 0 Nos clientes: OBS. As variáveis sysctl também são acessíveis através do diretório /proc/sys/net
Testes 1) Execute o script em todos os computadores da bancada 2) Verifique as tabelas de roteamento 3) Verifique a comunicação entre A e B e entre A e C
Exercício 2 Altere o script utilizando os novos endereços, conforme indicado abaixo 192.168.A.0/25 192.168.A.128/25 B 192.168.A.3 rede 1 rede 2 192.168.A.1 192.168.A.129 A G1 G2 C 192.168.A.2 192.168.A.130 10.26.135.x/17 10.26.135.y/17
Exercício 3 Altere o script utilizando os novos endereços e o conceito da rota default. 192.168.A.0/25 192.168.A.128/25 B 192.168.A.3 rede 1 rede 2 192.168.A.1 192.168.A.129 A G1 G2 C 192.168.A.2 192.168.A.130 10.26.135.x/17 10.26.135.y/17