Los estándares IPsec definen dos modos distintos de funcionamiento de IPsec, el modo transporte y el modo túnel. Dichos modos no afectan a la codificación de paquetes. Los paquetes están protegidos por AH, ESP, o ambos en cada modo. Los modos aplican la directiva de un modo distinto cuando el paquete interior es un paquete IP, como en el caso siguiente:
En modo transporte, el encabezado exterior determina la directiva IPsec que protege el paquete IP interior.
En modo túnel, el paquete IP interior determina la directiva IPsec que protege su contenido.
En modo transporte, pueden utilizarse el encabezado exterior, el encabezado siguiente y los puertos que admita el siguiente encabezado para determinar la directiva IPsec. En efecto, IPsec puede aplicar diferentes directivas de modo de transporte entre dos direcciones IP hasta la granularidad de un único puerto. Por ejemplo, si el siguiente encabezado es TCP, que admite puertos, la directiva IPsec se puede configurar para un puerto TCP de la dirección IP exterior. De modo similar, si el siguiente encabezado es un encabezado IP, se pueden utilizar el encabezado exterior y el encabezado IP interior para determinar la directiva IPsec.
El modo túnel sólo funciona para los datagramas de IP en IP. El uso de túneles en modo túnel puede ser útil cuando los usuarios se conecten desde casa a un equipo central. En modo túnel, la directiva IPsec se aplica en el contenido del datagrama IP interior. Se pueden aplicar diferentes directivas IPsec para distintas direcciones IP interiores. Es decir, el encabezado IP interior, su encabezado siguiente y los puertos que admite el siguiente encabezado pueden aplicar una directiva. A diferencia del modo transporte, en el modo túnel el encabezado IP exterior no dicta la directiva de su datagrama IP interior.
Por tanto, en modo túnel, la directiva IPsec se puede especificar para las subredes de una LAN detrás de un enrutador y para puertos de dichas subredes. La directiva IPsec también se puede especificar para una dirección IP concreta, es decir, hosts de esas subredes. Los puertos de dichos hosts también pueden tener una directiva IPsec específica. Sin embargo, si se ejecuta un protocolo de enrutamiento dinámico por un túnel, no utilice la selección de subredes o la sección de direcciones, porque la vista de la topología de red en la red equivalente podría cambiar. Los cambios invalidarían la directiva IPsec estática. Para ver algunos ejemplos de procedimientos de túnel que incluyen la configuración de rutas estáticas, consulte Protección de una VPN con IPsec.
En SO Solaris, el modo túnel puede aplicarse sólo en una interfaz de red de túneles IP. El comando ipsecconf proporciona una palabra clave tunnel para seleccionar una interfaz de red de túneles IP. Cuando la palabra clave tunnel está presente en una regla, todos los selectores específicos de dicha regla se aplican al paquete interior.
En modo transporte, ESP, AH, o ambos, pueden proteger el datagrama.
La figura siguiente muestra un encabezado IP con un paquete TCP sin proteger.
En modo transporte, ESP protege los datos tal como se muestra en la figura siguiente. El área sombreada muestra la parte cifrada del paquete.
En modo transporte, AH protege los datos como se muestra en la figura siguiente.
AH cifra los datos antes de que aparezcan en el datagrama. En consecuencia, la protección que proporciona AH, incluso en el modo transporte, cifra parte del encabezado IP.
En modo túnel, todo el datagrama está dentro de la protección de un encabezado IPsec. El datagrama de la Figura 19–3 está protegido en modo túnel por otro encabezado IPsec exterior, en este caso ESP, tal como se muestra en la figura siguiente.
El comando ipsecconf incluye palabras clave para configurar túneles en modo túnel o en modo transporte.
Para obtener detalles sobre la directiva por socket, consulte la página del comando man ipsec(7P).
Si desea ver un ejemplo de la directiva por socket, consulte Cómo utilizar IPsec para proteger un servidor web del tráfico que no procede de Internet.
Para más información acerca de los túneles, consulte la página del comando man ipsecconf(1M).
Para ver un ejemplo de configuración de túnel, consulte Cómo proteger una VPN con un túnel IPsec en modo túnel mediante IPv4.