VPSs y mas.

Mostrando entradas con la etiqueta ipv4. Mostrar todas las entradas
Mostrando entradas con la etiqueta ipv4. Mostrar todas las entradas

domingo, 14 de febrero de 2016

Carta de IPv4 (masculino) a IPv6 (femenino) en el día de los enamorados

Hola mi IPv6,
 Quiero comenzar esta carta con mi orgullosa longitud de 32 bits en el datagrama, hasta ahora es lo mejor que tengo y lo que me ha dado energía durante casi 4 hermosas décadas. Hoy en día cuando escucho de tus 128 bits no sé si amarte u odiarte, suenas muy poderosa, ¿es bueno o es malo?

 Entonces en las noches, cuando el tráfico baja reflexiono sobre mi pasado, me doy cuenta que hasta haces unas décadas yo era muy feliz, era el único en la red, cuando salía de un sitio llegaba al otro _enterito_, los routers me querían y los firewalls ni hablar, nunca me detenían. Los últimos años las cosas han cambiado mucho, me da miedo salir.., cada vez que salgo alguien en el camino cambia todo mi ser, literalmente una dolorosa mutación, la gente cree que es divertido, para nada. Luego llego a un destino donde digo ser quien no soy, me responden como si fuera quien no soy y luego para regresarme a veces ni consigo el camino de retorno, y si lo consigo, me vuelven a mutar a mi ser original, pobre de mí, doble dolor.  Pero eso no es todo, cuando salgo espero que en la vía no la agarren conmigo, de vez en cuando me detienen, me desechan silenciosamente o me rechazan enviando a un primo mío a donde mi dueño a decirle que no llegué (si, además se llevan un dedo mío como fe de vida), lo más triste es que sé que más nunca volveré a escuchar de mi primo, evidentemente no me quieren. Ahora bien, cuando siento que logré todo, llego al destino, estoy súper contento pero no.., me entero que mi dueño se molesta, lo escucho decir que el audio no sirve, que el video no anda, que la VPN tal cosa, etc, etc.. ¡Entonces ocurre lo peor, me reinician!!, esto si es espantoso, siempre creen que esto va a funcionar, ouch, y ni hablar de cuando esto se vuelve un círculo vicioso. Ah!, casi se me olvida, ni que decir de cuando quieren dividirme en pedacitos durante el camino, menos mal que tu no pasas por esto!

 Volviendo a mi reflexión, el otro día nos conseguimos, ¿te recuerdas?, salimos simultáneamente de la casa, íbamos muy felices los dos, al comienzo casi agarrados del campo _version_,  tu parecías apurada, yo veía como te alejabas en el camino, que lindo tu campo _dirección_ _destino_, ibas de router en router sin mirar atrás, llegaste mucho antes que yo, luego ví la respuesta venir cuando yo apenas iba, sorprendente!!!, al principio me sentí un poco triste pero luego pensé en nuestro dueño, wow, que felicidad para él!, ahora sí está más contento, es más productivo, hace las cosas más rápido, en las mañana antes duraba 1 hora en la computadora, creo que contigo lo hace todo en 45 minutos. Bien!.  Además conecta dispositivos todo el tiempo, y con estos último si es verdad que ni me considera.

 Pero no quiero que mi amor quede en lo virtual, desde la fibra hasta el satélite, desde la microonda hasta el Wifi quiero expresarte mis campos verdaderos. Ningún otro protocolo podrá comprenderte tanto como yo, por ello la intensidad de nuestra señal nos mantendrá unidos por muchos años. No importa cuántos paquetes se dropeen o cuantos checksum vengan malos (ups, tu no tienes checksum, bueno, me entiendes), solo contigo quiero estar. Un secreto que no le he dicho a nadie es mi deseo de una colisión de vez en cuando :-).

  Cuando se que vamos a salir juntos, no solo me pongo mi mejor ropa, me afeito, me arreglo, y justo antes de salir pongo mi campo TTL al máximo, así pienso que aumento las probabilidades de conseguirme contigo, y si por mucha casualidad entramos en un routing loop, yuuppiiii. Caso contrario cuando se que no viajas conmigo, muy triste cuando salgo solo, por suerte se que es temporal, cada día es más común encontrarnos, te veo más veces, escucho más de ti, te leo en todos lados.

  Definitivamente 128 parece ser mejor 32, una matemática muy simple, pero quiero que estés orgullosa de mi, afortunadamente no puedo quejarme, siento que he hecho un buen trabajo, conecté un planeta completo, he logrado cosas impensables, no quiero imaginarme como será contigo, veo un mundo más completo, más ecológico, más productivo y con un mejor nivel de vida. Me alegra mucho pensar en todo esto!!.

 Antes de terminar la carta quería comentarte que me encuentro cansado, desde hace muchos años me han venido operando en todas partes y los mejores profesionales, me han hecho cirugías, operaciones, trasplantes y muchas otras cosas, creo que no aguanto mucho más, ¡déjenme como estoy ahorita por favor!

 Ahora necesito yo que reflexionen los demás, ya estoy viejo, no soy el mismo, ando más lento, las nuevas generaciones vienen mejoradas, hay que darles espacio, paquetes más rápidos, más manejables, con mayor escalabilidad. ¿Cómo puedo yo competir contra 128?

 Por eso, mi querida IPv6, ahora que escribo todo esto, quiero decirte: eres el futuro. ¡Feliz día de San Valentín!

  Quien te quiere mucho y te desea lo mejor


