Journal cloonix 22

Posté par  (site web personnel) . Licence CC By‑SA.
9
26
juin
2013

Cloonix, simulateur virtuel de réseau, permet de gérer la topologie de réseaux virtuels. Il permet de créer à la volée, par glisser-déposer, des machines virtuelles et de les connecter par manipulations graphiques.

But de cloonix : Faciliter la création, l'interaction et la mise en réseau des machines virtuelles. Vision réseau d'une topologie avec possibilité de modifier le réseau. La principale innovation (en réalité une série d'astuces) permet une automatisation complète d'une démonstration réseau avec une liberté TOTALE sur le réseau IP, par exemple:

iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -F

est une manipulation possible sans perdre le scp et ssh vers les invités.

Breve explication de l'accès pseudo-ssh/scp vers les machines invitées:

Données introduite par disque secondaire:
Un disque de configuration ext2 est fait à la volée, peuplé avec 2 binaires utiles à l'accès aux machines invitées, un "cloonix_agent" et un "cloonix_dropbear", serveur ssh dropbear patché.

Porte d'entrée vers l'invité:
Un accès série de type "console virtuelle" est demandé à qemu, dans les machines invitées, cet accès correspond à un /dev/hvc0 qui est configuré en auto-login root dans les invitées (c'est notre porte d'entrée).
Cloonix frappe régulièrement à cette porte d'entrée tant qu'il ne perçoit pas l'agent à l'intérieur de l'invité. Cloonix demande le montage du disque virtuel et le démarrage de son agent à travers /dev/hvc0.

Création chemin entre l'intérieur de l'invité et l'hote:
Le démon cloonix_agent se branche sur un port virtuel communiquant aussi avec cloonix hôte, des "hello" réguliers sont émis entre l'hôte et l'agent. Sur rupture, l'action de rebranchement est initiée (la rupture arrive lors d'un reboot de l'invitée).
Cette connection hôte/agent transporte les flux pseudo-ssh et pseudo-scp ainsi que les forwarding X11 sans configuration ip.

Toutes les distributions téléchargeables avec la version 22 de cloonix sont non seulement utilisables dans cloonix mais aussi en standalone avec les commandes kvm de base, ces commandes sont d'ailleurs données dans le README de l'arbre cloonix.
Toutes les machines téléchargeables ont été créées from scratch sans cdrom mais avec un accès Internet uniquement.
Ces scripts sont tous soit à base de debootstrap, soit avec des astuces équivalentes.
Donc dans le targz de cloonix on trouve de quoi creer automatiquement les machines kvm suivantes:
wheezy, jessie, ubuntu-13.04, fedora-18, centos-6.4, opensuse-12.3, archlinux, mageia-3 openwrt.

Tout ceci est à clownix.net, version 22.
Vincent

  • # Comprends po

    Posté par  . Évalué à 4.

    Je ne comprends toujours pas à quoi sert Cloonix, à simuler un réseau ou à mettre en production des réseaux virtuels ? Je sais, je dois être un peu neuneu.

    • [^] # Re: Comprends po

      Posté par  . Évalué à 1. Dernière modification le 26 juin 2013 à 10:04.

      Je ne comprend pas non plus pourquoi il n'a pas mis de lien dans son journal.
      Et j'ai un "Forbidden You don't have access to this page" sur http://clownix.net/ via le proxy de ma boite.
      Bref.

      • [^] # Re: Comprends po

        Posté par  . Évalué à 2.

        Meme erreur, et je ne pense pas qu'on soit dans la meme boite

      • [^] # Re: Comprends po

        Posté par  . Évalué à 2.

        L'auteur a peut être d'autres utilisations possibles, mais je pense qu'une bonne utilisation de ce soft est pour du maquettage d'applications réseaux.

        • [^] # Re: Comprends po

          Posté par  (site web personnel) . Évalué à 3.

          Je peux confirmer (par expérience) que l'outil est très utile pour le prototypage de protocole réseaux (ce n'est bien entendu pas sa seule fonction). Je m'en suis servi lorsque que j'implémentais un protocole de routage. Il me fallait environ 2 minutes entre le moment où j'écrivais le code et le moment où j'avais 10 machines virtuelles avec une topologie assez complexe qui exécutaient le nouveau code. Il m'avait bien sûr fallu scripter un peu, mais l'outil s'y prête plutôt bien.

          Je pense que Cloonix gagnerait vraiment beaucoup a être connu.

          Cordialement,
          Tony

  • # Connexion pseudo-ssh ?

    Posté par  . Évalué à 2.

    Cette connection hôte/agent transporte les flux pseudo-ssh et pseudo-scp ainsi que les forwarding X11 sans configuration ip.

    T'aurais plus de détail là-dessus ? J'ai toujours réfléchi à comment faire pour avoir des shells « pratique » (à la ssh) sur des accès série seulement, et effectivement je m'étais penché sur les virtio-console, que tu as l'air d'utiliser. Je vois bien l'ouverture du shell sur un premier port avec getty en autologin root sur le guest (ce que je fais déjà), par contre, ton agent il fait comment exactement pour transporter ce flux « pseudo-ssh » ? Tu as beaucoup tweaké ton dropbear pour qu'il se bind sur ce genre de connexion ? Et côté hôte, t'utilise pas un client ssh classique, je suppose ?

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.