VPSs y mas.

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

viernes, 8 de diciembre de 2017

Como determinar si un string es una dirección IPv4 o IPv6 en Python3

Hola,
  Escribo este post porque en varias oportunidades me han escrito como uno puede determinar si un string es una dirección IPv4 o IPv6 en Python3.

Solución 
  Nos apoyaremos en el módulo ipaddress de python3.
  Algo tan sencillo como esto:

a='2001:db8::1'
if ipaddress.ip_address(a).version == 6:
  print ('es IPv6')
else:
  print ('es IPv4')


 Espero te ayude,

miércoles, 15 de noviembre de 2017

Reto IPv6 - Lacnic - LACTF. Resumen 2017

Se han llevado a cabo 2 versiones del Reto LACNIC IPv6 en el 2017, durante mayo y septiembre, con la participación de 30 personas registradas de 7 países en ambas versiones, con 20 y 10 participantes, respectivamente, en forma individual o en grupo.

Se integró un Comité evaluador compuesto por 5 personas reconocidas en el tema de IPv6, todas integrantes del comité del FLIP6, cuyas funciones han incluido:
- Apoyar o sugerir pláticas de temas muy concretos que ayudaron a los participantes a tener más conocimientos y herramientas, para poner y ofrecer servicios con soporte de IPv6 en sus instituciones.
- Revisar los reportes de pruebas realizadas por los participantes.
- Validar el acceso y la disponibilidad de los servicios habilitados con IPv6.

De acuerdo a un monitoreo de los dominios de los portales web de los participantes, se verificó si algunos ya tenían asociadas direcciones IPv6 aunque la conectividad a los mismos no era exitosa, por lo que fue necesario demostrar la habilitación reciente de IPv6, el soporte de ambas versiones, y también de otros servicios que pudieran ofrecer en producción con ambas versiones del protocolo, cuidando los aspectos de seguridad y disponibilidad.
Todo lo anterior sirvió de elementos (puntos) para que el comité evaluador del Reto, pudiera tomar una decisión final de posible(s) ganador(res) del mismo.

