{"id":11670,"date":"2023-02-22T11:21:41","date_gmt":"2023-02-22T14:21:41","guid":{"rendered":"https:\/\/made4it.com.br\/tunel-gre-ipsec-entre-cisco-ios-y-huawei-ne40\/"},"modified":"2023-03-08T10:43:43","modified_gmt":"2023-03-08T13:43:43","slug":"tunel-gre-ipsec-entre-cisco-ios-y-huawei-ne40","status":"publish","type":"post","link":"https:\/\/made4it.com.br\/es\/tunel-gre-ipsec-entre-cisco-ios-y-huawei-ne40\/","title":{"rendered":"T\u00fanel GRE + IPSec entre Cisco IOS y Huawei NE40"},"content":{"rendered":"\n          \n\n          <p>En este post vamos a discutir un escenario muy com\u00fan (y poco documentado), que consiste en utilizar un t\u00fanel GRE protegido con IPSec entre un router Cisco IOS ASR1002 y un router Huawei NE40.<\/p>\n          \n\n          <p>La topolog\u00eda de este ejemplo se describe a continuaci\u00f3n. Se ha mantenido simple para que podamos discutir los detalles de GRE+IPSEC, sin entrar en los otros puntos de la red.<\/p>\n          \n\n          <p>En ella tenemos el router Cisco con direcci\u00f3n IP p\u00fablica 198.51.100.2 y el router Huawei NE40 con IP p\u00fablica 203.0.113.66. Ambos est\u00e1n conectados a Internet, y con conectividad entre ellos. Necesitamos establecer un t\u00fanel GRE entre los routers y protegerlo mediante IPSec en modo t\u00fanel. La direcci\u00f3n del t\u00fanel es 172.31.31.0\/30.<\/p>\n          \n\n        \n\n<figure class=\"wp-block-image size-full is-resized\"><a href=\"https:\/\/www.made4it.com.br\/wp-content\/uploads\/2023\/02\/Camada-3.jpg\"><img fetchpriority=\"high\" decoding=\"async\" src=\"https:\/\/www.made4it.com.br\/wp-content\/uploads\/2023\/02\/Camada-3.jpg\" alt=\"\" class=\"wp-image-2401\" width=\"560\" height=\"96\"\/><\/a><\/figure>\n\n<p><\/p>\n\n          \n\n          <p>A continuaci\u00f3n hablaremos de GRE e IPSec. El objetivo no es detallar por completo estos protocolos, sino ofrecer una visi\u00f3n general y, principalmente, una base para el resto del art\u00edculo. No te precipites, hay informaci\u00f3n muy relevante entre medias.<\/p>\n          \n\n          <p>\n            <strong>GRE<\/strong>\n          <\/p>\n          \n\n          <p>Generic Routing Encapsulation (GRE) es un protocolo de tunelizaci\u00f3n que puede encapsular diversos protocolos de red (por ejemplo, ATM, IPX, IPv6 e incluso IPv4) dentro de paquetes IPv4. Estos paquetes pueden transmitirse a trav\u00e9s de redes IPv4 comunes (por ejemplo, Internet).<\/p>\n          \n\n          <p>Algunos casos de uso del GRE:<br>interconexi\u00f3n de redes internas desconectadas<br>interconexi\u00f3n de redes IPv6 aisladas a trav\u00e9s de redes IPv4<br>establecer la comunicaci\u00f3n entre la sede central y las sucursales a trav\u00e9s de Internet<br>enlaces de mitigaci\u00f3n  <br>con VPN cuando se requieren protocolos de enrutamiento<\/p>\n          \n\n          <p>\n            <br>\n            <strong>IPSEC<\/strong>\n          <\/p>\n          \n\n          <p>IPSec es un marco de seguridad desarrollado por el IETF que trata de resolver problemas de seguridad que el protocolo IPv4 no pudo solucionar, como el cifrado, la integridad de los datos, la validaci\u00f3n de fuentes y la antirrepetici\u00f3n.  <br>En realidad, IPSec no es un \u00fanico protocolo, sino una combinaci\u00f3n de protocolos y algoritmos. Los principales son IKEv1, IKEv2, ESP y AH.<\/p>\n          \n\n          <p>IPSec se utiliza ampliamente en las VPN, tanto de acceso remoto como de sitio a sitio.<\/p>\n          \n\n          <p>En el ciclo de vida de un t\u00fanel, tenemos 5 etapas bien definidas:<\/p>\n          \n\n          <ol>\n            \n\n            <li><strong>Definici\u00f3n de tr\u00e1fico interesante<\/strong><br>El tr\u00e1fico interesante es el desencadenante que provoca el establecimiento del t\u00fanel. El router o cortafuegos, al detectar tr\u00e1fico interesante, inicia los siguientes pasos de la negociaci\u00f3n IPSec.  <br>El tr\u00e1fico de inter\u00e9s suele configurarse en forma de ACL, o pol\u00edticas de tr\u00e1fico.<br><br><\/li>\n            \n\n            <li><strong>IKE fase 1<\/strong><br>En la fase 1, el protocolo establece un canal de comunicaci\u00f3n seguro con el hom\u00f3logo remoto. Una vez establecido este canal seguro, se permiten los intercambios de mensajes de fase 2.<br>Es en la fase 1 cuando se protegen los peers, se autentican y se comparan las pol\u00edticas ISAKMP (y tienen que coincidir). Hay dos modos, principal y agresivo.<br><br>T\u00e9rminos que ver\u00e1s sobre la fase 1: ike, isakmp, grupo DH, clave precompartida, integridad, pol\u00edtica isakmp<br><br><\/li>\n            \n\n            <li><strong>IKE fase 2<\/strong><br>En esta fase, ya con el t\u00fanel seguro protegido establecido en la fase 1, podemos negociar lo que llamamos SAs IPSec, que no son m\u00e1s que los \u00abcontratos\u00bb del tipo de tr\u00e1fico que ser\u00e1 protegido por el t\u00fanel IPSec, negociados din\u00e1micamente. Un ejemplo podr\u00eda ser \u00abProteger\u00e9 el tr\u00e1fico de la red 192.168.1.0\/24 cuando el destino sea 192.168.2.0\/24 utilizando el algoritmo de cifrado X y el algoritmo de autenticaci\u00f3n Y\u00bb, y el peer remoto hace la regla en sentido contrario.<br><br>Otra funci\u00f3n de la fase 2 es mantener las SAs, as\u00ed como expirar claves y sesiones si se alcanza alg\u00fan par\u00e1metro (ej: expirar SAs y negociar nuevas cada x horas, o cada N kilobytes).<br><br>T\u00e9rminos que veremos sobre la fase 2: ipsec, ipsec sa, crypto acl, transform set, mode tunnel, authentication, encryption, ipsec policy<br><br><\/li>\n            \n\n            <li><strong>Transferencia de datos<\/strong><br>Esta fase es la transferencia de datos propiamente dicha. Una vez que el tr\u00e1fico interesante llega al router, y se completan las fases 1 y 2, los paquetes se env\u00edan de acuerdo con los contratos establecidos en IPSec SA, y se transmiten al peer remoto.<br><br><\/li>\n            \n\n            <li><strong>Cierre del t\u00fanel<\/strong><br>El cierre del t\u00fanel se produce por un proceso manual, o cuando alg\u00fan par\u00e1metro IPSec expira o alcanza su l\u00edmite. En este caso, se descartan todas las claves, se deshacen los contratos y, si es necesario reenviar tr\u00e1fico, hay que establecer un nuevo t\u00fanel IPSec.<\/li>\n            \n\n          <\/ol>\n          \n\n          <p>Para m\u00e1s detalles sobre GRE e IPSEC, consulte las referencias citadas al final del art\u00edculo.<\/p>\n          \n\n          <p>\n            \n          <\/p>\n          \n\n          <p>\n            <strong>Las configuraciones GRE e IPSEC acordadas entre las Partes<\/strong>\n          <\/p>\n          \n\n          <p>El siguiente ejemplo muestra c\u00f3mo se acuerda la informaci\u00f3n de la VPN. Suelen ser formularios que se rellenan con informaci\u00f3n sobre el t\u00fanel.<\/p>\n          \n\n          <table>\n            \n\n            <tbody>\n              \n\n              <tr>\n                \n\n                <td>\n                  \n\n                  <p style=\"text-align: center;\">\n                    <b>Dispositivo VPN<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <b>Sitio A Dispositivo VPN<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <b>Sitio B Dispositivo VPN<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td>\n                  \n\n                  <p style=\"text-align: center;\">\n                    <b>Direcci\u00f3n IP del par VPN *<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p style=\"text-align: center;\">\n                    <span style=\"font-weight: 400;\">198.51.100.2<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">203.0.113.66<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <b>Dispositivo *<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">Cisco ASR 1004<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td>\n                  \n\n                  <p style=\"text-align: center;\">\n                    <span style=\"font-weight: 400;\">Huawei NE40-M2K<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td>\n                  \n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <b>Versi\u00f3n *<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">V3.0.6<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">&lt;COOL_VERSEO&gt;<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td>\n                  \n                <\/td>\n                \n\n                <td>\n                  \n                <\/td>\n                \n\n                <td>\n                  \n                <\/td>\n                \n\n                <td>\n                  \n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td>\n                  \n                <\/td>\n                \n\n                <td>\n                  \n                <\/td>\n                \n\n                <td>\n                  \n                <\/td>\n                \n\n                <td>\n                  \n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td colspan=\"2\">\n                  \n\n                  <p style=\"text-align: center;\">\n                    <b>Propiedades del t\u00fanel<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <b>Sitio A Dispositivo VPN<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <b>Sitio B Dispositivo VPN<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td rowspan=\"7\">\n                  \n\n                  <p style=\"text-align: center;\">\n                    <b>Fase 1<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p style=\"text-align: center;\">\n                    <b>M\u00e9todo de autenticaci\u00f3n<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">&lt;Clave precompartida&gt;<\/span>\n                  <\/p>\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">APasswordWellS3gur@<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">&lt;Clave precompartida&gt;<\/span>\n                  <\/p>\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">APasswordWellS3gur@<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td>\n                  \n\n                  <p style=\"text-align: center;\">\n                    <b>Versi\u00f3n de IKE<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">IKEv2<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td>\n                  \n\n                  <p style=\"text-align: center;\">\n                    <span style=\"font-weight: 400;\">IKEv2<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td>\n                  \n\n                  <p style=\"text-align: center;\">\n                    <b>Grupo Diffie-Hellman<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">grupo 14<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">grupo 14<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <b>Algoritmo de cifrado *<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">AES 256<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td>\n                  \n\n                  <p style=\"text-align: center;\">\n                    <span style=\"font-weight: 400;\">AES 256<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <b>Algoritmo Hashing *<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">SHA-1<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td>\n                  \n\n                  <p style=\"text-align: center;\">\n                    <span style=\"font-weight: 400;\">SHA-1<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <b>Modo principal o agresivo *<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">Modo principal<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td>\n                  \n\n                  <p style=\"text-align: center;\">\n                    <span style=\"font-weight: 400;\">Modo principal<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <b>SA Lifetime * (para renegociaci\u00f3n) sin kbytes rekeying<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">86400 segundos<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td>\n                  \n\n                  <p style=\"text-align: center;\">\n                    <span style=\"font-weight: 400;\">86400 segundos<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td rowspan=\"6\">\n                  \n\n                  <p style=\"text-align: center;\">\n                    <b>Fase 2<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td>\n                  \n\n                  <p style=\"text-align: center;\">\n                    <b>Encapsulaci\u00f3n * (ESP o AH)<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">ESP<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">ESP<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td>\n                  \n\n                  <p style=\"text-align: center;\">\n                    <b>Algoritmo de cifrado *<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">AES 256<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">  AES 256<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td>\n                  \n\n                  <p style=\"text-align: center;\">\n                    <b>Algoritmo de autenticaci\u00f3n *<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">SHA-1<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td>\n                  \n\n                  <p style=\"text-align: center;\">\n                    <span style=\"font-weight: 400;\">SHA-1<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <b>Perfect Forward Secrecy para reintroducir *<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">Discapacitados<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td>\n                  \n\n                  <p style=\"text-align: center;\">\n                    <span style=\"font-weight: 400;\">Discapacitados<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <b>Grupo Diffie-Hellman *<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">grupo 14<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td>\n                  \n\n                  <p style=\"text-align: center;\">\n                    <span style=\"font-weight: 400;\">grupo 14<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td>\n                  \n\n                  <p style=\"text-align: center;\">\n                    <b>SA Lifetime * (para renegociaci\u00f3n) ) sin kbytes rekeying<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">3600 segundos<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td>\n                  \n\n                  <p style=\"text-align: center;\">\n                    <span style=\"font-weight: 400;\">3600 segundos<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td rowspan=\"4\">\n                  \n\n                  <p style=\"text-align: center;\">\n                    <b>GRE<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td>\n                  \n\n                  <p style=\"text-align: center;\">\n                    <b>Direcci\u00f3n<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">172.31.31.1\/30<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">172.31.31.2\/30<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <b>Keepalives<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">Discapacitados<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td>\n                  \n\n                  <p style=\"text-align: center;\">\n                    <span style=\"font-weight: 400;\">Discapacitados<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td>\n                  \n\n                  <p style=\"text-align: center;\">\n                    <b>MTU<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">1400<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">1400<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n              <\/tr>\n              \n\n              <tr>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <b>Ajustar SMS<\/b>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td style=\"text-align: center;\">\n                  \n\n                  <p>\n                    <span style=\"font-weight: 400;\">1360<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n                <td>\n                  \n\n                  <p style=\"text-align: center;\">\n                    <span style=\"font-weight: 400;\">1360<\/span>\n                  <\/p>\n                  \n\n                <\/td>\n                \n\n              <\/tr>\n              \n\n            <\/tbody>\n            \n\n          <\/table>\n          \n\n        \n\n<h2 class=\"wp-block-heading\">Informaci\u00f3n importante sobre la licencia y los m\u00f3dulos<\/h2>\n\n<p>Consulte con el fabricante de su equipo para ver si no se requiere alg\u00fan tipo de tarjeta de servicio, o licencia.<\/p>\n\n<p>En el caso del equipo de este laboratorio, el router NE40-M2K no necesitaba ning\u00fan m\u00f3dulo f\u00edsico adicional, s\u00f3lo la licencia IPSec. En el router Cisco tampoco fue necesaria ninguna licencia, ya que su IOS ya estaba en ADVIPSERVICES-K9 (que contiene toda la base para Ipsec).<\/p>\n\n<p><strong>*Informaci\u00f3n \u00fatil*<\/strong>: si desea ejecutar IKEv1, en el router Huawei necesita un m\u00f3dulo de software para IKEv1 (que se obtiene del proveedor de Huawei).<\/p>\n\n<h2 class=\"wp-block-heading\">Configuraciones de Cisco IOS XE<\/h2>\n\n<p>As\u00ed que vamos a configurar el router Cisco para establecer la VPN. No entrar\u00e9 en detalles sobre las interfaces f\u00edsicas, s\u00f3lo sobre la VPN. Al final del art\u00edculo hay un bloque con su correspondiente conf.<\/p>\n\n<p>Configuraciones de la fase 1 seg\u00fan la tabla anterior:<\/p>\n\n<p><\/p>\n\n<pre class=\"wp-block-code\"><code># PROPOSAL PARA fase 1\ncrypto ikev2 proposal ikev2proposal\n encryption aes-cbc-256\n integrity sha1\n group 14\n\n# policy de fase 1\ncrypto ikev2 policy ikev2policy\n match fvrf any\n proposal ikev2proposal\n\n\n# chaveiro com as PSK\ncrypto ikev2 keyring keys\n peer site_b\n  address 203.0.113.66\n  pre-shared-key UmaSenhaBemS3gur@\n !\n\n# profile com o PEER\ncrypto ikev2 profile ikev2profile\n match identity remote address 203.0.113.66 255.255.255.255\n authentication remote pre-share\n authentication local pre-share\n keyring local keys\n<\/code><\/pre>\n\n<p>Todo lo anterior se refiere a la Fase 1. As\u00ed que cuando est\u00e9s diagnosticando problemas, y \u00e9l sea de esta etapa, ya sabes d\u00f3nde cambiar \ud83d\ude42 .<\/p>\n\n<p>Ahora preparando la fase 2:<\/p>\n\n<pre class=\"wp-block-code\"><code># confs da fase 2\ncrypto ipsec transform-set TS esp-aes 256 esp-sha-hmac\n&nbsp;mode tunnel<\/code><\/pre>\n\n<p>\u00a1Demasiado simple en Cisco! Ahora combinaremos las dos fases en un solo perfil:<\/p>\n\n<pre class=\"wp-block-code\"><code># Profile a ser usado na VPN (combina as confs de fase1 e fase2)\ncrypto ipsec profile VPN-IKEv2-IPsec-Profile\n set transform-set TS\n set ikev2-profile ikev2profile<\/code><\/pre>\n\n<p>Creaci\u00f3n del t\u00fanel GRE y adici\u00f3n de la protecci\u00f3n IPSec:<\/p>\n\n<pre class=\"wp-block-code\"><code># cria o tunnel GRE e aplica a protecao\ninterface Tunnel299\n description Tunnel Test Rafael\n bandwidth 10000\n ip address 172.31.31.1 255.255.255.252\n ip mtu 1400\n ip tcp adjust-mss 1360\n tunnel source Port-channel1.536\n tunnel destination 203.0.113.66\n tunnel protection ipsec profile VPN-IKEv2-IPsec-Profile\nend<\/code><\/pre>\n\n<h2 class=\"wp-block-heading\">Configuraciones Huawei<\/h2>\n\n<p>A continuaci\u00f3n, vamos a configurar el router Huawei para establecer la VPN. Como en el caso de Cisco, no entrar\u00e9 en detalles sobre las interfaces f\u00edsicas, s\u00f3lo sobre la VPN. Al final del art\u00edculo hay un bloque con su correspondiente conf.<\/p>\n\n<p>La configuraci\u00f3n en el router Huawei es un poco m\u00e1s compleja, ya que crea un t\u00fanel para el protocolo GRE, y un t\u00fanel para IPSec. Adem\u00e1s, queremos utilizar la misma IP para ambos t\u00faneles, por lo que se necesita un VRF. \ud83d\ude2e<\/p>\n\n<p>Creaci\u00f3n de una instancia de servicio para utilizar la VPN (s\u00f3lo aplicable en NE40):<\/p>\n\n<pre class=\"wp-block-code\"><code># Cria o service-instance-group (somente NE40)\nservice-location 1\n location slot 1\n commit\n\nservice-instance-group group1\n service-location 1<\/code><\/pre>\n\n<p>Actualizaci\u00f3n del nuevo VRF (vpn-instance):<\/p>\n\n<pre class=\"wp-block-code\"><code>ip vpn-instance vpna\n ipv4-family\n  route-distinguisher 100:1\n  apply-label per-instance\n  vpn-target 111:1 export-extcommunity\n  vpn-target 111:1 import-extcommunity<\/code><\/pre>\n\n<p>Creaci\u00f3n de las dos interfaces Loopback con la misma IP (magia VRF). El looback con el t\u00fanel IPSec estar\u00e1 en la tabla de enrutamiento p\u00fablico, mientras que el del t\u00fanel GRE estar\u00e1 en la tabla VPNA.<\/p>\n\n<pre class=\"wp-block-code\"><code># Lo da tabela global, para uso do IPSec\ninterface LoopBack1\nip address 203.0.113.66 255.255.255.255\nbinding tunnel ipsec\n\n# Lo atrelada a vrf, para uso no GRE do mesmo IP.\ninterface LoopBack10\n ip binding vpn-instance vpna\n ip address 203.0.113.66 255.255.255.255\n binding tunnel gre<\/code><\/pre>\n\n<p>Ahora llegamos a IPSec.  <\/p>\n\n<p>La ACL de tr\u00e1fico interesante define el tr\u00e1fico que ser\u00e1 protegido por IPSec. En el caso entonces, tendremos el tr\u00e1fico GRE entre las IPs del sitio A y el sitio B. Tenga en cuenta que s\u00f3lo hago la comunicaci\u00f3n en una direcci\u00f3n &#8211; la direcci\u00f3n del router proteger su tr\u00e1fico).  <\/p>\n\n<pre class=\"wp-block-code\"><code># ACL de tr\u00e1fego interessante\nacl number 3000\n rule 0 permit gre vpn-instance vpna source 203.0.113.66 0\n destination 198.51.100.2 0<\/code><\/pre>\n\n<p>El ACL anterior puede leerse as\u00ed:<\/p>\n\n<p>\n          <em>\u00abProteger los datos del protocolo GRE procedentes del VRF vpna entre el origen 203.0.113.66 y el destino 198.51.100.2\u00bb<\/em>\n        <\/p>\n\n<p>Ahora crearemos la fase 1 (recuerda que en cisco incluso se empieza por ella, mucho m\u00e1s sencillo). En el medio tiene algunos ajustes de enlace VPN-Instance, debido a la VRF creada.<\/p>\n\n<pre class=\"wp-block-code\"><code># PROPOSAL PARA fase 1\nike proposal 1\n encryption-algorithm aes-cbc 256\n dh group14\n authentication-algorithm sha1\n integrity-algorithm hmac-sha1-96\n\n# chaveiro com as PSK e peer\nike peer teste\n pre-shared-key UmaSenhaBemS3gur@adriano\n ike-proposal 1\n remote-address 198.51.100.2\n sa binding vpn-instance vpna<\/code><\/pre>\n\n<p>Todo lo anterior se refiere a la Fase 1. As\u00ed que cuando est\u00e9s diagnosticando problemas, y \u00e9l sea de esta etapa, ya sabes d\u00f3nde cambiar \ud83d\ude42 .<\/p>\n\n<p>Pasamos a la fase 2:<\/p>\n\n<pre class=\"wp-block-code\"><code># confs da fase 2\nipsec proposal comfone\n encapsulation-mode tunnel\n transform esp\n esp authentication-algorithm sha1\n esp encryption-algorithm aes 256<\/code><\/pre>\n\n<p>Ahora combinaremos las dos fases en un solo perfil:<\/p>\n\n<pre class=\"wp-block-code\"><code># policy combinando ambas as fases\nipsec policy teste 1 isakmp\n ipsec df-bit clear\n security acl 3000\n ike-peer teste\n proposal comfone\n log enable<\/code><\/pre>\n\n<p>Creaci\u00f3n de t\u00faneles GRE e IPSEC. Vamos all\u00e1 para no confundir:<\/p>\n\n<p>T\u00fanel 900 &#8211; es un t\u00fanel GRE, que opera dentro de la vpna.<\/p>\n\n<p>T\u00fanel 10 &#8211; es un t\u00fanel IPSec, que funciona en la tabla global<\/p>\n\n<p>La idea en Huawei es que hay un t\u00fanel IPSec funcionando en el exterior, y un segundo t\u00fanel GRE en el interior, uno encapsulado en el otro. Pero lo curioso es que el t\u00fanel GRE va por fuera de la VRF, y el ipsec por dentro. \u00bfBaguncinha ne?<\/p>\n\n<pre class=\"wp-block-code\"><code># Tunel GRE (dentro da VRF)\ninterface Tunnel900\n bandwidth 10000\n mtu 1400\n ip address 172.31.31.2 255.255.255.252\n clear ip df\n tunnel-protocol gre\n source LoopBack10\n destination vpn-instance vpna 198.51.100.2\n\n# Tunel IPsec\ninterface Tunnel10\n ip address unnumbered interface LoopBack1\n tunnel-protocol ipsec\n ipsec policy teste service-instance-group group1<\/code><\/pre>\n\n<p>As\u00ed que tunnel900 que es el GRE (y que recibe las IPs de \/30) usa un destino que va dentro de la VPNA. Y dentro de la VPNA se llega al destino por t\u00fanel IPSec. Observe tambi\u00e9n que la pol\u00edtica IPsec se asoci\u00f3 con el t\u00fanel 10, utilizando el perfil que se cre\u00f3.<\/p>\n\n<p>Por \u00faltimo, una ruta que tiene cierta complejidad en s\u00ed misma: dentro de la instancia VPNA, digo que para llegar al peer remoto, uso la interfaz IPSec reci\u00e9n creada, siendo el next-hop el propio peer.<\/p>\n\n<pre class=\"wp-block-code\"><code># Rota para o peer na VPN-Instance para usar o Tunnel\nip route-static vpn-instance vpna 198.51.100.2 255.255.255.255\n Tunnel10 198.51.100.2<\/code><\/pre>\n\n<p>Y as\u00ed configuramos el router Huawei. A ver si ahora ha subido.<\/p>\n\n<h2 class=\"wp-block-heading\">Validaci\u00f3n del funcionamiento<\/h2>\n\n<p>En el proceso de validaci\u00f3n del t\u00fanel, debemos recordar siempre que cada fase y etapa depende del establecimiento completo de la otra, por lo que no tiene sentido querer tener conectividad si la fase 1 a\u00fan no ha establecido la comunicaci\u00f3n.<\/p>\n\n<p>En ambos routers, validaremos en secuencia:<\/p>\n\n<ul class=\"wp-block-list\">\n<li>conectividad<\/li>\n\n\n\n<li>fase1<\/li>\n\n\n\n<li>fase2<\/li>\n\n\n\n<li>Conectividad GRE<\/li>\n\n\n\n<li>estado de las interfaces<\/li>\n<\/ul>\n\n<p>Pasemos a las pruebas.<\/p>\n\n<h2 class=\"wp-block-heading\">Comprobaci\u00f3n Cisco<\/h2>\n\n<p>Validaci\u00f3n de la conectividad mediante ping ICMP<\/p>\n\n<pre class=\"wp-block-code\"><code>RT-CISCO-ASR1004#ping 203.0.113.66\nType escape sequence to abort.\nSending 5, 100-byte ICMP Echos to 203.0.113.66, timeout is 2 seconds:\n!!!!!\nSuccess rate is 100 percent (5\/5), round-trip min\/avg\/max = 22\/24\/27 ms\nRT-CISCO-ASR1004#<\/code><\/pre>\n\n<p>Comprobaci\u00f3n de que IKEv2 se ha establecido en Fase 1:<\/p>\n\n<p><\/p>\n\n<pre class=\"wp-block-code\"><code>RT-CISCO-ASR1004#show crypto ikev2 sa\n IPv4 Crypto IKEv2  SA\n\nTunnel-id Local                 Remote                fvrf\/ivrf            Status\n1         198.51.100.2\/500    203.0.113.66\/500    none\/none            READY\n      Encr: AES-CBC, keysize: 256, PRF: SHA1, Hash: SHA96, DH Grp:14, Auth sign:\n PSK, Auth verify: PSK\n      Life\/Active Time: 86400\/17 sec<\/code><\/pre>\n\n<p>Cuando no aparece nada en la salida, o no est\u00e1 lista, significa que alguno de los par\u00e1metros de la Fase 1 no coincid\u00eda. Comprueba en ambos lados si est\u00e1n de acuerdo.<\/p>\n\n<p>Continuamos la validaci\u00f3n en la fase 2:<\/p>\n\n<pre class=\"wp-block-code\"><code>RT-CISCO-ASR1004#show crypto ipsec sa\n\ninterface: Tunnel299\n    Crypto map tag: Tunnel299-head-0, local addr 198.51.100.2\n   protected vrf: (none)\n   local  ident (addr\/mask\/prot\/port): (198.51.100.2\/255.255.255.255\/47\/0)\n   remote ident (addr\/mask\/prot\/port): (203.0.113.66\/255.255.255.255\/47\/0)\n   current_peer 203.0.113.66 port 500\n     PERMIT, flags={origin_is_acl,}\n    #pkts encaps: 2, #pkts encrypt: 2, #pkts digest: 2\n    #pkts decaps: 2, #pkts decrypt: 2, #pkts verify: 2 \n    #pkts compressed: 0, #pkts decompressed: 0\n    #pkts not compressed: 0, #pkts compr. failed: 0\n    #pkts not decompressed: 0, #pkts decompress failed: 0\n    #send errors 0, #recv errors 0\n\n     local crypto endpt.: 198.51.100.2, remote crypto endpt.: 203.0.113.66\n     plaintext mtu 1438, path mtu 1500, ip mtu 1500, ip mtu idb Port-channel1.535\n     current outbound spi: 0x2E41D7D5(776067029)\n     PFS (Y\/N): N, DH group: none\n\n     inbound esp sas:\n      spi: 0x27487883(659060867)\n        transform: esp-256-aes esp-sha-hmac ,\n        in use settings ={Tunnel, }\n        conn id: 2010, flow_id: HW:10, sibling_flags FFFFFFFF80000048, crypto map: Tunnel299-head-0\n        sa timing: remaining key lifetime (k\/sec): (4607999\/3508)\n        IV size: 16 bytes\n        replay detection support: Y\n        Status: ACTIVE(ACTIVE)\n\n     inbound ah sas:\n\n     inbound pcp sas:\n\n     outbound esp sas:\n      spi: 0x2E41D7D5(776067029)\n        transform: esp-256-aes esp-sha-hmac ,\n        in use settings ={Tunnel, }\n        conn id: 2009, flow_id: HW:9, sibling_flags FFFFFFFF80000048, crypto map: Tunnel299-head-0\n        sa timing: remaining key lifetime (k\/sec): (4607999\/3508)\n        IV size: 16 bytes\n        replay detection support: Y\n        Status: ACTIVE(ACTIVE)\n\n     outbound ah sas:\n\n     outbound pcp sas:<\/code><\/pre>\n\n<p>En la salida anterior, vemos que los routers han conmutado el contrato de \u00abtr\u00e1fico interesante\u00bb. Cada parte se ha comprometido a proteger una direcci\u00f3n de la comunicaci\u00f3n GRE.<\/p>\n\n<p>En secuencia todav\u00eda en Fase 2, hay algunos contadores muy importantes que se refieren a paquetes enviados\/recibidos\/encapsulados\/encriptados\/verificados. Se encuentra en la salida del comando \u00abshow crypto ipsec sa\u00bb. Ve\u00e1moslos.<\/p>\n\n<pre class=\"wp-block-code\"><code>RT-CISCO-ASR1004#show crypto ipsec sa  | inc pkts\n    #pkts encaps: 2, #pkts encrypt: 2, #pkts digest: 2\n    #pkts decaps: 2, #pkts decrypt: 2, #pkts verify: 2\n    #pkts compressed: 0, #pkts decompressed: 0\n    #pkts not compressed: 0, #pkts compr. failed: 0\n    #pkts not decompressed: 0, #pkts decompress failed: 0\nRT-CISCO-ASR1004#ping 172.31.31.2 repeat 2\nType escape sequence to abort.\nSending 2, 100-byte ICMP Echos to 172.31.31.2, timeout is 2 seconds:\n!!\nSuccess rate is 100 percent (2\/2), round-trip min\/avg\/max = 22\/22\/22 ms\nRT-CISCO-ASR1004#show crypto ipsec sa  | inc pkts\n    #pkts encaps: 4, #pkts encrypt: 4, #pkts digest: 4\n    #pkts decaps: 4, #pkts decrypt: 4, #pkts verify: 4\n    #pkts compressed: 0, #pkts decompressed: 0\n    #pkts not compressed: 0, #pkts compr. failed: 0\n    #pkts not decompressed: 0, #pkts decompress failed: 0<\/code><\/pre>\n\n<p>Cuando estos contadores no se incrementan, o siguen incrementando fallos, es porque alguna configuraci\u00f3n de Fase 2 no se est\u00e1 casando.  <\/p>\n\n<p>Un buen ejemplo ser\u00eda que s\u00f3lo se incrementara el contador de encaps\/encrypt, y que el de decaps\/decrypt se pusiera a cero. Este va a ser un interesante asunto de tr\u00e1fico ACL que est\u00e1 divergiendo en ambos lados. O bloqueo de las comunicaciones en la red de transporte u otros factores que no trataremos aqu\u00ed. Si necesita ayuda, no dude en ponerse en contacto con nosotros.<\/p>\n\n<p>Por \u00faltimo, \u00a1validemos la conectividad en s\u00ed! \u00a1Pero ahora dentro del t\u00fanel ya protegido!<\/p>\n\n<pre class=\"wp-block-code\"><code>RT-CISCO-ASR1004#ping 172.31.31.2 repeat 100\nType escape sequence to abort.\nSending 100, 100-byte ICMP Echos to 172.31.31.2, timeout is 2 seconds:!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\nSuccess rate is 100 percent (100\/100), round-trip min\/avg\/max = 21\/21\/23 ms\nRT-CISCO-ASR1004#<\/code><\/pre>\n\n<p>Y la interfaz del t\u00fanel est\u00e1 funcionando:<\/p>\n\n<pre class=\"wp-block-code\"><code># interface UP\nRT-CISCO-ASR1004#sh int tun299\nTunnel299 is up, line protocol is up\n  Hardware is Tunnel\n  Description: Tunnel Test Rafael\n  Internet address is 172.31.31.1\/30\n  MTU 9914 bytes, BW 10000 Kbit\/sec, DLY 50000 usec,\n     reliability 255\/255, txload 1\/255, rxload 1\/255\n  Encapsulation TUNNEL, loopback not set\n  Keepalive not set\n  Tunnel linestate evaluation up\n  Tunnel source 198.51.100.2 (Port-channel1.536), destination 203.0.113.66\n   Tunnel Subblocks:\n      src-track:\n         Tunnel299 source tracking subblock associated with Port-channel1.536\n          Set of tunnels with source Port-channel1.536, 1 member (includes iterators), on interface &lt;OK&gt;\n  Tunnel protocol\/transport GRE\/IP\n    Key disabled, sequencing disabled\n    Checksumming of packets disabled\n  Tunnel TTL 255, Fast tunneling enabled\n  Tunnel transport MTU 1414 bytes\n  Tunnel transmit bandwidth 8000 (kbps)\n  Tunnel receive bandwidth 8000 (kbps)\n  Tunnel protection via IPSec (profile \"VPN-IKEv2-IPsec-Profile\")\n  Last input never, output never, output hang never\n  Last clearing of \"show interface\" counters 19:14:47\n  Input queue: 0\/375\/0\/0 (size\/max\/drops\/flushes); Total output drops: 0\n  Queueing strategy: fifo\n  Output queue: 0\/0 (size\/max)\n  5 minute input rate 1000 bits\/sec, 1 packets\/sec\n  5 minute output rate 1000 bits\/sec, 1 packets\/sec\n     253 packets input, 22764 bytes, 0 no buffer\n     Received 0 broadcasts (0 IP multicasts)\n     0 runts, 0 giants, 0 throttles\n     0 input errors, 0 CRC, 0 frame, 0 overrun, 0 ignored, 0 abort\n     13497 packets output, 659844 bytes, 0 underruns\n     0 output errors, 0 collisions, 0 interface resets\n     0 unknown protocol drops\n     0 output buffer failures, 0 output buffers swapped out<\/code><\/pre>\n\n<h2 class=\"wp-block-heading\">Verificaci\u00f3n Huawei<\/h2>\n\n<p>Para validar el funcionamiento en el router Huawei NE40, el enfoque es el mismo que para Cisco.  <\/p>\n\n<p>Validaci\u00f3n de la conectividad mediante ping ICMP (recuerde utilizar la fuente loopback)<\/p>\n\n<pre class=\"wp-block-code\"><code>&lt;~RT-HUAWEI-NE40&gt; ping -a 203.0.113.66 198.51.100.2\n  PING 198.51.100.2: 56  data bytes, press CTRL_C to break\n    Reply from 198.51.100.2: bytes=56 Sequence=1 ttl=62 time=1 ms\n    Reply from 198.51.100.2: bytes=56 Sequence=2 ttl=62 time=1 ms\n    Reply from 198.51.100.2: bytes=56 Sequence=3 ttl=62 time=1 ms\n    Reply from 198.51.100.2: bytes=56 Sequence=4 ttl=62 time=1 ms\n    Reply from 198.51.100.2: bytes=56 Sequence=5 ttl=62 time=2 ms\n\n  --- 198.51.100.2 ping statistics ---\n    5 packet(s) transmitted\n    5 packet(s) received\n    0.00% packet loss\n    round-trip min\/avg\/max = 1\/1\/2 ms<\/code><\/pre>\n\n<p>Comprobaci\u00f3n de que IKEv2 se ha establecido en Fase 1:<\/p>\n\n<pre class=\"wp-block-code\"><code>&#91;~RT-HUAWEI-NE40]dis ike sa\nSlot 3, IKE SA Information:\nCurrent IKE SA number: 2\n-----------------------------------------------------------------------------\nconn-id    peer                    flag                phase   ext    vpn\n-----------------------------------------------------------------------------\n1212       198.51.100.2          RD                  v2:2    -      vpna\n1211       198.51.100.2          RD                  v2:1    -      vpna\n\n&#91;~RT-HUAWEI-NE40]dis ike sa verbose remote 198.51.100.2\nSlot 3, IKE SA Verbose Information:\n  ----------------------------\n  Establish Time : 2022-12-03 09:49:43\n  PortCfg Name   : Tunnel10\n  IKE Peer Name  : teste\n  Connection Id  : 1211\n  Version        : v2\n  Flow VPN       : vpna\n  Peer VPN       : -\n  Instance ID    : 0\n  -----------------------------------------------\n    Initiator Cookie        : 0xefaf822684f391e7\n    Responder Cookie        : 0xdac01cc355e9c8ad\n    Local Address           : 203.0.113.66\n    Remote Address          : 198.51.100.2\n    Peer Identity           : ip, 198.51.100.2\n    Authentication Method   : PRE_SHARED\n    Diffie-Hellman Group    : MODP_2048\n    Encryption Algorithm    : AES256_CBC\n    Authentication Algorithm: SHA1\n    Integrity Algorithm     : SHA1_96\n    Send\/Receive Message_id : 0\/2\n    Remaining Duration      : 85680\n    Reference Counter       : 2\n    Flags                   : RD\n    Is Backuped             : 0\n    InBound SpeedLimit      : -\n    OutBound SpeedLimit     : -\n  -----------------------------------------------\n<\/code><\/pre>\n\n<p>Cuando no aparece nada en la salida, o no est\u00e1 en listo (RD), significa que alguno de los par\u00e1metros de la Fase 1 no coincid\u00eda. Comprueba en ambos lados si est\u00e1n de acuerdo.<\/p>\n\n<p>Continuamos la validaci\u00f3n en la fase 2:<\/p>\n\n<pre class=\"wp-block-code\"><code>&#91;~RT-HUAWEI-NE40]  dis ipsec sa\n\nIKE IP Security Association :\n==================================\nIPsec SA Information for Slot : 3\n==================================\n\n===============================\nInterface: Tunnel10\n===============================\n\n  -----------------------------\n  IPsec policy name: \"teste\"\n  sequence number: 1\n  instance id: 0\n  mode: isakmp\n  vpn: vpna\n  ext: -\n  -----------------------------\n    connection id: 1212\n    rule number: 0\n    encapsulation mode: tunnel\n    tunnel local: 203.0.113.66    tunnel remote: 198.51.100.2\n    flow      source: 203.0.113.66\/255.255.255.255 0-65535 47 0xFF\n    flow destination: 198.51.100.2\/255.255.255.255 0-65535 47 0xFF\n    input\/output security packets: 104\/104\n    input\/output security kilobytes: 18\/18\n    input\/output bandwidth limit drop packets: 0\/0\n    input\/output bandwidth limit drop kilobytes: 0\/0\n\n    &#91;inbound ESP SAs]\n      establish: 2022-12-03 09:49:43\n      spi: 776067029 (0x2e41d7d5)\n      vpn: vpna said: 53\n      proposal: ESP-ENCRYPT-256-AES ESP-AUTH-SHA1\n      sa remaining key duration (kilobytes\/sec): 1843182\/2862\n      max received sequence-number: 104\n      udp encapsulation used for nat traversal: N\n\n    &#91;outbound ESP SAs]\n      establish: 2022-12-03 09:49:43\n      spi: 659060867 (0x27487883)\n      vpn: vpna said: 54\n      proposal: ESP-ENCRYPT-256-AES ESP-AUTH-SHA1\n      sa remaining key duration (kilobytes\/sec): 1843182\/2862\n      max sent sequence-number: 104\n      udp encapsulation used for nat traversal: N\n<\/code><\/pre>\n\n<p>Por \u00faltimo, validemos la conectividad comprobando los contadores de tr\u00e1fico. \u00a1Pero ahora dentro del t\u00fanel ya protegido!<\/p>\n\n<pre class=\"wp-block-code\"><code>&#91;~RT-HUAWEI-NE40]dis inter Tunnel 900 | i packets\nInfo: It will take a long time if the content you search is too much or the string you input is too long, you can press CTRL_C to break.\nChecksumming of packets disabled\n    300 seconds input rate 64 bits\/sec, 1 packets\/sec\n    300 seconds output rate 0 bits\/sec, 0 packets\/sec\n    0 seconds input rate 0 bits\/sec, 0 packets\/sec\n    0 seconds output rate 0 bits\/sec, 0 packets\/sec\n    223 packets input,  22712 bytes\n    227 packets output,  29534 bytes\n      Unicast: 223 packets, Multicast: 0 packets\n      Unicast: 227 packets, Multicast: 0 packets\n&#91;~RT-HUAWEI-NE40]ping -a 172.31.31.2 172.31.31.1\n  PING 172.31.31.1: 56  data bytes, press CTRL_C to break\n    Reply from 172.31.31.1: bytes=56 Sequence=1 ttl=255 time=22 ms\n    Reply from 172.31.31.1: bytes=56 Sequence=2 ttl=255 time=22 ms\n    Reply from 172.31.31.1: bytes=56 Sequence=3 ttl=255 time=22 ms\n    Reply from 172.31.31.1: bytes=56 Sequence=4 ttl=255 time=22 ms\n    Reply from 172.31.31.1: bytes=56 Sequence=5 ttl=255 time=21 ms\n\n  --- 172.31.31.1 ping statistics ---\n    5 packet(s) transmitted\n    5 packet(s) received\n    0.00% packet loss\n    round-trip min\/avg\/max = 21\/21\/22 ms\n\n&#91;~RT-HUAWEI-NE40]dis inter Tunnel 900 | i packets\nInfo: It will take a long time if the content you search is too much or the string you input is too long, you can press CTRL_C to break.\nChecksumming of packets disabled\n    300 seconds input rate 64 bits\/sec, 1 packets\/sec\n    300 seconds output rate 0 bits\/sec, 0 packets\/sec\n    0 seconds input rate 0 bits\/sec, 0 packets\/sec\n    0 seconds output rate 0 bits\/sec, 0 packets\/sec\n    228 packets input,  23152 bytes\n    232 packets output,  30074 bytes\n      Unicast: 228 packets, Multicast: 0 packets\n      Unicast: 232 packets, Multicast: 0 packets\n&#91;~RT-HUAWEI-NE40]\n<\/code><\/pre>\n\n<p>Y la interfaz del t\u00fanel est\u00e1 funcionando:<\/p>\n\n<pre class=\"wp-block-code\"><code>&#91;~RT-HUAWEI-NE40]dis inter Tunnel 900 extensive\nTunnel900 current state : UP (ifindex: 112)\nLine protocol current state : UP\nLast line protocol up time : 2022-12-03 09:39:38\nDescription:\nRoute Port,The Maximum Transmit Unit is 1400\nInternet Address is 172.31.31.2\/30\nEncapsulation is TUNNEL, loopback not set\nTunnel source 203.0.113.66 (LoopBack10), destination vrf vpna 198.51.100.2\nTunnel protocol\/transport GRE\/IP, key disabled\nkeepalive disabled\nChecksumming of packets disabled\nCurrent system time: 2022-12-03 10:03:48\n    300 seconds input rate 64 bits\/sec, 1 packets\/sec\n    300 seconds output rate 0 bits\/sec, 0 packets\/sec\n    0 seconds input rate 0 bits\/sec, 0 packets\/sec\n    0 seconds output rate 0 bits\/sec, 0 packets\/sec\n    228 packets input,  23152 bytes\n    0 input error\n    232 packets output,  30074 bytes\n    0 output error\n    Input:\n      Unicast: 228 packets, Multicast: 0 packets\n    Output:\n      Unicast: 232 packets, Multicast: 0 packets\n    Input bandwidth utilization  :    0%\n    Output bandwidth utilization :    0%\n<\/code><\/pre>\n\n<p>\u00a1Con esto llegamos al t\u00fanel establecido y en funcionamiento entre el router Cisco IOS XE y el Huawei NE40!  <\/p>\n\n<h2 class=\"wp-block-heading\">Configuraci\u00f3n completa de Cisco<\/h2>\n\n<pre class=\"wp-block-code\"><code># interface WAN\ninterface Port-channel1.536\n description WAN-If\n encapsulation dot1Q 536\n ip address 198.51.100.2 255.255.255.252\n no shutdown\n\n# PROPOSAL PARA fase 1\ncrypto ikev2 proposal ikev2proposal\n encryption aes-cbc-256\n integrity sha1\n group 14\n\n# policy de fase 1\ncrypto ikev2 policy ikev2policy\n match fvrf any\n proposal ikev2proposal\n\n\n# chaveiro com as PSK\ncrypto ikev2 keyring keys\n peer site_b\n  address 203.0.113.66\n  pre-shared-key UmaSenhaBemS3gur@\n !\n\n# profile com o PEER\ncrypto ikev2 profile ikev2profile\n match identity remote address 203.0.113.66 255.255.255.255\n authentication remote pre-share\n authentication local pre-share\n keyring local keys\n\n# confs da fase 2\ncrypto ipsec transform-set TS esp-aes 256 esp-sha-hmac\n mode tunnel\n\n# Profile a ser usado na VPN (combina as confs de fase1 e fase2)\ncrypto ipsec profile VPN-IKEv2-IPsec-Profile\n set transform-set TS\n set ikev2-profile ikev2profile\n\n\n# cria o tunnel GRE e aplica a protecao\ninterface Tunnel299\n description Tunnel Test Rafael\n bandwidth 10000\n ip address 172.31.31.1 255.255.255.252\n ip mtu 1400\n ip tcp adjust-mss 1360\n tunnel source Port-channel1.536\n tunnel destination 203.0.113.66\n tunnel protection ipsec profile VPN-IKEv2-IPsec-Profile\nend\n<\/code><\/pre>\n\n<h2 class=\"wp-block-heading\">Configuraci\u00f3n completa de Huawei<\/h2>\n\n<pre class=\"wp-block-code\"><code># Cria o service-instance-group (somente NE40)\nservice-location 1\n location slot 1\n commit\n\nservice-instance-group group1\n service-location 1\n\n# PROPOSAL PARA fase 1\nike proposal 1\n encryption-algorithm aes-cbc 256\n dh group14\n authentication-algorithm sha1\n integrity-algorithm hmac-sha1-96\n\n# ACL de tr\u00e1fego interessante\nacl number 3000\n rule 0 permit gre vpn-instance vpna source 203.0.113.66 0 destination 198.51.100.2 0\n\n\n# policy de fase 1\nipsec policy teste 1 isakmp\n ipsec df-bit clear\n security acl 3000\n ike-peer teste\n proposal comfone\n log enable\n\n\n# chaveiro com as PSK e peer\nike peer teste\n pre-shared-key &lt;senha&gt;\n ike-proposal 1\n remote-address 198.51.100.2\n sa binding vpn-instance vpna\n\n\n# confs da fase 2\nipsec proposal comfone\n encapsulation-mode tunnel\n transform esp\n esp authentication-algorithm sha1\n esp encryption-algorithm aes 256\n\n\n# Para uso de Gre over IPSEC com o local address sendo compartilhado, para n\u00e3o haver conflito, ser\u00e1 necessario criar uma vrf.\nip vpn-instance vpna\n ipv4-family\n  route-distinguisher 100:1\n  apply-label per-instance\n  vpn-target 111:1 export-extcommunity\n  vpn-target 111:1 import-extcommunity\n\n# Neste cenario o IP de saida ser\u00e1 uma lo (atentar que a config bindando o tunel ipsec, ser\u00e1 feita quando atrelar o tunel a esta interface)\n\ninterface LoopBack1\n ip address 203.0.113.66 255.255.255.255\n binding tunnel ipsec\n\n# Lo atrelada a vrf, para uso no GRE do mesmo IP.\ninterface LoopBack10\n ip binding vpn-instance vpna\n ip address 203.0.113.66 255.255.255.255\n binding tunnel gre\n \n # Tunel GRE do Teste\ninterface Tunnel900\n bandwidth 10000\n mtu 1400\n ip address 172.31.31.2 255.255.255.252\n clear ip df\n tunnel-protocol gre\n source LoopBack10\n destination vpn-instance vpna 198.51.100.2\n\n\n# Tunel IPsec do teste\ninterface Tunnel10\nip address unnumbered interface LoopBack1\ntunnel-protocol ipsec\nipsec policy teste service-instance-group group1\n\n# Rota para o peer na VPN-Instance para usar o Tunnel\nip route-static vpn-instance vpna 198.51.100.2 255.255.255.255 Tunnel10 198.51.100.2\n<\/code><\/pre>\n\n<p>\n          <strong>Autores<\/strong>\n        <\/p>\n\n<p>Rafael Ganascim<\/p>\n\n<p>Julian Eble<\/p>\n\n<p>\n          <strong>Referencias<\/strong>\n        <\/p>\n\n<p>[1] Visi\u00f3n general de GRE. NE40E-M2 Huawei. <a href=\"https:\/\/support.huawei.com\/hedex\/hdx.do?docid=EDOC1100277532&amp;id=EN-US_CONCEPT_0172355906&amp;ui=1\">https:\/\/support.huawei.com\/hedex\/hdx.do?docid=EDOC1100277532&amp;id=EN-US_CONCEPT_0172355906&amp;ui=1<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>En este post vamos a discutir un escenario muy com\u00fan (y poco documentado), que consiste en utilizar un t\u00fanel GRE protegido con IPSec entre un router Cisco IOS ASR1002 y un router Huawei NE40. La topolog\u00eda de este ejemplo se describe a continuaci\u00f3n. Se ha mantenido simple para que podamos discutir los detalles de GRE+IPSEC, [&hellip;]<\/p>\n","protected":false},"author":13,"featured_media":10387,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"postBodyCss":"","postBodyMargin":[],"postBodyPadding":[],"postBodyBackground":{"backgroundType":"classic","gradient":""},"footnotes":""},"categories":[282],"tags":[],"class_list":["post-11670","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-sin-categorizar"],"aioseo_notices":[],"_links":{"self":[{"href":"https:\/\/made4it.com.br\/es\/wp-json\/wp\/v2\/posts\/11670","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/made4it.com.br\/es\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/made4it.com.br\/es\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/made4it.com.br\/es\/wp-json\/wp\/v2\/users\/13"}],"replies":[{"embeddable":true,"href":"https:\/\/made4it.com.br\/es\/wp-json\/wp\/v2\/comments?post=11670"}],"version-history":[{"count":0,"href":"https:\/\/made4it.com.br\/es\/wp-json\/wp\/v2\/posts\/11670\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/made4it.com.br\/es\/wp-json\/wp\/v2\/media\/10387"}],"wp:attachment":[{"href":"https:\/\/made4it.com.br\/es\/wp-json\/wp\/v2\/media?parent=11670"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/made4it.com.br\/es\/wp-json\/wp\/v2\/categories?post=11670"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/made4it.com.br\/es\/wp-json\/wp\/v2\/tags?post=11670"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}