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

jueves, 16 de julio de 2020

Internet táctil e IPv6

Introducción
Un concepto (si, ¡otro más !) que seguro aumentará los próximos años será “Internet táctil”, así como suena ¿bonito?, ¡yo lo veo super!, incluso suena como un sueño, todo eso que vimos en películas y en comics los últimos 35 años parece que finalmente será una realidad.
¿Cuales sueños?, unos super lentes, con unos super guantes, manejar un robot a distancia, hacer lo que yo le diga, con una maravillosa visión y virtualmente unos superpoderes, salvar una vida, ufff muy cool, ¿no?. No estamos tan lejos de todo esto

Para apreciar el futuro es importante recordar el pasado
Para los que nacimos antes de los años 80 muy seguramente nos recordaremos un poco de la evolución de los monitores monocromáticos (MDA), CGA, EGA, VGA, SVGA, etc. Cada cambio ya era MUY importante, poder ver colores en la pantalla, poder pintar decentemente algo. Luego esos colores “estáticos” vinieron apoyados con algo de movimiento, luego video e incluso audio, los conceptos de multimedia ya estaban con nosotros (multi medios). El Internet táctil representa algo así como un super-mega-multimedia !

Comencemos: ¿Qué es el Internet Tactil?
No voy a inventar la rueda indicando el término, aquí les dejo un copy/paste tomado de [1]:
“Aunque esta denominación parece nueva no lo es. El término 'internet táctil' fue acuñado a principios de 2014 por el propio profesor Fettweis. La Unión Internacional de Telecomunicaciones (UIT) ya lo definió en un informe en Agosto de 2014. Básicamente, según su definición, va a combinar múltiples tecnologías, tanto a nivel de redes como de aplicaciones. El internet táctil va a permitir la interacción háptica con la retroalimentación visual.”
Si buscamos otros conceptos aquí y allá es básicamente utilizar nuestros sentidos a través de la red, es decir: tacto, olfato, ver, gusto y escuchar. Bueno, es cierto, varios de estos ya lo hacemos hoy en día.

Entonces: ¿por qué el nuevo concepto?
El nuevo concepto viene por varios temas novedosos, principalmente: la palabra háptica que se encuentra en nuestra definición antes indicada. Háptica en el concepto de Internet Táctil se refiere precisamente al sentido del tacto, Por otro lado, según Wikipedia [2]
“.... el significado de la palabra háptica, refiriéndose por exclusión a todo el conjunto de sensaciones no visuales y no auditivas que experimenta un individuo.

¿Para qué servirá el Internet táctil?
Aquí es donde no hay límites, solo me vienen las palabras de Buzz Lightyear en las famosas películas de Toy Story: “Hasta el infinito y más allá”
¿Por dónde comienzo?, tengo una idea, comienza tú mismo, piensa en algo que hayas querido hacer: ¿lanzarte en paracaídas?, ¿nadar con tiburones? ¿ser un bombero durante un incendio? ¿jugar tenis contra Roger Federer? ¿anotar un gol en un mundial de Fútbol?
Otra: ¿qué quieres aprender que pienses que necesite presencia física?, ¿cocinar? ¿una clase de piano o guitarra? ¿clases de natación?.., lo que sea.
Esto es precisamente donde Internet táctil toma relevancia; Internet Tactil busca acercar lo que no se puede hacer remoto, conceptos como hologramas ya son posibles transmitirlos, manipular objetos remotos, robótica, realidad virtual, realidad aumentada, lógicamente IoT,. Vivir con nuestros sentidos lo que no está cerca.
En estos momentos de pandemia podríamos tener a la profesora vía holograma en la sala de tu casa enseñando matemáticas a tu niño. ¿Suena genial, no?
Que opinas de esto: acercar un gurú médico para una operación (ciertamente ya se han hecho varias) muy delicada a un paciente, si hoy es posible, mañana será habitual. Ya incluso imagino un médico recibiendo clases a distancia con holograma, robots, guantes, VR, etc de cómo va a operar remotamente, lo mejor, todo va a salir bien!.
¿Prácticas de diferentes actividades?, virtualmente todo se podrá practicar: música, deportes, cocina, piloto, conductor, odontología y un larguísimo etcétera. Un ejemplo: hoy en día existen “robots limitados” donde se realizan prácticas quirúrgicas. Muy pronto tendremos pacientes humanoides que responderán a lo que el practicante realice y responderán ante un dolor, una acción, un movimiento.
Vamos bien, ¿no?. Antes de continuar, al día de hoy (Julio 2020) Internet Táctil está muy ligado a redes celulares 5G sin embargo mi presentimiento es que no será siempre así, eventualmente saldrán redes 6G, 7G, algún super Wifi, etc, etc.