Adicionalmente, se monitorearon dominios de sitios y estado de la habilitación de IPv6 en los servicios de las aplicaciones documentados por los participantes, antes, durante y después de la última versión de los reportes de avances.
Usando diferentes herramientas como “NAT64check” (https://nat64check.ipv6-lab.net/v6score) y comandos de conectividad como ping y traceroute. En la Fig.1 se muestra la prueba previa realizada al portal de uno de los finalistas de la versión 2 del Reto.



Fig. 1. Prueba previa realizada al portal de uno de los participantes del Reto

Se creó una sección en el Portal de IPv6 de LACNIC (http://portalipv6.lacnic.net/reto-ipv6) donde se incluyeron respuestas a las preguntas mostradas en la Fig. 2, del cartel promocional del Reto:


Fig. 2. Cartel promocional del Reto LACNIC IPv6

A los participantes de ambas ediciones del Reto se les ofreció un Webcast para aclarar dudas y recibir retroalimentación, además se creó una cuenta de correo con la participación del Comité evaluador.
En los reportes de avances se les solicitó reseñar lo realizado hasta cada momento (pruebas, reuniones con personal técnico y administrativo, etc.) para documentar:
- Reseña de la opción de obtención de bloque propio o usar el proporcionado por un proveedor (ISP). Si enviaron la solicitud de bloque al staff de LACNIC, indicando el status, y la documentación de los trámites.
- La indicación del grado de uso y anuncio del prefijo asignado con resultados de pruebas y el listado de servicios con soporte de IPv6.
- Aciertos y dificultades encontradas.
- Avances incrementales (# de servicios y usuarios con soporte de IPv6).
- Capturas de pantalla que comprobaran el punto anterior.
- En tablas con datos de los resultados de comandos como: ipconfig, ifconfig, ping, traceroute, netstat, etc.
- Indicación de los servicios que se ofrecieron también con IPv6.
- Confirmación del o los dominios de los servicios.
- Los pendientes y metas por lograr posteriormente.

Se fijaron varias fechas a cumplir por los participantes del Reto para el envío de una 1er. y 2a. versión del reporte de avances.

Así, en la retroalimentación del Reto de mayo, se recibieron 3 reportes de avance y tomando en cuenta sus aportaciones, se designaron 2 finalistas.
Por otra parte en la 2a. versión del Reto de septiembre, se recibieron únicamente 2 reportes de avance, por lo que la decisión de los finalistas fue más inmediata por parte del comité evaluador.

Finalmente después de cada premiación a los ganadores se les solicito, como parte de los resultados esperados de los datos de los reportes, el trabajar en un par de párrafos para publicar una nota al respecto en la publicación de LACNIC. Donde tuvieron que resumir lo realizado y comentar sobre la experiencia de participación en el Reto IPv6 LACNIC 2017 que incluyó lo que los impulsó a participar, los desafíos y dificultades sobre la implementación y uso de IPv6, los avances medibles, así como los procesos internos que se tuvieron que realizar y superar. Por lo que se les pidió contestar a las preguntas:

* ¿Qué los impulsó a participar en el Reto IPv6?
* ¿Con qué desafío se encontraron en el proceso?
* ¿Qué avances ha logrado implementar su institución en relación a IPv6?
* ¿Cree que las organizaciones son conscientes de la necesidad del despliegue de IPv6 o todavía piensan que lo ven como algo lejano?
* ¿Cómo ha sido el proceso interno en su institución para decidir avanzar en el despliegue de IPv6?
* ¿Cuáles son las principales dificultades a la hora de discutir sobre la implementación de IPv6?

Reflexión final:
Me ha parecido una experiencia muy alentadora la participación que espero se vaya incrementando y articulando con otras actividades dentro de LACNIC. Todos a final de cuentas seguimos aprendiendo de este tipo de iniciativas para mejorarlas y agregar más elementos al Reto mismo, como el grado de complejidad pero para motivar mas la participación, creatividad y obtener mejores resultados que se puedan dar a conocer.

El desafío a seguir promoviendo como una oportunidad de aplicar IPv6 en servicios en producción por parte de las entidades participantes miembros de LACNIC o de la región, sin lugar a dudas servirá para incrementar aún más el uso y despliegue de IPv6, compartir experiencias, y alentar a quienes no ven como caso de estudio y menos de negocio el habilitar servicios también con IPv6.

Referencias:

- Sección del Reto en el Portal de IPv6 de LACNIC (http://portalipv6.lacnic.net/reto-ipv6)
- Introducing NAT64 Checker
https://labs.ripe.net/Members/JanZorz/introducing-nat64-checker


Autor:
Azael Fernandez Alcantara
@lactf

martes, 6 de septiembre de 2016

Ejemplo: Linux y Network Prefix Translation (NPT)

Introducción:
En este post voy a intentar explicar brevemente que es NPT, por qué es útil y finalmente dejaré un pequeño ejemplo que espero sea de utilidad.


¿Qué es NPT?
NPT por sus siglas en Inglés significa Network Prefix Translation, algunos lo podrás comparar con NAT en IPv6.., y bueno,., es medianamente cierto. Siendo la palabra “medianamente” perfectamente utilizada en la oración previa.


En NPT básicamente lo que se busca es traducir la dirección origen en un datagrama IPv6, pero particularmente la sección del prefijo de red (NET ID) dejando la parte del IID (Host ID) sin modificación.


¿Por qué hacer NPT?
Existen varias razones. Voy a mencionar solo dos.


  1. Estoy en una red con dos proveedores de Internet (no tengo IPs propias ni ASN), pero necesito alguna redundancia para salir a Internet. El equipo de borde en vez de realizar un NAT con sobre de carga de puertos a una sola dirección IP (con todos los problemas y limitantes que esto ocasiona) solo modifica los primeros bits del la dirección (digamos, los primeros 64 bits solo como manera de ejemplo).
  2. Si necesitar hacer “renumbering” de tu red pero tienes IPs del tipo ULA (u otra propia quizas) tu vida será mucho más sencillo al solo tener que modificar el traductor NPT y no hacer re-enumeración de toda la red.


Diagrama ejemplo


Configurando un equipo Linux para hacer NPT:


Los pasos para configurar NPTv6 (o NPT) en Linux son muy sencillos. Debes hacerlo tanto de paquetes salientes como de paquetes entrantes.


#From internal network to external Network
ip6tables -t nat -A POSTROUTING -d 2000::/3 -s 2001:db8:AAAA:AAAA::/64 -j NETMAP
--to 2001:db8:CCCC:CCCC::/64;


#From external network to internal network
ip6tables -t nat -A PREROUTING -s 2000::/3 -d 2001:db8:CCCC:CCCC::/64 -j NETMAP
--to 2001:db8:AAAA:AAAA::/64;


Mas info:


Y por supuesto el RFC mismo:

jueves, 28 de julio de 2016

martes, 26 de julio de 2016

miércoles, 4 de mayo de 2016

Lanzamiento del proyecto Doctor IPv6

Hola todos,
 En esta oportunidad quiero comentar que hace dos horas tuve el honor de anunciar el proyecto llamado Doctor IPv6 en el marco de Lacnic 25. Por ello decidí escribir estas líneas con el objetivo de describir el proyecto. En el siguiente párrafo resumo de manera muy simplista el proyecto y más abajo se encuentra descrito con bastante detalle.
 Dr. IPv6 es básicamente un mecanismo donde personas con alguna duda o pregunta pueden enviar la misma a una casilla de correo electrónico (dr.ipv6 @ lacnic at net) y luego reciben una respuesta en formato PODCAST (.mp3 guindado en http://portalipv6.lacnic.net).
 
¿Qué es Doctor IPv6?
Doctor IPv6 pretende ser un novedoso programa para impulsar IPv6 en la región de Lacnic.
El objeto es que exista una casilla de correo destinada a recibir preguntas de la comunidad y que las mismas sean contestadas frecuentemente via Podcast y sean guindadas en una sección pública dentro del Portal IPv6 (u otro sitio nuevo para tal fin). Pregunte a Dr. IPv6 es la segunda fase de la creación de Podcast de Lacnic.


¿Quienes pueden preguntar?
Cualquier persona de la comunidad de Lacnic suscrita a la lista Lactf. La intención es aclarar dudas relacionadas a IPv6

¿Que tipo de preguntas se recibirán?
Preguntas de cualquier índole, no limitado a:
  1. Monitoreo de Redes IPv6
  2. DNS e IPv6
  3. BGP e IPv6
  4. IPv6 en redes LTE
  5. IPv6 en MPLS
  6. Despliegue de IPv6
  7. Seguridad
  8. Neighbor Discovery
  9. Despliegue
  10. Muchas más


¿Cómo funciona?
Los pasos serían los siguientes:


  1. Se invita a la comunidad a realizar preguntas en la lista lactf
  2. La comunidad envía preguntas a dr.ipv6 @ lacnic at net
  3. Lacnic busca candidatos prospectos para contestar las preguntas
  4. Un moderador realiza la entrevista (y graba la misma) al candidato seleccionado en “b”
  5. Lacnic guinda en el Portal IPv6 (u otro sitio) un archivo mp3 con las respuestas
  6. Se anuncia el archivo y respuesta disponible en la lista lactf



¿Qué beneficios que se esperan del programa:
El programa puede tener gran cantidad de beneficios. Los dos principales son:
  1. Impulsar el despliegue de IPv6 en la región apoyando a los operadores de red mediante este nuevo mecanismo
  2. Aumentar la participación de la comunidad con las tareas de Lacnic


Duración:
Max: 20 min


Formato del archivo:
mp3 y ogg

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

sábado, 2 de enero de 2016

Virualbox en Windows. Adaptador puente/bridge + IPv6 no sirve

Situación:
  Cuando intentamos tener IPv6 en la interfaz inalambrica utilizando modo Bridge/Puente  IPv6 no funciona correctamente, quizás hace SLAAC satisfactoriamente pero al momento de navegar o hacer ping6 sencillamente no sirve.

Solución
  Para resolver esta situacion reinstala/repara tu actual Virtualbox (versión 5) agregando como parámetros lo siguiente: "-Win.exe -msiparams NETWORKTYPE=NDIS5"

Sería algo así:

G:\>VirtualBox-5.0.12-104815-Win.exe -msiparams NETWORKTYPE=NDIS5

  Nota que no puedes hacer  doble click sobre el archivo, es decir, debes hacerlo desde el prompt de DOS con privilegios de administrador

Workaround:
  Conectarse cableado y hacer el bridge/puente con la interfaz cableada del host

Más referencia:

Suerte,

jueves, 10 de diciembre de 2015

Retrospectiva: Acceso IPv6 en la region Latinoamerica y Caribe - Año 2015

Estimados amigos(as), un gusto saludarles,
  Primero, un pequeño comentario, el año pasado hice un Post con un título muy similar [1], este vendría a ser la versión 2015 :-)

  Segundo, este año para mí fue muy especial, entre otros a) dentro de Lacnic logramos obtener más estadísticas y set de datos relativos a IPv6 (abajo más información), b) 2015 marcó mi último año como moderador del foro de IPv6, c) por otro lado, hicimos dos "estrenos" de material para apoyar la difusión de v6 (canción [5] e historia animada [6]) el cual aparentemente a tenido muy buena acogida. 

   Vamos entonces a hacer un repaso del 2015, tener una pregunta siempre ayuda como kick-off. ¿Qué ha pasado este año con IPv6 en nuestra región?. Obtenemos los siguientes protagonistas:

Perú
  Capital gastronómica de Latinoamérica, un país con cerca de 1.3 mm de KM2 y una población de 31 mm de habitantes. Para la mayoría de nosotros no es un secreto saber que este país lidera para LAC el tráfico IPv6 en el usuario final. Perú tiene un tráfico superior a 15%, tanto así que se encuentra en el TOP 10 de los países con IPv6 en el mundo. Aún se mantiene como el único país con doble dígito en nuestra región. Tener hoy 15% representa un salto de 50% con la misma medición a finales del 2014. Mis felicitaciones!!

Ecuador
  Ecuador es famoso por sus tejidos de llama y alpaca, y ahora con IPv6 no nos deja de sorprender, este año comenzó con ~3.18% de penetración de IPv6 y hoy en día se encuentra sobre el 9%. Una característica muy interesante de Ecuador es la gran diversidad de ASs que están generando v6. Mantengan el ritmo!!

Bolivia
  Donde se encuentra el santuario de mariposas mas grande el mundo repite este año como protagonista. De hecho hace 12 meses estaba comenzando un despliegue que ya proyectaba que venía con cosas buenas. Al momento de este escrito el país tiene 3.14% de penetración de IPv6 en el usuario final. Un número que es 50% mayor que en Julio de 2015 y cerca del 1000% mayor que comenzando el año. Desde nuestro observatorio de IPv6 ha sido el país con mayor crecimiento en IPv6. Un fuerte aplauso!

Brasil
  Uhhh, las playas, los carnavales, el fútbol, muchas más cosas. Este país desde mi óptica es el gran ganador este año. Es un país que comenzó el 2015 con ~0.17% de penetración de IPv6 en el usuario final, hoy en día tiene 6.42%. Es un caso muy interesante porque existen gran cantidad de ISPs realizando el despliegue de IPv6. Mover la aguja del medidor de tráfico v6 para un país del tamaño de Brasil no es sencillo. Grandes!! 

Trinidad y Tobago
  TT es otro país famoso por su Carnaval, algunos dicen que la música se puede escuchar en el extremo de Venezuela si el viento colabora. TT parece ser el quién quiere liderar v6 en el caribe, al menos así lo dicen las estadísticas. Trinidad y Tobago comenzó el año con 0.01% de tráfico v6 en el usuario final y al día de hoy tiene más de 0.31%. Muchos pensarán que es un número chico pero muchos países comenzaron así y hoy en tienen 5-10-15-30%. Por algún punto hay que comenzar :-) Muy bien TT!!