____________
Tu paquetito de 32 bits

miércoles, 23 de septiembre de 2015

Monitoreando IPv4 e IPv6 con sFlow

Introducción
 
Este primer artículo tiene como objetivo presentar de manera práctica cómo monitorear tráfico de una interfaz de red con doble pila configurada (Dual-Stack), IPv6 e IPv4, a través de la tecnología sFlow.
 
sFlow es una tecnología de muestreo de paquetes que se puede implementar en una amplia gama de dispositivos desde equipos de capa 2 hasta equipos de alto desempeño como enrutadores de core. Debido a la incorporación de redes de alta velocidad, el muestreo de paquetes ha sido ampliamente reconocido como la solución más escalable, precisa y completa para el monitoreo de redes.
 
Si bien la metodología de muestreo de paquetes está incrustada dentro del elemento de red (por ejemplo, el enrutador o switch), el análisis de tráfico se realiza realmente en un equipo diferente, normalmente un servidor. Esto permite mayor escalabilidad y capacidad de respuesta en tiempo real sin afectar el desempeño de los enrutadores, especialmente a altas velocidades de tráfico.
 
Los diferentes componentes del sistema sFlow: son el generador sFlow, el agente sFlow, y el colector sFlow:
 
  • El generador de sFlow es el elemento de red que genera muestras de tráfico. La toma de muestras de paquetes se realiza típicamente en hardware para proporcionar un rendimiento a velocidad de cable (wire-speed).
  • El agente sFlow es un proceso de software que se ejecuta como parte del software de gestión de red dentro del elemento de red.  Los agentes sFlow en enrutadores y switches en toda la red envían continuamente un flujos de datagramas sFlow a un colector sFlow centralizado. Los contadores de interfaz y las muestras de flujo se combinan en datagramas sFlow, que requieren muy poco procesamiento. Los datos se empaqueta en datagramas sFlow, que se envían de inmediato en la red. Esto reduce al mínimo la carga en la memoria y procesador de los agentes sFlow .
  • El software colector de sFlow analiza los datagramas recibidos de cada agente sFlow y los presenta en tiempo real, permitiendo la vista de los flujos de tráfico de toda la red. Varias soluciones de colectores y software analizador de sFlow están disponibles comercialmente, así como en software libre.
 