¿Y en que apoya IPv6 al Internet táctil?
Con todo lo anterior no me cabe la menor duda que la mejor manera de conectar cada cosa será con IPv6. Sin embargo, la mejor manera de responder esta pregunta es pensar: ¿Qué requiere Internet Táctil?. Aquí lo presentamos:
  1. Algo que viene de la mano con Internet táctil es el tiempo de respuesta de los objetos (RTT/Delay de los enlaces en muy pocos milisegundos); imaginemos utilizar un robot a distancia, queremos que sea tan rápido como si estuviese al lado de uno. Si hablamos con un holograma, queremos que sea fluido. IPv6 cada día demuestra que los RTT son mejores a los de IPv4.
  2. Una red muy confiable, al día de hoy sabemos que la pérdida de paquetes en IPv6 es inferior a IPv4 (0.25% vs 0,33%). [3]
  3. Redes resilientes, para ello, IPv6 al no tener que traducir de direcciones (NAT) existe mayor posibilidad de éxito en las conexiones. [7]
  4. Mucho ancho de banda (claro, depende de lo que se desea hacer).
¿Es todo esto suficiente?
La respuesta es mayormente un NO. Podemos tener ancho de banda al orden de Gigas o Teras, no tener pérdida de paquetes, IPv6 en los dispositivos pero aún así la barrera del tiempo de respuesta estará allí, cada milisegundo cuenta. Nos referimos a la interacción humana. Aunque parezca mentira la velocidad de la luz pareciera ser lenta en este contexto, aprox 300.000 km/seg (¿por cierto, sabías que la luz pierde el 31% de su velocidad sobre fibra óptica?) [4]
La velocidad de respuesta es sumamente importante -al menos para gran cantidad de implementaciones-; imaginemos que tenemos unos lentes (tipo Virtual Reality) que nos muestra un paisaje, si movemos la cabeza a la derecha ese paisaje que vemos en los lentes debe cambiar al mismo tiempo (máximo 1 ms), sino, nos sentiremos un poco mal, es llamado Cybersickness [6].

Conclusiones
El uso que se le da a Internet seguirá incrementándose, nuevas ideas saldrán todo el tiempo, las posibilidades de lo que se podrá hacer sobre la red son infinitas.
El tiempo de respuesta parece ser la limitante más complicada a solucionar.
En pocos años tendremos una red más confiable, nos convertirá en personas más productivas. Confío que estas tecnologías apoyaran a los ciudadanos y por ello a sus respectivos países a ser más competitivos y estos beneficios se trasladarán a la población en general. El uso correcto de dichas innovaciones mejorará notablemente la calidad de vida en 1 o 2 generaciones. Hay que aprovecharlo!.

Referencias:
[1] https://innovadores.larazon.es/es/el-internet-tactil-que-viene/
[2] https://es.wikipedia.org/wiki/H%C3%A1ptica
[3] https://www.hindawi.com/journals/mpe/2017/3056475/
[4] https://www.wired.com/2013/03/internet-at-the-speed-of-light/
[5] https://www.youtube.com/watch?v=NOG4zft9rxY&list=PLvZsgabGn2vR4TDEGeUIVJ36RgSV05UGW
[6] https://www.scitecheuropa.eu/virtual-reality-motion-sickness/89447/
[7] https://www.distributednetworks.com/internet-proxy-server/module2/nat-limitations.php

Hirola Infotech Solutions is one of the Best Digital Marketing company in Bangalore,Ranked among the Top digital marketing agencies in Bangalore Digital Marketing, Web Development, Software and mobile app development Company In Bangalore, India Best Best Digital Marketing company in Bangalore,Top digital marketing agencies in Bangalore, ppc, seo Hirola InfoTech Solutions, your number one source for our passion for helping small and medium size businesses has grown us into a full service strategic marketing company ,we are end to end provider of Digital marketing Web development & Applicatio

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:


martes, 9 de diciembre de 2014

Python Script: Probably useless but functional IPv6 Network scanner

Below is the code of what is probably useless but a functional IPv6 host scanner written in Python using threading.

To perform a regular (brute force) network scans in an IPv6 Network is almost impossible and it can take over 5.000 years to finish.

This project was purely academic and I just wanted to learn about threading in Python.