Paraguay
  No quise pasar la oportunidad de hablar del país del Tereré porque este año un ISP (Copaco) hizo un anuncio buscando Beta testers [8], ójala este llamado aumente el tráfico de IPv6 en dicho país. El 2016 promote para PY!!

¿El resto de los países?
  Para quien escribe estas líneas _no_ es cómodo “pasar” sin mencionar a muchos países, lógicamente quiero mencionar a todos. Existen muchos otros donde sabemos que hubo algo de IPv6, por ejemplo en Costa Rica, Panamá y Venezuela [7]. Es importante recordar que lógicamente uno no escucha ni se entera de todo, es decir, deben haber muchas otras implementaciones de las cuales no estamos al tanto.

¿Y el promedio de LAC?
  Este número también ha aumentado significativamente, tuvo un crecimiento mayor al 100% durante el 2015. El número se incrementó de 0.51% a comienzos de Enero a 1.15% en Diciembre de 2015. Un crecimiento que no es malo pero aún es chico para nuestra región; recordemos que el tráfico a nivel mundial de IPv6 está cerca del 10%. Desde nuestra perspectiva tenemos grandes esperanzas para el 2016, creemos que el tráfico va a aumentar significativamente. IPv6 es el futuro.


Reciban un fuerte abrazo.

Alejandro Acosta,
[2] Histórico penetración de IPv6 (datos procesados de Google): 
[3] Historio de websites de LAC con AAAA en el TOP 1 millon mundial: 
[5] Datos abiertos de [3]: 
[6] La triste historia de un ISP sin IPv6: https://www.youtube.com/watch?v=3DOcc18Bj2U
[7] Canción: “v6 is the one for me”: https://www.youtube.com/watch?v=99Qw9cfpyEg

