Para un mejor conocimiento sobre CGNAT, primero entienda con precisión la razón de su uso… Retrocediendo un poco en la historia de Internet, cuando se creó el protocolo IP (Protocolo de Internet), se pusieron a disposición para su distribución alrededor de 4 mil millones de IPv4, en ese momento se veía como un valor satisfactorio en relación a la necesidad de uso.

Estos prefijos se usaban para los prefijos ‘NAT’ de redes internas, RFC1918, que no tenían acceso a Internet. NAT básicamente traduce el prefijo privado a público. Con esto conseguimos que varios clientes pudieran navegar a través de una sola IP pública y esto a pequeña escala, reemplazando unas IP privadas por una pública, no nos trae problemas, pero a gran escala puede causar problemas de conexión o falta de ella. A medida que aumentaba la necesidad de distribución de prefijos, el agotamiento de los prefijos de IPv4 se acercaba cada vez más al límite.

Con el tiempo y el crecimiento de internet, se creó un segundo protocolo de direccionamiento, llamado IPv6, para sortear el agotamiento de IPv4, nada mejor que billones y billones de IP´s disponibles para usar. Sin embargo, junto con la creación de IPv6, surgió la complejidad de la implementación, ya que requería el intercambio de equipos que soportaran el protocolo y la adaptación al mismo.

Con eso, la migración de internet al nuevo protocolo IP hasta el día de hoy no es del 100%, con eso surgió la necesidad de crear una medida provisional para superar el agotamiento, sin requerir cambios en la propia Internet, sino directamente en los proveedores de redes. … Con eso, se creó el protocolo CGNAT ‘Traducción de direcciones de red de grado de operador’ para ayudar en esta adaptación.

Pero, ¿qué es CGNAT? Antes de profundizar, debemos comprender mejor cómo funciona, ¿cómo ayuda con el agotamiento de direcciones? CGNAT consiste en utilizar los puertos UDP y TCP de direcciones IP públicas, dividiéndolos entre bloques de IP privadas para establecer conexiones con destinos en Internet, lo que sería un NAT a gran escala.

Existen básicamente dos tipos de CGNAT, Determinista y Asignación de puertos a granel. En Determinista, como en el ejemplo anterior, asignamos una cantidad fija de puertos TCP/UDP por IPv4 pública, es decir, si hacemos un 100.64.0.0/24 con salida usando un /27 público y prefijando 8192 puertos para cada suscriptor, tendremos un límite de servicio inmutable de unos 256 suscriptores, podemos ver en la imagen de abajo un ejemplo de una tabla CGNAT determinista.

Para este tipo de CGNAT no existe un número mínimo de puertos por cada conexión, pudiendo implementarse hasta con 256 puertos fijos por conexión, pero cuanto menor sea el número de puertos, más problemas tendremos con destinos inaccesibles y falta de acceso. de navegacion Para evitar estos problemas, a continuación se muestra una tabla que contiene la cantidad requerida de bloques públicos en relación a los bloques privados con la cantidad de puertos.

CGNAT determinista con 1 público a 16 privados, con 4 mil puertos por conexión.

CGNAT determinista con 1 público a 32 privados, con 2000 puertos por conexión.

Para este modelo, tenemos una página creada por el equipo de made4it que genera un script para mikrotik, accesible a través del enlace made4it.com.br/cgnat/ y un artículo explicativo sobre cómo configurarlo al que se puede acceder haciendo clic aquí

En el modelo Bulk Port Allocation, los puertos TCP/UDP se asignan de acuerdo a las necesidades del suscriptor en bloques de puertos de tamaño definido, siendo el bloque 256 puertos y un suscriptor usando solo un bloque ahorraremos recursos y con eso podremos coloque muchos más suscriptores con un /27 público. La gran desventaja de este modelo es que dependemos de generar registros de uso de puertos y almacenar esta información para referencia futura. La imagen muestra al cliente 1 usando solo 256 puertos para navegar y el cliente 2 usando 2 bloques de 256…

Con el surgimiento de CGNAT, algunos equipos que ya soportan la creación de CGNAT, como el Mikrotik, que es un equipo que no fue creado específicamente para este fin, pero su parte CGNAT funciona perfectamente, si está bien configurado. También contamos con algunas otras soluciones de CGNAT como A10, DANOS (Linux), Iptables (Linux), Cisco, Huawei, Juniper, NFWare, 6Wind, entre otras…

Hasta que el proceso de adaptación de Internet a IPv6 no se complete al 100%, tendremos que utilizar CGNAT para superar la escasez de IPv4. Si necesita asistencia para implementar el protocolo, independientemente del modelo o equipo, el equipo de made4it puede ayudarlo con la implementación, comuníquese por correo electrónico contato@made4it.com.br o por teléfono (43) 3047-8340 o (43) ) 9 8485-4013

Autor. Kevin Wauters.