This software is not recommended for general usage.....

This  script  will call the OS to actually perform the ping

This software receives two parameters:
a) Prefix to scan in the format 2001:db8::/64 (subnet, not host)
b) Number of simultaneous processes it can run (MAXPINGS)

One more time it was purely academic stuff but hopefully it can make your day

Finally, AFAIK nmap does not yet support IPv6 network scan.

The code was written in python3:

--- cut here ---

#!/usr/bin/python3

import threading
import sys
import ipaddress
import subprocess
import time

CURRENTPINGS=0 # Number of simultaneous ping at a time

def DOPING6(IPv6ADDRESS):
  global MAXPINGS, CURRENTPINGS
  CURRENTPINGS+=1
  CMD="ping6 -c 3 "+str(IPv6ADDRESS) + " 2> /dev/null > /dev/null"
  return_code = subprocess.call(CMD, shell=True)
  if return_code == 0:  #If ping was succesful
    print (IPv6ADDRESS," is alive")

  CURRENTPINGS-=1

def main():
  global MAXPINGS, CURRENTPINGS
  if len(sys.argv) != 3: #Validate how many parameters we are receiving
    print("  Not enough or too many parameter")
    print("  Usage: ./scanipv6.py IPv6Prefix/lenght MAXPINGS")
    print("  Example: ./scanipv6.py 2001:db8::/64 20")
    print("  Prefix lenght can be between 64-128")
    print("  MAXPINGS corresponds to how many pings will be running at the same time")
    exit()

  SUBNET,MASK=sys.argv[1].split("/")
  MAXPINGS=int(sys.argv[2])

  for addr in ipaddress.IPv6Network(sys.argv[1]):  #Let's loop for each address in the Block
    ping_thread=threading.Thread(target=DOPING6,args=(addr,))

    while CURRENTPINGS >= MAXPINGS: # With this while we make it possible to run max simultaneous pings
      time.sleep(1)  # Let's wait one second before proceeding
      #print ("Interrumping...., CURRENTPINGS > MAXPINGS") #Uncomment this line just for debugging

    ping_thread.start()

main()

martes, 14 de octubre de 2014

La mala idea de bloquear Internet

Toda mi vida lo que siempre he querido es un Internet libre, sin bloqueos, rápido que ayude al mundo a comunicarse, a educarse, a estar informado. En mi humilde opinión el internauta tiene acceso a visitar la pagina que quiera y cuando quiera, sin importar el contenido lo que diga, lo que vea, lo
que escuche. No se nada de leyes pero creo que debe verse como un derecho del ciudadano a leer, ver y escuchar en Internet lo que la persona desee.

Bloquear paginas no es una solución, es mas un problema, no se llega a nada, la solución a los problemas esta en otra dirección muy lejana a bloquear las paginas y contenidos.

Supongamos un caso donde alguien realiza una publicación indicando que el cielo es rojo, las nubes anaranjadas o que esta lloviendo para arriba, ¿van a bloquear ese contenido?. ¿Tú no tienes derecho a poner esa información en una pagina Web?.

Ahora bien, imaginemos otro caso donde en la esquina de tu urbanización esta ocurriendo algo ilegal (y tu lo ves desde tu apartamento) ¿puedes o no publicar lo que esta ocurriendo en Internet?, ¿tomar fotos?, ¿realizar un artículo al respecto?. ¿Puedes ponerlas en Internet?, ¿te lo bloquean?, ¿tu pierdes la libertad de expresión y yo pierdo el acceso a tu informacion?. Peor aún, en segundos un familiar tuyo va a pasar por esa esquina..... gracias a la NO libertad de expresión y al NO acceso a
la información algo indeseado ocurrió que honestamente no quiero describir.

En los últimos meses (en realidad años) he visto como algunos países han decidido bloquear su acceso a Internet imposibilitando a sus habitantes a acceder a contenido legitimo a la información, pero peor aun dañando poco a poco la super autopista de la información.