lunes, 7 de diciembre de 2015

Configurando una red con DHCPv6 Server (Cisco), DHCPv6 relay (Linux - ISC) y como CPE un Router Cisco

Introducción
  Este post es muy similar al encontrado en:  http://blog.acostasite.com/2015/11/configurando-una-red-con-dhcpv6-server.html
  La principal diferencia es que en esta oportunidad tendremos el DHCPv6 Server en Cisco y no en Linux
  En el presente post vamos a explicar e implementar como trabajar con DHCPv6 Server, Relay y Cliente.
  Favor leer la sección: "Explicación de la topología" la cual indica cada función


Topología




Explicación de la topología

En la topología de arriba va a ocurrir lo siguiente:

- El Cisco DHCPv6 Server está entregando prefijos v6
- El DHCPv6 Relay (Debian) va a escuchar por la interfaz ethernet1 (e1) por peticiones DHCPv6 de Prefix Delegation (PD). Las mismas serán reenviadas por la interfaz ethernet0 (e0) al servidor DHCPv6 Server
- El Cisco Router DHCPv6 Client va a hacer solicitudes DHCPv6 PD en su interfaz f1/0, del prefijo recibido va a configurar su interfaz f0/0 y enviar Router Advertisements por dicha interfaz permitiendo a los clientes auto-configurarse. En esta oportunidad también configuraremos otras interfaces pero solo a manera de ejemplo.
- Los clientes conectados a la interfaz f0/0 en el Cisco DHCPv6 Cliente van a autoconfigurarse vía SLAAC utilizando el prefijo recibido por RA

  Nótese que para el Router Cisco DHCPv6 Client le es transparente el DHCPv6 Relay Server


Que necesitamos:

- Del lado del Relay el software Relay de DHCPv6 de ISC (que es diferente al server)
- El Router tiene que ser un enrutador que haga DHCPv6 cliente PD

Instalando
En el Relay Server:
  #sudo apt-get install isc-dhcp-relay

  Durante la instalación del relay se van a realizar varias preguntas. Puedes decidir contestarlas o no. Para este post no es necesario responderlas.


Configuraciones:

Del lado del Cisco DHCPv6 Server:

ipv6 unicast-routing
interface FastEthernet0/0
 ipv6 address 2001:DB8::1/64
 ipv6 dhcp server DHCPv6-SERVER
end

ipv6 dhcp pool DHCPv6-SERVER
 prefix-delegation pool MY-PD-1

ipv6 local pool MY-PD-1 2001:DB8:ABCD::/48 56


