Linux Adictos Darkcrizt  

Yggdrasil, la implementación que permite crear redes IPv6 llega su versión 0.5

yggdrasi

Yggdrasil es un nuevo esquema de enrutamiento compacto experimental

Hace algunos meses compartimos aquí en el blog una publicación sobre Yggdrasil la cual es una implementación en etapa inicial de una red IPv6 separada sobre la red global habitual y que está totalmente encriptada de un extremo a otro. Es liviano, auto organizable, compatible con múltiples plataformas y permite que prácticamente cualquier aplicación compatible con IPv6 se comunique de forma segura con otros nodos de Yggdrasil.

El motivo de hablar sobre ello, es que hace poco se dio a conocer el lanzamiento de la nueva versión de Yggdrasil 0.5, la cual llega a implementar bastantes mejoras y sobre todo a cubrir los problemas de diseño que fueron identificados en la anterior versión 0.4.

¿Qué hay de nuevo en Yggdrasil 0.5?

En la publicación de blog de Yggdrasil 0.5, se menciona que se abordaron diversos problemas que fueron detectados en los diferentes componentes individuales de esta implementación, ya que por ejemplo ahora se ofrece un nuevo esquema de enrutamiento, que no es compatible con versiones anteriores (los nodos con Yggdrasil 0.5 no pueden comunicarse con hosts basados ​​en Yggdrasil 0.4), pero resuelve la mayoría de los problemas de estabilidad y escalabilidad que estaban presentes en la rama 0.4, y También reduce significativamente el consumo de memoria y reduce el tráfico en ausencia de actividad de la red.

Se menciona que la nueva implementación utiliza una estructura probabilística de filtro Bloom para rastrear enlaces y nodos. La tabla hash distribuida (DHT) ya no se utiliza para intercambiar información de enrutamiento y vincular claves públicas en una red de árbol.

Para mantener la coherencia local y reducir la dependencia de las rutas a los nodos raíz, los nodos ahora comunican por separado información sobre cada enlace, que se rastrea en las estructuras CRDT. En lugar del enrutamiento de origen, se utiliza el enrutamiento codicioso (las solicitudes se envían al vecino más cercano).

Los formatos utilizados para la negociación de conexiones y la multidifusión se han rediseñado para una mejor extensibilidad. El código de procesamiento de conexión se ha rediseñado para realizar un seguimiento más confiable del estado de los pares. Proporciona un seguimiento independiente de los intervalos entre reconexiones para cada par configurado.

Para detectar fallas, en lugar de enviar periódicamente solicitudes de mantenimiento de actividad separadas, se utilizan mensajes que confirman la recepción del tráfico, lo que le permite deshacerse del tráfico durante la inactividad de la red (lo que, por ejemplo, reduce el consumo de energía en dispositivos móviles debido a la exclusión del tráfico). en modo inactivo).

Por la parte de las características nuevas, se destaca que se agregó la capacidad de autenticar conexiones con pares usando una contraseña. La contraseña se especifica mediante el parámetro «password=». Se menciona que esto no permite el aislamiento de la red: los nodos aún pueden comunicarse con el resto de la red si lo desean, y la accesibilidad sigue siendo transitiva. Esto hace que sea más fácil restringir quién puede conectarse automáticamente dentro de una subred o configurar un nodo público sin permitir conexiones de todos los que lo encuentren.

Otro de los cambios que se destaca de la nueva versión, es que se agregó la capacidad de utilizar el protocolo QUIC basado en UDP para interactuar con pares. Para usar QUIC, debe especificar el esquema URI quic:// en las directivas Listen y Peers, pero la compatibilidad con QUIC aún no está tan bien probada como TCP y TLS.

Ademas de ello se agregó la opción PrivateKeyPath, que permite almacenar la clave privada en formato PEM, por separado del archivo de configuración principal. Para exportar la clave a un archivo separado, puede utilizar la opción «-exportkey».

Finalmente si estás interesado en poder conocer más al respecto sobre este nuevo lanzamiento, puedes consultar los detalles en el siguiente enlace.

¿Cómo instalar Yggdrasil?

Para los interesados en poder utilizar esta implementación, deben saber que Yggdrasil se encuentra dentro de algunos de los repositorios de las diferentes distribuciones de Linux.

Por ejemplo en Debian, Ubuntu y derivados de estos, se puede instalar Yggdrasil con solo teclear el siguiente comando:

sudo apt-get install yggdrasil

Hecho esto, ahora solo debemos habilitar los servicios con:

sudo systemctl enable yggdrasil
sudo systemctl start yggdrasil

Para el caso de distribuciones basadas en RHEL y Fedora, basta con teclear lo siguiente:

dnf copr enable neilalexander/yggdrasil-go
dnf install yggdrasil

En cuanto a la configuración e implementación, debido a que el tema es un poco más extenso, te invito a que visites el siguiente link donde podrás encontrar toda la información al respecto. El enlace es este.

Leave A Comment

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.