Vamos a poner un ejemplo sencillo. Supongamos una red muy simple, con un único servidor ISA, con dos tarjetas de red:
- Una tarjeta de red externa, con direccionamiento IP 192.168.1.0/24. A través de esta interfaz, se consigue acceso a Internet.
- Una tarjeta de red interna, con direccionamiento IP 10.0.0.0/24.
Todos los equipos clientes, tienen configurado como puerta de enlace (Gateway) la IP interna de ISA Server, en particular, la dirección IP 10.0.0.1 (doy por hecho, que también son capaces de resolver nombres DNS externos, es decir, nombres DNS de Internet). De este modo, los equipos clientes pueden salir a Internet como clientes SecureNat, al margen, de que también podrían salir a Internet como clientes Firewall o Proxy. Pero en nuestro caso de ejemplo, son clientes SecureNat.
Pasado un tiempo, la empresa de nuestro ejemplo ha crecido, y necesita incorporar dos segmentos de red adicionales, a los cuales se llega a través de un nuevo router ubicado en la red interna (este router podría ser otra servidor ISA, pero para no liarnos, pensemos que es un router corriente). Los segmentos de red que se han incorporado son los siguientes:
- Segmento 10.0.1.0/24.
- Segmento 10.0.2.0/24.
De tal modo, que el router utilizado dispone de tres interfaces, con el siguiente direccionamiento IP: 10.0.0.2, 10.0.1.1, y 10.0.2.1. Además, este router tiene configurada como puerta de enlace la dirección IP del ISA Server, en particular, la 10.0.0.1.
Así, todos los clientes del segmento 10.0.1.0/24 utilizan como puerta de enlace la dirección IP 10.0.1.1, y todos los clientes del segmento 10.0.2.0/24 utilizan como puerta de enlace la dirección IP 10.0.2.1.
El escenario en cuestión, queda como se muestra en la siguiente imagen:
Sin embargo, los equipos clientes del segmento 10.0.0.0/24 no saben como llegar a las dos nuevas subredes internas, y el servidor ISA (que es su puerta de enlace) tampoco. ¿Qué pasos hay que seguir ahora para conseguir que ISA Server sea capaz de enrutar tráfico de las nuevas subredes remotas? Pues los siguientes:
- Agregar dos rutas persistente en el servidor ISA para indicarle como llegar a las subredes remotas, utilizando el comando route add desde una ventana de símbolo del sistema (ej: route add -p 10.0.1.0 mask 255.255.255.0 10.0.0.2 y route add -p 10.0.2.0 mask 255.255.255.0 10.0.0.2).
- Modificar la interfaz interna de ISA Server para incluir las dos nuevas subredes remotas internas. Esta configuración la realizaremos con la herramienta administrativa ISA Server Management. Para ello, seleccionaremos el nodo Networks, y desde la pestaña Networks, editaremos las propiedades de la Red Internal.
Seguidamente, en el diálogo de Propiedades, en la pestaña Addresses, dejaremos configuradas las Subredes internas de nuestra red, tanto las locales (conectadas directamente a través de una red) como las remotas (aquellas a las que se accede a través de un router, gracias a las rutas persistentes que acabamos de crear).
- Agregar una regla para permitir el tráfico con las nuevas subredes remotas. No nos olvidemos de que ISA Server es un Firewall. Por lo tanto, deberemos crear una nueva Regla de Acceso, utilizando la herramienta administrativa ISA Server Management, desde el nodo Firewall Policy.
Seguiremos los pasos del asistente de creación de la nueva Regla de Acceso, seleccionando el tipo de acción (Permitir o Denegar, es decir, Allow o Deny, y en nuestro caso concreto Allow), el tipo de tráfico al que se aplica la regla (seleccionar All outbound traffic, o bien, los protocolos específicos que se deseen), seleccionar el Origen y Destino al que se aplica la regla (la forma más sencilla es utilizar Internal tanto como Origen como Destino), seleccionar los usuarios a que se aplica la regla (la forma más sencilla, utilizar All user), y finalmente crear la regla y aplicar los cambios.
Realizados estos pasos, la comunicación entre dos dispositivos de red cualquiera de nuestro escenario, será posible, siempre y cuando no exista una regla de el ISA Server que se aplique denegando dicho tráfico.
Por último, aunque esta configuración la he probado sobre ISA Server 2004, evidentemente funcionará también en ISA Server 2006. Del mismo modo, entiendo que si en vez de utilizar enrutamiento estático en base a rutas persistentes, se hubiese utilizado enrutamiento dinámico en base a protocolos de enrutamiento (ej: RIP), el resultado debería haber sido idéntico.