Roteamento IP
Roteamento de Pacotes [1]
O roteamento de pacotes é uma das principais funções da camada rede da Internet. O protocolo IP assume que um computador é capaz de enviar datagramas a qualquer outro computador conectado a mesma rede local. Caso o destinatário não esteja na mesma rede, parte da função de roteamento é transferida para os roteadores.
Os roteadores (ou gateways) podem ser equipamentos específicos ou computadores normais que possuem mais de uma interface de rede.
O roteamento no IP baseia-se exclusivamente no identificador de rede do endereço destino. Cada roteador possui uma tabela, chamada tabela de roteamento, cujas entradas são pares:
Endereço da rede destino / Endereço do próximo roteador
Por exemplo, quando um computador deseja enviar um datagrama, inicialmente ele verifica se o destinatário está conectado a rede local. Se for o caso, ele entrega o datagrama a interface de rede que se encarrega de mapear o IP no endereço físico do computador destino, encapsular o datagrama IP em um quadro da rede e transmiti-lo. Caso o computador destino não se encontre na rede local, ele envia o datagrama ao roteador padrão (gateway default) da rede local. O roteador procura na sua tabela de roteamento o endereço do roteador que deve ser usado para alcançar a rede onde está conectado o destinatário do datagrama. O roteador encontrado pode não fazer parte da rede destino, mas, deve fazer parte do caminho a ser percorrido para alcançá-la.
Veja um exemplo de como funcionam as tabelas de roteamento, considerando a rede apresentada na figura:
Suponha que o computador A (200.1.1.1) tenha a tabela de roteamento dada na tabela a seguir e deseja enviar um datagrama IP ao computador B (200.1.1.2). Neste caso, o computador consulta sua tabela de roteamento e descobre que a rede 200.1.1.0/24 casa com o identificador da rede do computador B. A tabela indica que o próximo roteador é 0.0.0.0, o que quer dizer que está na mesma rede local. Então o computador A passa o datagrama diretamente a camada enlace através da interface eth0 para proceder à entrega ao computador B.
Tabela de Roteamento do computador A Destino Roteador Máscara Interface 200.1.1.0 0.0.0.0 255.255.255.0 0 eth0 200.1.2.0 200.1.1.3 255.255.255.0 0 eth0 200.1.3.0 200.1.1.3 255.255.255.0 0 eth0
Suponha agora o caso em que o computador A queira enviar um datagrama ao computador C (200.1.3.2), situado em outra rede, no caso a rede 200.1.3.0/24. Consultando sua tabela de roteamento ele verifica que esta rede é acessível a partir do roteador 200.1.1.3. Então ele passa o datagrama ao roteador para dar prosseguimento a entrega, o qual também é acessível a partir da interface eth0.
O roteador então consulta sua tabela de roteamento (veja tabela abaixo) e verifica que a rede 200.1.3.0/24 é acessível diretamente através da sua interface eth2. Sendo assim, ele entrega o datagrama a camada de enlace da rede 200.1.3.0/24 para fazer a entrega ao computador C.
Tabela de Roteamento do roteador R Destino Roteador Máscara Interface 200.1.1.0 0.0.0.0 255.255.255.0 0 eth0 200.1.2.0 0.0.0.0 255.255.255.0 0 eth1 200.1.3.0 0.0.0.0 255.255.255.0 0 eth2
Comando route
O comando route mostra e manipula tabelas de roteamento no Linux.
Para verificar a tabela de roteamento do computador, executar o comando:
route -n
O parâmetro -n imprime os endereços IP no formato numérico.
- Exemplo
evandro@NBP-EVANDRO:/etc$ route -n Tabela de Roteamento IP do Kernel Destino Roteador MáscaraGen. Opções Métrica Ref Uso Iface 0.0.0.0 192.168.0.1 0.0.0.0 UG 0 0 0 wlan0 192.168.0.0 0.0.0.0 255.255.255.0 U 2 0 0 wlan0
- Na primeira linha o destino 0.0.0.0 indica uma rota default, ou qualquer IP diferente da rede local -> Para tal a saída é o roteador padrão 192.168.0.1.
- Na segunda linha o destino 192.168.0.0 indica a rede local -> Para tal, o roteador 0.0.0.0 indica que não há necessidade de roteamento pois o destino está na própria rede.
Referências
- ↑ KUROSE, J.F; ROSS K. W. Redes de Computadores e a Internet: Uma abordagem top-down, São Paulo: Pearson, 2010.
--Evandro.cantu (discussão) 14h17min de 1 de agosto de 2014 (BRT)