La definición de flujos de tráfico a través de esta tecnología se puede realizar de numerosas maneras. Tradicional implica una clave en que el flujo se define como una secuencia unidireccional de tramas que comparten los siguientes valores:
 
  • Dirección MAC de origen
  • Dirección MAC de destino.
  • Tipo de Ethernet.
  • VLAN y prioridad.
  • Dirección IPv6 ó IPv4 de origen.
  • Dirección IPv6 ó IPv4 de destino.
  • Puerto UDP o TCP de origen.
  • Puerto UDP o TCP de destino.
  • Protocolo IP (IPv4), Next header (IPv6).
  • Interfaz (SNMP inputifindex, outputifindex).
  • Tipo de servicio IP.
  • Tipo de queries DNS.
  • Entre otras.
 
Cuáles son los beneficios
 
El establecimiento de sFlow nos permite contar con una visibilidad completa y en tiempo real de toda la infraestructura de red, coadyuvando entre muchas cosas:
 
  • Monitoreo de la red, servidores, servicios, ataques e intrusiones desde una sola consola.
  • Identificar fácilmente las redes, computadoras, servidores y puntos de almacenamiento.
  • Supervisar el rendimiento de la telefonía IP, videoconferencias, almacenamiento, cómputo , entre otros dispositivos de red.
  • Identificar la congestión y garantizar la calidad del servicio.
  • Identificar los recursos sobre utilizados y mejorar su eficiencia.
  • Analizar la distribución de contenidos por Multicast.
  • Analizar e implementar ingeniería de tráfico en redes MPLS.
  • Monitoreo de VLAN, QinQ, redes Metroethernet, etcétera.
  • Detectar asimetrías en el enrutamiento.
  • Analizar la conveniencia al momento de interconectar nuevos peers.
  • Asegurar cuotas de tráfico discriminado a través de la capa de aplicación.
  • Inspeccionar y dar seguimiento de usuarios.
 
Qué necesitamos
 
Como objeto de esta demostración se requerirá de los siguientes recursos:
 
  1. Equipo enrutador o switch con soporte de sFlow.
  2. Servidor Linux de la plataforma de su preferencia.
  3. La instalación de un colector de sFlow dentro del servidor Linux, en particular el colector llamado sFlow-RT, consulte:http://www.inmon.com/products/sFlow-RT.php
  4. Un equipo de cómputo con navegador web.
 
 
Para obtener una lista de colectores disponibles, consulte:
http://www.sflow.org/products/collectors.php
 
El estándar, de la industria, sFlow se encuentra actualmente en la versión 5. Para obtener más información, consulte:
http://www.sflow.org
 
 
Cuáles son los pasos que tenemos que seguir
 
  1. Como primer paso realizaremos la configuración del enrutador, para ello utilizaremos como ejemplo un enrutador MLXe-4 de la marca Brocade con la versión de sistema operativo  5.5.0T165.
     a. Desde línea de comando (CLI) ejecutaremos las siguientes instrucciones, en modo de configuración global :
       i. Habilitar sFlow en el equipo:
 
         R1(config)# sflow enable
       ii. Configurar la dirección IPv6 ó IPv4 del servidor que tendrá el rol de colector sFlow y a donde se enviará los      datagramas de sFlow:
R1(config)# sflow destination 192.168.105.33
ó
R1(config)# sflow destination ipv6 FE80::AA8E:F8FF:FE73:B700
iii. Es importante configurar los intervalos o frecuencia en la que se enviarán los datagramas de sFlow (definida en segundos):
R1(config)# sflow polling-interval 10
iv. Otro parámetro importante de la configuración es el denominador de muestreo, que es de 1/N, es decir, por cada N número de tramas que pasan por una interfaz se tomará una sola, esta muestra será registrada y enviada al colector de sFlow. Este valor dependerá de la velocidad del puerto al que será configurado (para más información consultar las recomendaciones del fabricante):
R1(config)# sflow sample 512
 