Explicando la configuración:
Primero se le indica al equipo que puede enrutar paquetes IPv6. Luego se configura IPs estáticas entre el relay y la interfaz f0/0 (revisar la ethernet0 del relay).
Luego, se le indica que la interfaz sirve como DHCPv6 Server y se le asigna el pool DHCPv6-Server, aquí podemos escribir cualquier nombre.

Dentro del pool DHCPv6-Server se le dice que haga prefix-delegation (se le puede indicar más información pero para nuestro propósito hasta aquí es suficiente) y que utilice un pool local llamado MY-PD-1. Este pool va a utilizar prefijos dentro de 2001:DB8:ABCD::/48 y entregará bloques /56 a sus clientes. Aquí podemos indicar el tamaño de prefijo que queremos.


Del lado del relay:
Red:
  #ifconfig eth0 inet6 add 2001:db8::2/64
  #ifconfig eth1 inet6 add 2001:db8:1::2/64

  No hay configuraciones. El relay es levantado con este comando:
  #dhcrelay -I -l eth1 -u eth0

Explicación del comando para ejecutar el dhcp-relay:
Hay muchas maneras y opciones para dhcrelay, en el comando anterior se esta diciendo: que se utilice el DHCPv6 interface-id option, que escuche peticiones por eth1 y las mismas sean enviadas por eth0


Del lado del Cisco Router DHCPv6 Cliente:

ipv6 unicast-routing
interface FastEthernet1/0
 description Hacia DHCPv6 Relay Server
 ipv6 address 2001:DB8:1::1/64
 ipv6 dhcp client pd IP-FROM-DHCPv6-SERVER
end

interface FastEthernet0/0
 description Hacia LAN
 ipv6 address IP-FROM-DHCPv6-SERVER ::1/64
end

Explicación de la configuración del router Cisco:
Primero se habilita el routing IPv6 en el equipo.
Segundo, en la interfaz F1/0 se le esta diciendo al router que es DHCP cliente para prefijos y le asignamos el nombre: IP-FROM-DHCPv6-SERVER
Tercero, en la interfaz f0/0 le indica al router que utilice el prefijo recibido via DHCPv6 client y asigne el mismo a la interfaz como ::1/64. Es decir, el router toma el /56 del DHCPv6 y el mismo router va a crear una /64 para f0/0 (nota que puedes configurar otras interfaces utilizando el mismo prefijo recibido por el DHCP). 


Para revisar:
Del lado del DHCPv6 Server deberiamos ver algo como:

a) Con el DHCPv6 server corriendo en foreground puedes ver:

DHCP-Server#debug ipv6 dhcp detail

Se veran mensajes como:

*Dec  1 09:55:14.619: IPv6 DHCP: Received RELAY-FORWARD from 2001:DB8::2 on FastEthernet0/0
*Dec  1 09:55:14.623: IPv6 DHCP: detailed packet contents
*Dec  1 09:55:14.623:   src 2001:DB8::2 (FastEthernet0/0)
*Dec  1 09:55:14.627:   dst FF05::1:3
*Dec  1 09:55:14.627:   type RELAY-FORWARD(12), hop 0
*Dec  1 09:55:14.627:   link 2001:DB8:1::2
*Dec  1 09:55:14.631:   peer FE80::C801:24FF:FE20:1C
*Dec  1 09:55:14.631:   option INTERFACE-ID(18), len 4
*Dec  1 09:55:14.635:     0x01000000
*Dec  1 09:55:14.639:   option RELAY-MSG(9), len 50
*Dec  1 09:55:14.639:     type SOLICIT(1), xid 2389101
*Dec  1 09:55:14.643:     option ELAPSED-TIME(8), len 2
*Dec  1 09:55:14.643:       elapsed-time 0
*Dec  1 09:55:14.647:     option CLIENTID(1), len 10
*Dec  1 09:55:14.647:       00030001CA0124200000
*Dec  1 09:55:14.647:     option ORO(6), len 6
*Dec  1 09:55:14.651:       IA-PD,DNS-SERVERS,DOMAIN-LIST
*Dec  1 09:55:14.655:     option IA-PD(25), len 12
*Dec  1 09:55:14.659:
DHCP-Server# IAID 0x00040001, T1 0, T2 0
*Dec  1 09:55:14.663: IPv6 DHCP: Using interface pool DHCPv6-SERVER
*Dec  1 09:55:14.667: IPv6 DHCP: Source Address from SAS 2001:DB8::1


b) DHCP-Server#sh ipv6 dhcp binding
Client: FE80::C801:24FF:FE20:1C
  DUID: 00030001CA0124200000
  Username : unassigned
  Interface : relayed
  IA PD: IA ID 0x00040001, T1 302400, T2 483840
    Prefix: 2001:DB8:ABCD::/56
            preferred lifetime 604800, valid lifetime 2592000
            expires at Dec 31 2015 09:55 AM (2589331 seconds)


Del lado del Cliente DHCPv6 Cisco:
Para revisar si la interfaz f0/0 se autoconfiguró cone l prefijo recibido por el DHCPv6:
a) R1#show ipv6 interface f0/0

Vamos a ver algo como:

