Aulas 56 / 57 – TEC 11ºF Redes de computadores Prof. António dos Anjos Routing – O host “cliente” Como é que um host sabe qual o router a utilizar? Cada host tem uma tabela de routing; A tabela é constituída por endereços de rede ou de “hosts destino” e pelo endereço do router que pode encaminhar pacotes para o destino; Por exemplo: Destino Router 192.168.10.0 10.0.0.254 192.168.8.223 10.0.0.253 Default 10.0.0.138 Routing – O host “cliente” (2) Só se o endereço IP for remoto: Na tentativa de se descobrir o router ao qual se entregará o pacote: É feita uma pesquisa na tabela de routing, na busca de uma entrada que corresponda a esse mesmo IP; Se a entrada correspondente ao host pretendido não existir na tabela de routing, verifica-se se existe o IP que identifique a rede à qual pertence o host pretendido; Se também não existir, procura-se a entrada que identifique o router por omissão (default). É também conhecido por default gateway. Exercício Atribua endereços IP válidos a cada um dos routers do diagrama do slide seguinte, tendo em conta que se trata de uma rede privada? Crie as tabelas de routing de um computador em cada rede, tendo em conta o menor número de hops. Diagrama Solução A (por exemplo) Solução B Tabela da rede 10.0.0.0: Destino Router 192.168.0.0 10.5.24.254 172.17.0.0 10.0.0.254 Tabela da rede 192.168.0.0: Destino Router 10.0.0.0 192.168.0.254 172.17.0.0 192.168.0.254 Ou default 192.168.0.254 Tabela da rede 172.17.0.0: Destino Router 10.0.0.0 172.17.0.254 192.168.0.0 172.17.0.254 Ou default 172.17.0.254 Resolução de endereços (IP / MAC) Quando queremos comunicar com um computador, o que é essencial saber? Mas, o que determina o destinatário de um frame? IP Address (endereço lógico); O MAC Address! (endereço físico) Problema: Quando queremos enviar um datagrama (nível de rede), apenas temos o IP Address (endereço lógico); Como saber qual o MAC de destino a colocar no frame? Resolução do Endereço de Hardware ARP – Address Resolution Protocol O “perguntar o MAC Addr” (slide anterior) é feito pelo ARP; Definido no RFC 825 em Novembro de 1982; Pertence à Camada de Rede; O protocolo ARP é um protocolo que “resolve” endereços lógicos em endereços físicos (IP >> MAC); Após um endereço ter sido resolvido, este é mantido, por um curto período de tempo, numa tabela (normalmente 20 minutos para resoluções bem sucedidas e 3 minutos para resoluções falhadas). A tabela onde estão guardadas as entradas resolvidas, que fazem a correspondência entre os endereços IP e os repectivos endereços de hardware (MAC addresses), chama-se ARP Cache. ARP - Formato Tipo HW Tipo Proto Tam HW Tam Proto Código OP 2 bytes 2 bytes 1 byte 1 byte 2 bytes Endereço HW Remetente Endereço Lógico Remetente Endereço HW Destinatário Tipo Hardware – Tipo de endereço físico (0x0001 para endereço Ethernet); Tipo Protocolo – Tipo de endereço lógico (0x0800 para endereço IP); Tamanho HW – Tamanho em bytes do endereço físico; Qual o valor em Hex para Ethernet? Endereço Lógico Destinatário 0x06; Tamanho Protocolo – Tamanho em bytes do endereço lógico; Qual o valor em Hex para IP? 0x04; Código Operação – Indica o tipo de operação (0x001 – ARP Request; 0x002 – ARP Reply; 0x003 – RARP Request; 0x004 – RARP Reply); Endereço HW Remetente/Destinatário – Endereço físico do host remetente/destinatário; Endereço Lógico Remetente/Destinatário – Endereço lógico do host remetente/destinatário; ARP Request A pergunta “Quem é que tem o endereço IP xxx.xxx.xxx.xxx?” chama-se ARP Request; Campo Código OP = 0x0001; O pedido (request) ARP é encapsulado no: Frame Ethernet (no caso do TCP/IP Suite). Problema: O Frame Ethernet tem que ter preenchido o campo MAC de Destino! Qual é o valor que se coloca lá? 00:00:00:00:00:00? NÃO!!! ARP Request (2) O endereço hardware de destino de um frame que contenha um ARP Request é sempre: FF:FF:FF:FF:FF:FF; Porquê? É o endereço de broadcast (para todos) ao nível da camada de ligação; Todos os hosts têm de aceitar; Quem responde? Apenas o host que tem o IP em questão.