Solo por mencionar algunos países con historial por bloquear -al menos un poco- su acceso a Internet (tomado de http://www.usatoday.com/story/news/world/2014/02/05/top-ten-internet-censors/5222385/  y http://en.wikipedia.org/wiki/Internet_censorship: ):
- Irán
- Egipto
- Coreo del Norte
- Venezuela
- Cuba
- China
- Turquía
Arabia Saudita
- Siria
- Vietman

Antes de proseguir, quiero indicar que por más de un año me he tomado la libertad de averiguar que manera utilizan para bloquear paginas Web u otros servicios a los usuarios, he recibido básicamente dos respuestas:

- Bloqueos por DNS
- Bloqueos por dirección IP destino

(claro, por detrás puede haber un montón de cosas que complican el escenario como firewalls, IDS, IDP, etc, etc)

Muchas personas, principalmente los técnicos dirán que ambos métodos son ineficientes y que se pueden evitar utilizando una VPN y/o cambiando los servidores DNS que utilizan los usuarios. Es muy cierto este pensamiento sin embargo en la realidad y en la practica son MUY pocas personas las que tienen conocimiento de DNS, muchos menos de VPN y a su vez este ultimo en algunas situaciones hay opciones pagas ($$) lo que reduce aun mas la poblacion dispuesta a realizar estos cambios. Por lo anterior pienso que bloquear contenido por DNS e/o IP destino es BASTANTE eficiente.

El objetivo de este post es indicar porque pienso que es mala idea bloquear Internet para un país:

1) Rompemos el Internet poco a poco y luego armarlo puede ser muy complicado
Esta razón es fatal para Internet y el país. Al estar constantemente creando y modificando rutas en los routers va a ir creando una especie de "agujeros parciales" a ciertas direcciones IP destino. Pero el problema no es solo este, sino la persecución de bloquear sitios trae consigo el bloqueo "actual" del destino sin nuevamente "permitir" el anterior. Esto ultimo conlleva a ir rompiendo poco a poco muchas direcciones IP legítimas en Internet que no pueden ser accedidas.
Multiplicando el efecto anterior, un caso similar ocurre en el mundo DNS.

2) Los inocentes pagan como pecadores
Siguiendo un poco con lo anterior supongamos el siguiente escenario de ejemplo: Un ciudadano común tiene un blog de cocina. Por cosas del destino su página web esta alojada en un virtualhosting bajo la misma dirección IP que una pagina que quiere ser bloqueada. ¿Qué va a ocurrir?. No puede ser accedida la pagina del blog de cocina. Para el ciudadano común y para el proveedor del virtualhosting identificar esta situación y solventar el caso seria muy complicado.

3) Teletrabajo
Hoy en día es normal trabajar, compartir y jugar de manera remota con diferentes personas en el mundo. Lamentablemente el bloqueo de IPs y de nombres DNSs obstaculiza el Teletrabajo; un ejemplo es que la persona con la que nos encontramos laborando remotamente quisiera compartir información/contenido utilizando medios que se encuentren bloqueados en uno de los países. Lo anterior es un entorpecimiento explícito que siendo antagónico me atrevo a decir que convierte al ciudadano en una persona menos productiva.

4) Dudas a los ciudadanos
Caso a) En el supuesto que una persona en el país bloqueado no pueda acceder a un sitio ¿qué va a pasa?: Quizás llame a su proveedor de servicio (perdiendo tiempo, dinero, creando molestias). Es muy probable que la persona que atienda el teléfono sencillamente no sepa revisar los DNS y rutas en los enrutadores, haya que escalar el caso y mucho mas. Para los proveedores esto es un costo que tiene que ser trasladado a alguien, por supuesto que al cliente. Es decir, el servicio de Internet se encarece.
Caso b) El ciudadano probablemente llame directamente a un amigo con conocimientos en informática, una vez mas: perdiendo tiempo, dinero y creando molestias
Caso c) Las dos anteriores

5) Perspectiva ante un bloqueo _nuevo_ del ciudadano:
Cuando un ciudadano no puede entrar a un sitio Web (o servicio) no sabe si fue bloqueado por el gobierno, por el ISP, el sitio web caído o si es algo temporal. Esto conlleva a una serie de molestias directas e indirectas que a su vez más trae problemas colaterales.

6) El error humano
Los administradores de red son personas como cualquiera, son propensos a cometer errores al igual que todos nosotros.
Es bien sabido que ____ % de errores en red son causados por errores humanos, ahora traslademos esta estadística a los administradores red que deben estar manipulando los servidores DNS y los routers creando rutas frecuentemente con el objetivo de bloquear algunos sitios y contenidos. Lastimosamente el resultado es un peor Internet para el ciudadano.

7) Históricos + falsos positivos (negativos?)
Este punto lo describiré con un ejemplo: Un proveedor de Internet contrata a un nuevo administrador de red; este último observa gran cantidad de direcciones IPs bloqueadas en los routers, es muy complicado que el nuevo administrador NO sepa si estos IPs fueron bloqueados momentáneamente por defenderse de un ataque de red anterior o corresponde a un bloqueo solicitado por el regulador del país (o el ente respectivo)

