GRE - Configuración
GRE (Generic Routing Encapsulation) crea un túnel punto a punto que encapsula tráfico de casi cualquier protocolo (incluidos enrutamiento dinámico IGP y multicast) y lo transporta sobre una red IP, como si los dos routers estuvieran conectados por un cable virtual. GRE no cifra: para proteger el túnel se combina con IPSec (ver GRE over IPSec - Configuración). La validación está en GRE - Verificación y el diagnóstico en GRE - Troubleshooting. Se relaciona con Rutas estáticas - Configuración y IPSec - Configuración.
Prerrequisitos
- Alcance IP entre las direcciones que serán origen y destino del túnel (normalmente las IP públicas/WAN de cada router, a través del ISP).
- Un esquema de direccionamiento para la red del túnel (por ejemplo 192.168.20.0/24).
- Un método para enrutar las LAN remotas por el túnel (ruta estática o un IGP).
Conceptos previos (mínimos)
- El túnel tiene dos “puntas”: tunnel source (interfaz o IP local por donde sale) y tunnel destination (IP pública del otro extremo).
- La interface tunnel tiene su propia IP (la red del túnel); se comporta como un enlace directo entre los dos routers.
tunnel mode gre ipes el modo por defecto (no hace falta escribirlo salvo para volver a él).- GRE añade 24 bytes de encabezado; para evitar fragmentación se ajusta
ip mtu 1400yip tcp adjust-mss 1360. - Ventaja clave sobre IPSec puro: por el túnel GRE sí pueden correr OSPF/EIGRP y multicast, y aparece una interface “Tunnel” enrutable en la tabla.
Pasos de configuración (en cada extremo):
- Crear la interface tunnel y darle IP (red del túnel).
- Definir origen y destino del túnel (las IP WAN).
- Ajustar MTU/MSS para evitar fragmentación.
- Enrutar las redes remotas por el túnel.
Comandos de configuración
De tu diapositiva (interfaz de túnel en R1, con origen/destino y ajuste de MTU):
R1(config)# interface tunnel 1
R1(config-if)# ip address 192.168.20.1 255.255.255.0
R1(config-if)# tunnel source fastEthernet 0/0
R1(config-if)# tunnel destination 10.10.20.1
R1(config-if)# tunnel mode gre ip
R1(config-if)# ip mtu 1400
R1(config-if)# ip tcp adjust-mss 1360
interface tunnel <n>: crea la interfaz virtual del túnel.ip address <ip> <máscara>: IP del túnel (misma subred en ambos extremos).tunnel source <interfaz|ip>: por dónde sale el túnel (la IP local hacia el ISP).tunnel destination <ip>: la IP pública del otro extremo.tunnel mode gre ip: modo GRE sobre IP (por defecto).ip mtu 1400: reduce la MTU de IP en el túnel por el overhead de GRE.ip tcp adjust-mss 1360: ajusta el MSS de las sesiones TCP para que no se fragmenten.
Añadido pro:
keepalive <seg> <reintentos>en la interface tunnel detecta si el otro extremo cae y baja el line protocol del túnel (útil para que el enrutamiento reaccione). El destino del túnel debe ser alcanzable por la tabla de rutas subyacente (ruta al ISP), o el túnel no sube.
Dos ejemplos completos de configuración
Topología: R1 (oficina central, LAN 192.168.10.0/24, WAN Fa0/0 10.10.10.1) — ISP — R3 (sucursal, LAN 172.16.30.0/24, WAN Fa1/0 10.10.20.1). Túnel 192.168.20.0/24 (R1 = .1, R3 = .2).
Ejemplo 1 — R1: túnel GRE + ruta estática a la LAN remota
R1# configure terminal
! Interface del túnel
R1(config)# interface tunnel 1
R1(config-if)# ip address 192.168.20.1 255.255.255.0
R1(config-if)# tunnel source fastEthernet 0/0
R1(config-if)# tunnel destination 10.10.20.1
R1(config-if)# ip mtu 1400
R1(config-if)# ip tcp adjust-mss 1360
R1(config-if)# exit
! Alcanzar la LAN de la sucursal por el túnel
R1(config)# ip route 172.16.30.0 255.255.255.0 192.168.20.2
R1(config)# end
R1# copy running-config startup-config
Ejemplo 2 — R3: extremo espejo con keepalive
R3# configure terminal
R3(config)# interface tunnel 1
R3(config-if)# ip address 192.168.20.2 255.255.255.0
R3(config-if)# tunnel source fastEthernet 1/0
R3(config-if)# tunnel destination 10.10.10.1
R3(config-if)# ip mtu 1400
R3(config-if)# ip tcp adjust-mss 1360
R3(config-if)# keepalive 10 3
R3(config-if)# exit
! Ruta hacia la LAN de la oficina central por el túnel
R3(config)# ip route 192.168.10.0 255.255.255.0 192.168.20.1
R3(config)# end
R3# write memory
Al tener una interface Tunnel enrutable, en lugar de rutas estáticas podrías activar un IGP (OSPF/EIGRP) sobre la red 192.168.20.0/24 y las LAN se aprenderían dinámicamente por el túnel.
Verificación rápida (comprobar que quedó bien)
La validación detallada está en GRE - Verificación.
! Estado del túnel
R1# show ip interface brief | include Tunnel
R1# show interfaces tunnel 1
! Probar el túnel de extremo a extremo
R1# ping 192.168.20.2
Qué deberías ver:
- El túnel en
up/upenshow ip interface brief. show interfaces tunnel 1conTunnel source 10.10.10.1, destination 10.10.20.1yTunnel protocol/transport GRE/IP.- Ping exitoso a la IP del túnel del otro extremo (192.168.20.2).
Todos los comandos de tu diapositiva están incluidos (interface tunnel, ip address, tunnel source, tunnel destination, ip mtu, ip tcp adjust-mss; el modo GRE es el por defecto). El
keepalivey el uso de IGP sobre el túnel son complemento. Para cifrar este túnel, ver GRE over IPSec - Configuración.