Una red de redes está formada por redes interconectadas mediante routers o encaminadores. Cuando enviamos un datagrama desde un ordenador hasta otro, éste tiene que ser capaz de encontrar la ruta más adecuada para llegar a su destino. Esto es lo que se conoce como encaminamiento.
Los routers (encaminadores) son los encargados de elegir las mejores rutas. Estas máquinas pueden ser ordenadores con varias direcciones IP o bien, aparatos específicos.
Los routers deben conocer, al menos parcialmente, la estructura de la red que les permita encaminar de forma correcta cada mensaje hacia su destino. Esta información se almacena en las llamadas tablas de encaminamiento.
Observemos que debido al sistema de direccionamiento IP esta misión no es tan complicada. Lo único que necesitamos almacenar en las tablas son los prefijos de las direcciones (que nos indican la red). Por ejemplo, si el destino es la máquina 149.33.19.4 con máscara 255.255.0.0, nos basta con conocer el encaminamiento de la red 149.33.0.0 ya que todas las que empiecen por 149.33 se enviarán hacia el mismo sitio.
La orden route muestra y modifica la tabla de encaminamiento de un host. Todos los hosts (y no sólo los routers) tienen tablas de encaminamientos. A continuación se muestra una tabla sencilla para un host con IP 192.168.0.2 / 255.255.255.0 y puerta de salida 192.168.0.1.
C:\> route print
Rutas activas:
Dirección de red Máscara de red Puerta de enlace Interfaz Métrica
0.0.0.0 0.0.0.0 192.168.0.1 192.168.0.2 1 (7)
127.0.0.0 255.0.0.0 127.0.0.1 127.0.0.1 1 (6)
192.168.0.0 255.255.255.0 192.168.0.2 192.168.0.2 1 (5)
192.168.0.2 255.255.255.255 127.0.0.1 127.0.0.1 1 (4)
192.168.0.255 255.255.255.255 192.168.0.2 192.168.0.2 1 (3)
224.0.0.0 224.0.0.0 192.168.0.2 192.168.0.2 1 (2)
255.255.255.255 255.255.255.255 192.168.0.2 0.0.0.0 1 (1)
Estas tabla se lee de abajo a arriba. La línea (1) indica que los datagramas con destino «255.255.255.255» (dirección de difusión a la red del host) deben ser aceptados. La línea (2) representa un grupo de multidifusión (multicasting). La dirección «224.0.0.0» es una dirección de clase D que se utiliza para enviar mensajes a una colección de hosts registrados previamente. Estas dos líneas se suelen pasar por alto: aparecen en todas las tablas de rutas.
La línea (3) indica que todos los mensajes cuyo destinatario sea «192.168.0.255» deben ser aceptados (es la dirección de difusión a la red del host). La línea (4) se encarga de aceptar todos los mensajes que vayan destinados a la dirección del host «192.168.0.2».
La línea (5) indica que los mensajes cuyo destinatario sea una dirección de la red del host «192.168.0.0 / 255.255.255.0» deben salir del host por su tarjeta de red para que se entreguen directamente en su subred. La línea (6) es la dirección de loopback: todos los paquetes con destino «127.0.0.0 / 255.0.0.0» serán aceptados por el propio host.
Finalmente, la línea (7) representa a «todas las demás direcciones que no se hayan indicado anteriormente». En concreto son aquellas direcciones remotas que no pertenecen a la red del host. ¿A dónde se enviarán? Se enviarán a la puerta de salida (gateway) de la red «192.168.0.1».
Nótese que la tabla de rutas es la traducción de la configuración IP del host que habitualmente se escribe en las ventanas de Windows.