8) Daños colaterales:
Es común que muchas organizaciones realicen eventos 1,2 ó 3 veces al año y roten su sede en diferentes países. Es bien sabido que estas organizaciones evitaran los países con bloqueos a Internet.



9) Se rompe el acceso a sitios legítimos:
Un caso que he visto en varias oportunidades es el bloqueo por DNS apuntando a direcciones IP, quizás www.example.com a 1.1.1.1. Luego: supongamos que por asegurar el bloqueo a nivel de routing se enruta 1.1.1.1 a un hoyo negro (null 0) el ciudadano no podrá entrar ni al sitio que se bloqueo ni al sitio legítimo que se encuentre en la dirección IP bloqueada


Iba a colocar otras razones y puntos negativos de pasar a través de una VPN y cambiar los DNS en las máquinas tales como enlentecimiento de Internet, lentitud en la VPN y problemas de geolocalizacion  pero lo dejaré para otra oportunidad.


Mi conclusión:
Si existe algo que yo quisiera y pudiera bloquear en Internet seria: pornografía infantil y ventas ilegales de armas (algo realizado por un pais en Latino América). He llegado a ver países que bloquean contenido de sus propios ciudadanos, esto a mi parecer deja mucho que desear.

Lo he dicho mil veces, un Internet 100% libre tendrá unas MUY pocas cosas malas pero tiene MUCHAS mas ventajas que desventajas. Ir bloqueando poco a poco Internet en los países a la larga trae desventajas competitivas, subdesarrollo, imagen ante el mundo poco amigable y muchas otras cosas. Lo anterior repercute entre otros en los ámbitos económico y social. Internet debe ser utilizado como una herramienta para el desarrollo.

Antes de terminar; un Internet debe ser sin bloqueos, Internet debe ser con banda ancha de buena velocidad, acceso a nivel nacional, decirle NO al throttling y lógicamente seguro y con privacidad.


Reciban un saludo,


zcodesystemexclusive

lunes, 14 de marzo de 2011

Historico de tablas BGP. ¿Hijack de mi red?

Descripcion:
Si eres un administrador de routers que manejen tablas BGP (probablemente un ISP) quizás publicas tus propios prefijos/subredes a tu upstream provider desde tu Sistema Autonomo (AS).
Ahora bien, debes saber que tu mismo prefijo o uno muy similar (quizás un prefijo más grande o chico) puede ser -por algún error o ataque- publicado desde otro AS en otra parte del mundo. Lamentablemente esto es algo que ocurre y hay que estar preparado.

Problema:
Pienso haber sufrido un hijack de mis prefijos IP (publicadas desde un AS diferente al mio) y necesito verificarlo.
Para este inconveniente te recomiendo utilizar un routeview especificamente la herramienta BGPlay. BGPplay me permito decir que es una herramienta excelente y gratuita realizada en Java que permite buscar un prefijo y el te indicará cualquier cambio en los ultimos 10 días.
Para utilizar BGPPlay:
1) Dirigete a la pagina http://bgplay.routeviews.org/
2) Haz click sobre el boton "Start BGPlay"
3) Luego se cargará el applet de Java, allí indicas cual es tu prefijo un rango de fecha donde deseas consultar
4) Hacer click sobre Ok
5) Analizar los resultados


Recomendación:
Tener Alarmas!; para ello deseo sugerirte el sitio web: http://www.bgpmon.net/ . BGPmon es un sitio gratis dedicado al monitoreo y analisis de tablas BGP. Lo más significativo que tiene es que puedes indicar cuales son tus prefijos, tu AS y en caso de existir algún cambio ellos te envian un correo. Por ejemplo puedes configurar las siguientes alarmas:
- En caso de existir algún otro AS que comienza a publicar algún prefijo tuyo te enviaran un correo
- Redes nuevas
- Cambios significativos de path
- Redes subneteadas
- Retiro/withdraw de redes

Suerte, espero sea de tu utilidad,

miércoles, 1 de abril de 2009

Networking Tips

Gracias por entrar en acostanetwork.blogspot.com.
Aquí se publicaran tips semanales en el area de networking

Una mejora práctica en el Transporte DNS sobre UDP en IPv6

Por Hugo Salgado y Alejandro Acosta Introducción y planteamiento del problema En el presente documento queremos discutir sobre un draft (bor...