R1#sh ipv6 int f0/0
FastEthernet0/0 is up, line protocol is up
  IPv6 is enabled, link-local address is FE80::C801:24FF:FE20:0
  No Virtual link-local address(es):
  Description: Hacia LAN
  General-prefix in use for addressing
  Global unicast address(es):
    2001:DB8:ABCD::1, subnet is 2001:DB8:ABCD::/64 [CAL/PRE]


Nótese que 2001:DB8:ABCD::/64 corresponde al prefijo configurado en el DHCPv6 Server que es entregado vía PD


Algo muy importante es el comando:

b) R1#show ipv6 dhcp

El cual muestra el DUID (DHCPv6 Unique ID) del equipo (RFC3315):
This device's DHCPv6 unique identifier(DUID): 00030001CA0124200000


Podemos apreciar que este mismo número es que le llega al DHCPv6 Server


Del lado del cliente:
Depende de tu OS puedes hacer:
c:\ipconfig 

o

#ifconfig


¿Si hay más de una interfaz del lado del cliente?
En el ejemplo anterior el Cisco DHCPv6 Cliente está recibiendo un prefijo /56, esto quiere decir que tenemos hasta 8 redes /64 para crear. Hasta el momento solo hemos utilizado una en la f0/0.

De manera de ejemplo vamos a crear otras redes en las interfaces loopback0 y looback1 del router del lado del cliente.

interface Loopback0
 ipv6 address IP-FROM-DHCPv6-SERVER ::1:0:0:0:1/64
end

interface Loopback1
 ipv6 address IP-FROM-DHCPv6-SERVER ::2:0:0:0:1/64
end


La manera de construir los pseudo IPs (pe. ::1:0:0:0:1/64) colocados en la interfaz es la siguiente:
Imaginamos el prefijo recibido por DHCPv6, sabemos que es un /56. Lo que estamos haciendo es completando el resto del IP. 

Es decir: recibimos por DHCPv6 2001:db8:ABCD::/56. Al decirle a la loopback 1 ::1:0:0:0:1/64 construimos:  2001:db8:ABCD::1:0:0:0:1/64 (Prefijo recibido + la configuracion de la interfaz)


Vamos a revisar que IPs tienen entonces L0 y L1:

R1#sh ipv6 int l0
Loopback0 is up, line protocol is up
  Global unicast address(es):
    2001:DB8:ABCD:1::1, subnet is 2001:DB8:ABCD:1::/64 [CAL/PRE]


R1#sh ipv6 int l1
Loopback1 is up, line protocol is up
  Global unicast address(es):
    2001:DB8:ABCD:2::1, subnet is 2001:DB8:ABCD:2::/64 [CAL/PRE]


Proximos pasos
- Falta la parte de routing, hay muchas maneras de hacerlo, indiscutiblemente la intención es hacerlo con un protocolo de enrutamiento dinámico


Para más información:
https://tools.ietf.org/html/rfc6355
http://www.cisco.com/c/en/us/support/docs/ip/ip-version-6-ipv6/113141-DHCPv6-00.html
http://blog.acostasite.com/2014/04/instalar-isc-dhcp-43-en-linux-ubuntu.html
http://blog.acostasite.com/2014/04/solucion-tres-errores-cuando-queremos.html
http://blog.acostasite.com/2015/11/configurando-una-red-con-dhcpv6-server.html

lunes, 30 de noviembre de 2015

Configurando una red con DHCPv6 Server (ISC), DHCPv6 relay (ISC) y como CPE un Router Cisco

Introducción
  En el presente post vamos a explicar e implementar como trabajar con DHCPv6 Server, Relay y Cliente.
  Favor leer la sección: "Explicación de la topología" la cual indica cada función


Topología








Explicación de la topología

En la topología de arriba va a ocurrir lo siguiente:

- El Ubuntu DHCPv6 Server está entregando prefijos v6
- El DHCPv6 Relay va a escuchar por la interfaz ethernet1 (e1) por peticiones DHCPv6 de Prefix Delegation (PD). Las mismas serán reenviadas por la interfaz ethernet0 (e0) al servidor DHCPv6 Server
- El Cisco Router va a hacer solicitudes DHCPv6 PD en su interfaz f1/0, del prefijo recibido va a configurar su interfaz f0/0 y enviar Router Advertisements por dicha interfaz permitiendo a los clientes auto-configurarse
- El cliente se va a autoconfigurar utilizando el prefijo recibido por RA

  Nótese que para el Router Cisco le es transparente el DHCPv6 Relay Server


Que necesitamos:
- Del lado del server el servidor de ISC DHCPv6
- Del lado del ralay el relay de DHCPv6 de ISC (que es diferente al server)
- El Router tiene que ser un enrutador que haga DHCPv6 cliente PD

Instalando
En el Server Linux:
  #sudo apt-get install isc-dhcp-server
 
En el Relay Server:
  #sudo apt-get install isc-dhcp-relay

  Durante la instalación del relay se van a realizar varias preguntas. Puedes decidir contestarlas o no. Para este post no es necesario responderlas.


Configuraciones:

Del lado del Server:
Red:
#ifconfig eth1 ine6 add 2001:db8::2/64
#route -A inet6 add default gw 2001:db8::1

en /etc/dhcp/dhcpd.conf