b. Desde CLI ejecutaremos el siguiente comando, en modo de configuración dentro de la interfaz de red que nos interesa monitorear:
R1(config-if-e10000-4/4)# sflow forwarding
 
La configuración final quedará de la siguiente manera:
 
sflow enable
sflow destination 192.168.105.33
sflow polling-interval 10
sflow sample 512
!
interface ethernet 4/4
port-name ISP1
enable
sflow forwarding
!
 
2. Una vez realizado el paso 1, el enrutador comenzará enviar los datagramas de sFlow al colector de flujos. El siguiente paso es configurar el software sFlow-RT para que pueda analizar el tráfico, por lo que será necesario entrar al siguiente URI (servidor en que instalamos el colector):
 
http://192.168.105.33:8008/flow/html


    1. Para comenzar a obtener los valores de download y upload que pasan por nuestra interfaz troncal recién habilitada con sFlow, configuraremos los siguientes parámetros dentro de la interfaz web del colector de flujos, particularmente dentro del apartado Flows, llenando el siguiente formulario web:
      i. Name: IPv6stack
      ii. Keys: stack
      iii. Value: bytes
      iv. Filter: stack=eth.ip6.tcp|stack=eth.ip6.udp|stack=eth.ip6.icmp6
    2.  
      Presionamos el botón Submit.
       
    3. De la misma manera agregaremos otro registro en el formulario para el stack IPv4:
      i. Name: IPv4stack
      ii. Keys: stack
      iii. Value: bytes
      iv. Filter: stack=eth.ip.tcp|stack=eth.ip.udp|stack=eth.ip.icmp
    4.  
      y finalmente presionamos el botón Submit.
       
      Nota:
      El parámetro value puede ser configurado con cualquier de los siguientes atributos: frames (frames per second), bytes (Bytes per second), requests, duration.
       
      El resultado final quedará de la siguiente manera:



    1. Una vez configurado los flujos, podemos dar un click al registro IPv6stack o IPv4stack y comenzaremos observar en tiempo real los Bytes por segundo que están pasando por la interfaz de acuerdo al stack seleccionado, mostrando los siguientes resultados:
 
Para poder observar gráficas en tiempo real a través del sFlow-RT, en nuestro navegador deberemos colocar los siguientes URI:
 

http://192.168.105.33:8008/metric/ALL/sum:IPv6stack/html
 



http://192.168.105.33:8008/metric/ALL/sum:IPv4stack/html


Con esto concluimos la configuración básica de sFlow, ahora podemos identificar cuántos Bytes por segundo están pasando por la interfaz de red, de la misma manera podemos configurar más flujos con diferentes value por ejemplo frames, para obtener las tramas por segundo que pasan por la misma. Por último, si nos interesa conocer los top senders de las direcciones IPv6 ó IPv4, podemos configurar más flujos en el colector, por ejemplo:
 
Name: IPv6topsender
Keys: ip6source,ip6destination,ip6nexthdr
Value: bytes
 
finalmente presionamos el botón Submit. Con el cual obtendremos la lista de las direcciones que más descargan o suben información en IPv6 ó IPv4, en este caso por ejemplo el protocolo IPv6:




En posteriores artículos se compartirá cómo:
Generar históricos de la información, así como gráficas personalizadas a través de CACTI, InfluxDB o programación con Python y RRDTools; en base a valores obtenidos por las open northbound APIs del colector sFlow-RT.  
Desarrollar aplicaciones SDN con Python, sFlow-RT y OpenFlow 1.3, para detener, redireccionar o dar calidad de servicio al tráfico que pasa por switches y/o enrutadores mediante una controladora SDN, a partir de eventos detectados por un colector de sFlow.
 

Autor: Jaime Olmos
Revisado: Alejandro Acosta, Azael Fernández y José Luis Gaspoz.