Nouveau gestionnaire de profils réseaux: netswitch

Posté par  . Modéré par Jaimé Ragnagna.
0
6
déc.
2005
Linux
Un nouveau gestionnaire de profils réseaux vient de paraître, Netswitch en version 0.2 (pas encore stable), votre contribution est demandée pour la correction de bugs.

Seule la version source est disponible pour le moment, nous recherchons d'ailleurs des mainteneurs de paquets. Nous avons contacté Gentoo, mais pour l'instant, l'ebuild n'est pas dans portage. (NdM : d'autres distributions annoncées compatibles et qui pourraient profiter de ce logiciel sont Debian, *buntu, OpenSuse et Fedora Core.)

Parmi les fonctionnalités, on peut citer le support filaire (IP fixe/DHCP), et wifi, la gestion de 4 clés WEP, une interface GTK (la version Qt est en développement intensif). Merci de nous aider à améliorer ce programme qui se veut indépendant de la distribution.

Aller plus loin

  • # Compatibilité?

    Posté par  . Évalué à 4.

    (NdM : d'autres distributions annoncées compatibles et qui pourraient profiter de ce logiciel sont Debian, *buntu, OpenSuse et Fedora Core.)


    Cette question va paraître très bête pour certain, mais en quoi la distribution Mandriva n'est elle pas compatible?

    Attention : je ne veux pas lancer de troll velu, je veux juste comprendre ce qui techniquement pose problème, mais avec si possible des explications simple. Merci à ceux qui prendrons le temps de répondre.
    • [^] # Re: Compatibilité?

      Posté par  (Mastodon) . Évalué à 6.

      Ça ne répond peut-être pas à la question, mais il me semble avoir croisé un gestionnaire de profiles réseau dans Mandriva ... c'est peut-être la raison ... ou peut-être pas ;)
    • [^] # Re: Compatibilité?

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

      Je pense que c'est simplement parce qu'ils n'ont pas mandriva installé chez eux.

      Inconsciemment, on cherche souvent à faire du prosélytisme. En effet, si c'est compatible Debian, il y a de grandes chance (et peu de travail à faire pour) que ça soit compatible Ubuntu, Kubuntu et... Xubuntu (!). Normalement la plupart des meta-debian (knoppix etc) devraient pouvoir supporter le package. Le fait de mettre toute la série des buntu, c'est un penchant affirmé :)

      On peut aussi supposer que si c'est compatible RedHat et Suse il y a peu de travail pour que ce soit compatible Mandriva. (travail des contributeurs à fournir)

      C'est dans ce genre de cas que la compatibilité binaire est intéressante, pour justement éviter de devoir vérifier une centaine de distributions.
      • [^] # Re: Compatibilité?

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

        "C'est dans ce genre de cas que la compatibilité binaire est intéressante, pour justement éviter de devoir vérifier une centaine de distributions. "

        L'homogénéité niveau fichier de configuration me parait plus importante. Ca évite de devoir se taper l'écriture d'un backend pour chaque distribution et d'un système qui va détecter quel backend appliquer.
        Et tou ça uniquement parce que chaque distribution veut faire sa sauce alors qu'il n'y a pas vraiment d'innovation possible dans ce domaine...
    • [^] # Re: Compatibilité?

      Posté par  . Évalué à 5.

      Sur le site, il est ecrit :

      Tests

      Bien que Netswitch soit développé sous Gentoo Linux, son but est d'être indépendant de toute distribution. Des tests sont effectués régulièrement sur des machines différentes et des distributions différentes pour confirmer cela. Par exemple, nous avons vérifié que la version actuelle fonctionne (et compile) correctement sur les distributions suivantes:

      * Ubuntu Breezy
      * Fedora Core 4
      * OpenSuse 10
      * Debian Etch (testing)
      * Mandriva 2006.0

      Voici donc ta reponse ;-).
      Il faudrait quelqu'un qu'il l'ajoute dans PLF ou cooker, non ?
      Je pensait justement à chercher un outil comme cela pour mon portable.
      • [^] # Re: Compatibilité?

        Posté par  . Évalué à 3.

        En effet, personne dans l'équipe n'avait (au passé vu que quelqu'un m'a contacté pour dire que tout allait bien) Mandriva chez lui...

        Contactez-nous pour les autres distributions, nous les ajouterons sans problème, mais sachez que cette liste est non exhaustive, comme le rappelle Gilles
        • [^] # Re: Compatibilité?

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

          Cool. Bon ,en fait il y a déjà un built-in network switcher dans Mandriva, mais pourquoi pas un deuxième.
          • [^] # Re: Compatibilité?

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

            Sauf que celui de Mandriva est inergonomique au possible.

            Je me suis toujours demandé ce que les "profiles" conservaient. On a l'impression que ça ne stocke pas seulement la configuration réseau mais toute la configuration.

            L'association LinuxFr ne saurait être tenue responsable des propos légalement repréhensibles ou faisant allusion à l'évêque de Rome, au chef de l'Église catholique romaine ou au chef temporel de l'État du Vatican et se trouvant dans ce commentaire

            • [^] # Re: Compatibilité?

              Posté par  . Évalué à 3.

              $ cat /etc/netprofile/list
              /etc/hosts
              /etc/isdn/isdn1B.conf
              /etc/isdn/isdn2B.conf
              /etc/localtime
              /etc/ntp.conf
              /etc/ntp/step-tickers
              /etc/ppp/ioptions1B
              /etc/ppp/ioptions2B
              /etc/ppp/chap-secrets
              /etc/ppp/pap-secrets
              /etc/ppp/peers/adsl
              /etc/ppp/peers/ppp0
              /etc/profile.d/proxy.sh
              /etc/profile.d/proxy.csh
              /etc/resolv.conf
              /etc/sysconfig/network
              /etc/sysconfig/network-scripts/chat-*[0-9]
              /etc/sysconfig/network-scripts/ifcfg-*[0-9]
              /etc/sysconfig/network-scripts/net_cnx_down
              /etc/sysconfig/network-scripts/net_cnx_pg_up
              /etc/sysconfig/network-scripts/net_cnx_up
              /etc/sysconfig/network-scripts/net_down
              /etc/sysconfig/network-scripts/net_iop1B
              /etc/sysconfig/network-scripts/net_iop2B
              /etc/sysconfig/network-scripts/net_isdn1B
              /etc/sysconfig/network-scripts/net_isdn2B
              /etc/sysconfig/network-scripts/net_prog
              /etc/sysconfig/network-scripts/net_resolv
              /etc/sysconfig/network-scripts/net_speedtouch
              /etc/sysconfig/network-scripts/net_up
              /etc/yp.conf

              + la liste des services activés

              (oops, il est temps de faire le ménage, les /etc/sysconfig/network-scripts/net_* sont obsolètes)
              • [^] # Re: Compatibilité?

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

                C'est bien ce que je dis. Ca correspond qu'au réseau mais c'est accessible en haut de drakconf tout le temps.

                ce qui manque à Mandriva c'est un ergonome. Leurs applis sont excellente mais franchement mal foutues et il n'y a pas trop de cohérence entre elles :-/

                L'association LinuxFr ne saurait être tenue responsable des propos légalement repréhensibles ou faisant allusion à l'évêque de Rome, au chef de l'Église catholique romaine ou au chef temporel de l'État du Vatican et se trouvant dans ce commentaire

              • [^] # Re: Compatibilité?

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

                Je rajouterais juste que cette liste est modifiable donc il est possible d'associer au profil n'importe quel fichier. Bien pratique pour les fichiers /etc/shorewall/* (ils ne devraient pas être rajoutés par défaut ?).

                Plusieurs suggestions d'amélioration ont été faites dans bugzilla, dont le fait de séparer les fichiers de conf en trois types : paramètres systèmes, paramètres réseau, et je sais plus quoi...

                Reste à construire une interface qui suit (et pas un simple menu... c'est clair).
        • [^] # Re: Compatibilité?

          Posté par  . Évalué à 3.

          Je viens de faire un package pour Mandriva cooker, il est disponible dans le media contrib.
      • [^] # Re: Compatibilité?

        Posté par  . Évalué à 2.

        Merci de ta réponse.
        Je m'étais contenté des informations sur la première page du site, oû était mentionné les distributions compatibles et j'avais manqué le petit lien "ici" :-)
  • # Logo Wifi

    Posté par  . Évalué à 3.

    Je vois le logo Wifi dans les screenshots. Vous êtes surs qu'on peut l'utiliser librement ? Il me semble que c'est une marque déposée...

    Je sais qu'il y a des soucis avec l'utilisation du mot "wifi", alors je suppose qu'avec le logo...
    • [^] # Re: Logo Wifi

      Posté par  . Évalué à 3.

      Je n'ai pas vérifié cela, mais si ça pose un problème, merci de nous le signaler.

      On est d'ailleurs aussi à la recherche de graphistes en tout genre, pour remplacer tout ça (celui qui a fait le logo n'a pas beaucoup de temps libre)
  • # uniquement graphique ?

    Posté par  . Évalué à -1.

    une interface GTK (la version Qt est en développement intensif)


    Il faut obligatoirement une interface graphique pour l'utiliser ? Pas possible avec ncurses/dialog ?
    Explication : J'ai un laptop, je veux qu'il démarre vite (par exemple quand j'ai une présentation à faire, il vaut mieux le démarrer connecter au video-projecteur, et là, j'ai pas 5 mn à attendre), j'ai donc installer une base, avec très peu de choses dessus (donc pas gtk, ni qt). Pourtant, un gestionnaire de profils réseau, ca m'intéresse beaucoup quand même !
    • [^] # Re: uniquement graphique ?

      Posté par  . Évalué à -2.

      Autant pour moi, j'aurais du regarder les screenshots avant .... :-)
      • [^] # Re: uniquement graphique ?

        Posté par  . Évalué à 1.

        Le but est de permettre l'utilisation via tous les environnements: X (GTK, Qt), mais aussi en ligne de commande ou via NCurses

        Pour le moment seuls le GTK et la ligne de commande fonctionnent, on cherche des experts pour les autres interfaces
  • # Suggestion

    Posté par  (site web personnel, Mastodon) . Évalué à 6.

    Nickel.

    Perso, je rêve d'un truc comme ça mais avec une petite fonctionnalité supplémentaire : pour chaque réseau, il permet de configurer un serveur SMTP différent (ou bien d'utiliser celui par défaut).

    Parce que le serveur SMTP à utiliser dépend, dans bien des cas, de la connexion qu'on a.

    Mes livres CC By-SA : https://ploum.net/livres.html

    • [^] # Re: Suggestion

      Posté par  . Évalué à 1.

      en meme temps, c'est pas configurable a ce niveau.
      Le serveur smtp tu le specifie dans la conf de ton client mail.

      Une possibilité serait, dans le cas ou tu as un serveur mail pour envoyer tes mails sur ta machine (ce qui peut etre courant sur des laptops par exemple), de modifier le fichier qui contient l'informations du smtp a qui envoyer les mails.

      Mais bon, ca risque d'etre assez dur a implementer a mon avis
      • [^] # Re: Suggestion

        Posté par  . Évalué à 5.

        « en meme temps, c'est pas configurable a ce niveau.
        Le serveur smtp tu le specifie dans la conf de ton client mail. »

        Oui mais non. Sur GNU/Linux, on a la chance d'avoir par défaut un bon smtp fourni. Pourquoi s'amuser à configurer dans n programmes un smtp, alors qu'il suffit de donner un smarthost à un seul smtp, celui de ta machine ?
        • [^] # Re: Suggestion

          Posté par  . Évalué à 2.

          Oui c'est ce que je dis apres.

          Ca arrive mais apres il faut quand meme que ton netswitch aille modifier les fichiers qui vont bien, et redemarre le daemon.

          Je dis pas que c'est impossible mais que c'est compliqué.
          • [^] # Re: Suggestion

            Posté par  . Évalué à 2.

            marrant, y'a pas longtemps (mais genre vraiment pas), j'en parlais avec des gens sur IRC...

            et pourquoi pas l'implémenter dans DHCP, l'adresse du SMTP ?

            on a déjà les DNS (logique), mais aussi les Wins & co... alors pourquoi pas une extension ?

            je dis ptet une bêtise hein, mais je trouve que ça aurait drolement sa place, surtout avec la démocratisation du wifi
            • [^] # Re: Suggestion

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

              C'est déjà présent dans dnsmasq par exemple, bien que je ne me souvienne pas du numéro à passer à --dhcp-option pour ça.
              • [^] # Re: Suggestion

                Posté par  . Évalué à 1.

                J'avoue que j'avais pensé à ce genre d'options, mais ce n'est pas vraiment une priorité pour le moment (si quelqu'un est motivé pour implémenter ça ... no problem)

                En tout cas, merci pour ces commentaires
                • [^] # Re: Suggestion

                  Posté par  . Évalué à 1.

                  dans /etc/dhcp3/dhclient.conf, rajouter :
                  request smtp-server;
                  
                  Ecrire un script dans /etc/dhcp3/dhclient-exit-hooks.d/smtp du genre :
                  #!/bin/sh
                  
                  smtp_setup() {
                          # No need to continue if we're called with an unsupported option
                  
                          if [ "$reason" != BOUND ] && [ "$reason" != RENEW ] \
                             && [ "$reason" != REBIND ] && [ "$reason" != REBOOT ] \
                             && [ "$reason" != EXPIRE ] && [ "$reason" != FAIL ]
                          then
                                  return
                          fi
                  
                          if [ -n "$new_smtp_server" ]; then
                                  echo "New smtp server : '$new_smtp_server'"
                                  server="$new_smtp_server"
                          else
                                  server="son-serveur-avec-authentification" 
                                  echo "No smtp server : using default relay ($server)"
                          fi
                          old_server="`postconf -h relayhost`"
                          if [ "$old_server" != "$server" ]; then
                                  postconf -e "relayhost=$server"
                                  invoke-rc.d postfix reload
                          fi
                  }
                  smtp_setup
                  
                  Ce que je n'aime pas dans cette solution :
                  • ne gère pas les configs non dhcp
                  • ne gère pas les connexions multiples (filiaire + wifi par exemple)
                  • pas assez souple dans la config (remplacer un serveur par un autre, choisir son serveur sur d'autres critères, ...)
                  • ne marche pas si dhcp n'envoie pas l'info (dhcpd mal configuré par l'administrateur du site)
                  • et bien sûr, le script en exemple est spécifique à postfix. Il faudrait faire la même chose pour les autres (exim[34], ...)
                  Je pense qu'il faudrait quelque chose de beaucoup plus souple. Un truc ressemblant à resolvconf me semblerait pas mal (en fait, il y aurait surement pas mal de chose à unifier/partager dans ces deux systèmes...) En fait, il y a plusieurs étapes :
                  1. Récupérer le/les serveurs smtp de l'interface (avec l'option dhcp, une config statique, ...), un peu comme resolvconf avec les réglages DNS ici.
                  2. choisir le smtp qu'on veut réellement utiliser (avec une config par défaut correcte) en fonction de la liste précédemment récolté et/ou des configs/règles locales (par exemple, essayer aussi smtp.'domaine' ou mail.'domaine'
                  3. mettre à jour la config des programmes qui en ont besoin (postfix, exim, ...)
              • [^] # Re: Suggestion

                Posté par  . Évalué à 2.

                Juste pour information, et pour compléter ta remarque, la liste des options paramétrables via dhcp est définie dans la rfc 2132. ( http://www.faqs.org/rfcs/rfc2132.html )
  • # ISEN ( chauvinisme inside )

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

    Merci l'ISEN !!
    La seule école ingénieur du monde où tout le BDE est sous Linux ;)
    • [^] # Re: ISEN ( chauvinisme inside )

      Posté par  . Évalué à -4.

      Tout le BDE ? non, quelques rétissants résistent encore à l'envahisseur ;)

      Bon, au lieu de faire des privates jokes, tu voudrais pas aider toi aussi ;)
  • # Disponible également dans le même rayon.

    Posté par  . Évalué à 7.

    http://www.gnome.org/projects/NetworkManager/


    La version sans doute plus "pro", qui intègre dbus et hal, et compagnie.

    (Mais qui fait quand même freezer mon laptop lorsque le tunnel vpnc se blo, et qui gère pas encore le leap 802.x que wpa_supplicant ne fait non plus fonctionner chez moi)
  • # Compatibilité multi distribution

    Posté par  . Évalué à 1.

    Je n'ai pas regardé en détail l'application (juste les commentaires ici + les screenshots du site) donc je parle peut-être dans le vide. En tout cas, je n'ai pas trouvé rapidement le point qui m'intéresse, à savoir :
    Est-ce que la config "naturelle" de la distrib est respectée ? Je ne voudrais pas avoir des réglages réseaux ailleurs que dans /etc/network/interfaces sur une Debian par exemple.

    J'ai l'impression d'une n-ième réécriture d'un outil de configuration réseau, différent ce ce qui existait jusqu'à maintenant, donc incomptatible avec les autres outils (ifup/ifdown/...) utilisés par de nombreuses applis maintenant.
    La sortie d'écran de la commande info me semble inutilement différente de celle pouvant être fournie par ifconfig/iwconfig par exemple.

    Et qu'en est-il de la gestion des droits ? Est-ce qu'il faut être root pour choisir l'accès à un nouveau réseau wifi ? à un réseau wifi déjà existant/configuré ?
    ou bien est-ce que l'appartenance à un groupe suffit ? Comment ça se passe si on a plusieurs sessions ? (ie qui monitore les réseaux wifi accessibles ?)
    En gros, j'aimerais avoir tout plein d'info sur l'architecture de votre application. Ça me paraît BEAUCOUP plus important que les fonctionnalités que vous proposez actuellement (on peut toujours en rajouter si le code est bien conçu). J'irai peut-être lire votre code si je trouve un peu de temps libre pour avoir mes réponses (c'est tout l'intérêt du LL ;-) )
    • [^] # Re: Compatibilité multi distribution

      Posté par  . Évalué à 1.

      La commande info sert à la bibliothèque et est plus facilement lisible par les différentes interfaces pour ce programme ;)

      Concernant les fichiers de configuration, en effet, c'est un n-ième système car aucune distribution n'est capable de s'accorder sur ce point. Les fichiers de debian sont par assez ennuyeux à lire par de simples scripts bash (à mon avis)... C'est dommage, je sais, mais je veux un système portable à travers toutes les distributions: vous prenez les fichiers de profils, vous les mettez ailleurs, hop ça marche.

      Concernant les permissions, il faut être root pour lancer l'interface graphique (et certaines options en console). Sous *ubuntu, il faut utiliser sudo bien entendu. Mais l'utilisation de sudo sur d'autres distributions semble être assez idiot (notamment la modification de /etc/sudoers à l'installation pour permettre ce type d'utilisation est ridicule)
      • [^] # Re: Compatibilité multi distribution

        Posté par  . Évalué à 1.

        Concernant les fichiers de configuration, en effet, c'est un n-ième système car aucune distribution n'est capable de s'accorder sur ce point.

        Bon, et bien ça a très peu de chances de m'intéresser en définitive. Pour moi, une "distribution compatible', ça voulait dire que ça s'intégrait bien dans la distribution en question (ie en respectant le placement des fichiers, en évitant de refaire ce que d'autres outils font, ...). J'espérai que votre outil joue pour le réseau un peu le rôle de resolvconf pour le DNS : il récupère les infos de config des divers fichiers standard de la distrib et les présente de manière'normalisée" aux différentes interfaces utilisateurs (graphiques ou non). S'il est encore plus puissant, il permet aussi l'autre sens (ie les interfaces modifient les config)
        Évidemment, c'est autre chose que de simplement repartir sur de nouvelles bases en jettant l'existant.
        Pour moi, l'intérêt d'un fichier 'Profile' à transporter est assez limité : pour une config simple, j'ai plus vite fait de taper les quelques commandes 'ifconfig/iwconfig/route/...' (qui existent sur toutes les distrib et fonctionnent de la même façon). Pour une config compliquée (tunnels VPN dans un réseau privé avec authentification par page web, ...), je n'ai pas encore vu de 'Profile' assez souple pour gérer correctement ça : il y a des dépendances entre les interfaces/Profiles (le réseau privé doit être mis en place avant les VPN, ...), les noms des interfaces changeront d'une machine à une autre, ... Même avec la souplesse de /etc/network/interface et les commande pre/post-up/down, il faut parfois rajouter des scripts perso.
      • [^] # Re: Compatibilité multi distribution

        Posté par  . Évalué à 1.

        Les fichiers de debian sont par assez ennuyeux à lire par de simples scripts bash (à mon avis)...
        Sous debian, normalement tout passe par ifup/dwon et le fichier /etc/network/interface. Il me semble que ça serait un bon angle pour intégrer : ifup eth0 profile=MonProfile En plus, ifup/down me semble assez répendu les les distrib maintenant, non ? (je n'en suis pas sûr ici) Pour moi, l'utilité d'un tel outil vient surtout du wifi où il faut fréquemment changer la config pour s'adapter à un nouveau réseau. Générer un fichier de config éditable pour une connection à partir de 'iwlist ethX scan' serait très intéressant. Pour ma part, j'utilise déjà les interfaces logiques de ifupdown pour configurer mes réseaux, mais à chaque nouveau réseau wifi, je dois rajouter quelques lignes dans /etc/network/interface :
        iface home inet dhcp
        #       wireless-mode ad-hoc
                wireless-essid XXX
                wireless-key XXXXXXXXX
        
        iface otherhome inet dhcp
                wireless-essid YYYYY
                wireless-key YYYYYYYYYYYYYYYYYY
        
        iface fac inet dhcp
                post-up vpnc-connect fac
        
        iface workvpn inet dhcp
                wireless-essid ZZZZZZ
                pre-up /etc/init.d/cisco-vpnclient start
                post-up echo y | vpnclient connect ZZZZZZZZZZZ
                post-down /etc/init.d/cisco-vpnclient stop
        
        iface workvpnvisit inet dhcp
                wireless-essid WWWWWWWWW
                wireless-key WWWWWWWWWWW
        
        Et après, j'utilise ifup ethX=home, ifup ethX=fac, ... Le profile de netswitch sera vraiment capable de gérer le client vpnc, le client cisco (et oui, vpnc ne gère pas encore les certificats :-( ), ... ? Et les configs que je montre ici ne sont même pas très compliquées encore...

Suivre le flux des commentaires

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