default-lease-time 600;
max-lease-time 7200;
log-facility local7;
subnet6 2001:db8::/32 {

  #Prefix range for PD
  prefix6 2001:db8:1:100:: 2001:db8:1:f00 /56;

}


Explicacion de la configuracion dhcpd.conf:
La parte mas importante de la configuracion de arriba es la linea "prefix6" donde se indica el prefijo inicial y final /56 que los clientes van a recibir.

Para levantar el servicio de DHCPv6:
# /usr/sbin/dhcpd -6 -d -cf /etc/dhcp/dhcpd.conf eth0

Del lado del relay:
Red:
  #ifconfig eth0 inet6 add 2001:db8::2/64
  #ifconfig eth1 inet6 add 2001:db8:1::2/64

  No hay configuraciones. El relay es levantado con este comando:
  #dhcrelay -I -l eth1 -u eth0

Explicación del comando para ejecutar el dhcp-relay:
Hay muchas maneras y opciones para dhcrelay, en el comando anterior se esta diciendo: que se utilice el DHCPv6 interface-id option, que escuche peticiones por eth1 y las mismas sean enviadas por eth0


Del lado del Cisco Router:

ipv6 unicast-routing
interface FastEthernet1/0
 description Hacia DHCPv6 Relay Server
 ipv6 address 2001:DB8:1::1/64
 ipv6 dhcp client pd IP-FROM-DHCPv6-SERVER
end

interface FastEthernet0/0
 description Hacia LAN
 ipv6 address IP-FROM-DHCPv6-SERVER ::1/64
end

Explicación de la configuración del router Cisco:
Primero se habilita el routing IPv6 en el equipo.
Segundo, en la interfaz F1/0 se le esta diciendo al router que es DHCP cliente para prefijos y le asignamos el nombre: IP-FROM-DHCPv6-SERVER
Tercero, en la interfaz f0/0 le indica al router que utilice el prefijo recibido via DHCPv6 client y asigne el mismo a la interfaz como ::1/64. Es decir, el router toma el /56 del DHCPv6 y el mismo router va a crear una /64 para f0/0 (nota que puedes configurar otras interfaces utilizando el mismo prefijo recibido por el DHCP). 


Para revisar:
Del lado del DHCPv6 Server deberiamos ver algo como:

a) Con el DHCPv6 server corriendo en foreground puedes ver:

Relay-forward message from 2001:db8::2 port 547, link address 2001:db8:1::2, peer address fe80::c801:24ff:fe20:1c
Picking pool prefix 2001:db8:1:f00::/56
Advertise PD: address 2001:db8:1:f00::/56 to client with duid 00:03:00:01:ca:01:24:20:00:00 iaid = 262145 valid for 600 seconds
Wrote 0 NA, 0 TA, 1 PD leases to lease file.
Sending Relay-reply to 2001:db8::2 port 547
Relay-forward message from 2001:db8::2 port 547, link address 2001:db8:1::2, peer address fe80::c801:24ff:fe20:1c
Reply PD: address 2001:db8:1:f00::/56 to client with duid 00:03:00:01:ca:01:24:20:00:00 iaid = 262145 valid for 600 seconds
Sending Relay-reply to 2001:db8::2 port 547

b) Para revisar los leases:
# more /var/lib/dhcp/dhcpd6.leases


Del lado del router Cisco:
Para revisar si la interfaz f0/0 se autoconfiguró cone l prefijo recibido por el DHCPv6:
a) R1#show ipv6 interface f0/0


Vamos a ver algo como:

R1#sh ipv6 interface f0/0
FastEthernet0/0 is up, line protocol is up
  IPv6 is enabled, link-local address is FE80::C801:24FF:FE20:0
  No Virtual link-local address(es):
  Description: Hacia LAN
  General-prefix in use for addressing
  Global unicast address(es):
    2001:DB8:1:F00::1, subnet is 2001:DB8:1:F00::/64 [CAL/PRE]


Nótese que 2001:db8:1:f00/64 corresponde al prefijo configurado en el DHCPv6 Server que es entregado vía PD


Algo muy importante es el comando:

b) R1#show ipv6 dhcp

El cual muestra el DUID (DHCPv6 Unique ID) del equipo (RFC3315):
This device's DHCPv6 unique identifier(DUID): 00030001CA0124200000


Podemos apreciar que este mismo número es que le llega al DHCPv6 Server


Del lado del cliente:
Depende de tu OS puedes hacer:
c:\ipconfig 

o

#ifconfig


Proximos pasos
- Falta la parte de routing, hay muchas maneras de hacerlo, indiscutiblemente la intención es hacerlo con un protocolo de enrutamiento dinámico
- En el próximo Post haremos exactamente lo mismo pero con el DHCPv6 Server que sea una caja Cisco.


Para más información:
- https://tools.ietf.org/html/rfc6355
- http://www.cisco.com/c/en/us/support/docs/ip/ip-version-6-ipv6/113141-DHCPv6-00.html
http://blog.acostasite.com/2014/04/instalar-isc-dhcp-43-en-linux-ubuntu.html
http://blog.acostasite.com/2014/04/solucion-tres-errores-cuando-queremos.html



sábado, 28 de noviembre de 2015

Carta de Lacnic Labs a Papa Noel

Querido Papá Noel, alias Santa Claus,

  Quiero comenzar esta carta dándote un gran saludo,  ojalá también pudiese darte un fuerte abrazo. Hace mucho que no te escribía, siento una felicidad interna indescriptible e inesperada.
  Quizás te extrañe un poco que vuelva a aparecer luego de tantos años, dicen que nunca es tarde, te aseguro que el cariño es el mismo, perdón, hoy en día es mayor, he aprendido a comprenderte y admirar tu trabajo, mis felicitaciones a tú persona!! :-)
  Antes de continuar no puedo omitir indicarte que todo el año me he portado muy bien, he hecho mis tareas cabalmente, ayudo al prójimo, he intento ser parte de la solución y no del problema. Claro, tú lo sabes todo pero quería decírtelo para prevenir, alguna se te debe escapar.
  Ahora bien, vamos al grano, se que tienes mucho trabajo y sobre todo en estas fechas, tu tiempo es valioso así que no voy a extenderme mucho.
  Te escribo no por mí, desde chico me enseñaron a pedir para los demás, en esta ocasión voy a pedir por alrededor de 600 millones de latinoamericanos, suena mucho pero créeme que solo hay que enfocarse en una pequeña cúpula de personas.., el resto viene solo.
  ¿Qué voy a pedir para toda esta gente?…, cosas más sencillas que lo que parecen, me han dicho que no sabes mucho de tecnología y por ello voy a explicarte muy breve cada regalito.., ahh, tampoco voy a pedir mucho, me han enseñado a máximo tres regalos y sin garantía de que se cumpla…., pienso que mis padres repetían lo que tu le decías a ellos.
  Quiero para esta navidad o durante el 2016:

- Un Internet más seguro… Santa, puedes creer que existen muchas tecnologías de seguridad y aún no las implementan!, muchas gratis y sencillas, bueno Santa, esta no puede faltar. Pls!
- Mejores interconexiones… con esto quiero decir más IXPs, más conexiones entre ISPs y diferentes entidades. Esto trae ahorre de costos, mejor rendimiento, mayor uptime de servicios, facilidad de troubleshooting y muchas cosas más. Es una práctica mundialmente aplaudida y comprobada y aún hay gente que no esta convencida. ¿Me ayudas?
- Y por último…, más IPv6 en la región!. ¿Puedes creer que el promedio aún es ligeramente mayor al 1% en LAC?.., estamos hablando de un protocolo que va a ayudar a los países a ser más productivos, a mejorar la calidad de vida de la gente, a disminuir la rata de falla en las aplicaciones y aún así mucha gente no da el paso a implementarlo. ¿Cuento contigo?


  En estos tiempos tan difíciles de gusanos, backdoors, rootkits, troyanos, secuestro de redes e información creo que mi solicitud no es una cosa loca, se que no es fácil pero entre todos podemos :-)   Ahh, no debemos olvidar el otro casi 50% de la población que aun no cuenta con Internet, afortunadamente este indicador se mueve a favor de mí deseo pero me encantaría que fuese más rápido, no por mí, sino por ellos.

  Antes de finalizar la carta no quiero despedirme sin enviarle saludos a la señora Santa y a los renos -en especial a Rodolfo!!-, quienes han hecho pasar horas de infinita alegría a millones de niños.  Espero todos tengan su tablet y su conexión a Internet con IPv6, sino me avisas y vemos si podemos conectarte en el Polo Norte…, creo que no lo cubre Lacnic pero te extendemos nuestro apoyo.

  Recibe un gran saludo, ojalá pases por mí casa  y en vez de dejarte unas galletas  y leche, te daré un modem Wifi 802.11ac y un SSD.

Un fuerte abrazo con mucho amor

Lacnic Labs

sábado, 24 de octubre de 2015

Draytek Vigor 2920 y tunel IPv6 hacia Hurricane Electric

Introducción:
  En el presente post vamos a explicar como levantar un tunel IPv6 dentro de IPv4 hacia Hurricane Electric.

Pasos:

Del lado de he.net
1) Primero es necesario tener una cuenta tunnel en www.he.net.
2) Luego es necesario crear un tunel regular






3) Luego llenar los datos: correspondientes a la información del tunel



4) Posteriormente debes conseguir la información correspondiente a tu tunel aquí:


5) Y en la página siguiente después de hacer click sobre el nombre del tunel:





Nótese los números 1, 2, 3 que fueron añadidos. Esta misma información la necesitaremos más adelante.


Del lado del 2920/del equipo Draytek con Vigor:

6) Ir a: WAN --->  Internet Access --> IPv6


7)  En la siguiente panatalla debes llenar los siguientes datos. Necesitas la información tomada en el paso 5. He colocado los números para una fácil comprensión:




Puedes hacer otras cosas con la longitud prefijos pero colocando /64 es suficiente.


8) El router se va a reiniciar.


Para probar:
Linux:
  ping6 www.lacnic.net

Windows:
  ping -6 www.lacnic.net


Referencias:

Basado en experiencia propia y: http://kb.networksystemssolutions.info/index.php/IPv6


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.