SLIS

Notice: Undefined index: tasklist_type in /usr/local/flyspray-0.9.9.7/includes/class.tpl.php(128) : eval()'d code on line 85 Notice: Undefined index: tasklist_type in /usr/local/flyspray-0.9.9.7/includes/class.tpl.php(128) : eval()'d code on line 90
  • Etat Assignée
  • Pourcentage achevé:
    0%
  • Type de tâche Bug
  • Catégorie SLIS → slis-subnets
  • Assignée à Laurent COOPER (swirly)
  • Système d'exploitation All
  • Sévérité Moyenne
  • Priorité Normale
  • Basée sur la version 4.1.1
  • Due pour la version 4.2
  • Date d'échéance Non décidé
  • Votes 0
  • Privée Non
Concerne le projet: SLIS
Ouverte par Auteur anonyme - 2010-04-01
Dernière édition par Philippe Le Brouster (plb) - 2010-06-29

FS#345 - il est possible de saisir un masque de sous-réseau erroné

Le validateur de champs laisse passer des masques erronés de type 255.255.255.135 (masque "troué") qui ne sont pas traductibles en "/xx".
Or cela plante slis subnet avec une erreur :
"Can't call method "network" on an undefined value at /usr/share/perl5/Slis/Common/Subnets.pm line 125."
Apparemment, cette portion de code appelle la lib NetAddr::IP pour extraire l'adresse du sous-réseau. Comme le masque est non standard, ça échoue.

This task does not depend on any other tasks.

Laurent COOPER (swirly)
mardi, 18 mai 2010, 09:07 GMT
En même temps, des masques de ce type sont "légaux". Cela ne correspond pas à des sous réseaux /xx, mais peut correspondre à un sous réseau logique.

De mon point de vue, ce n'est pas le masque qui est erroné, c'est sa prise en compte qui ne fonctionne pas.
Laurent COOPER (swirly)
mardi, 18 mai 2010, 09:21 GMT
Un exemple typique : l'utilisation de masques troués pour créer des réseaux transversaux pour les machines des enseignants dans un parc ou les classes C sont les salles :
172.16.0.0/255.255.0.128
Auteur anonyme
mardi, 18 mai 2010, 09:34 GMT
- ce n'est pas ce que semble dire la RFC 1878 (http://tools.ietf.org/html/rfc1878).
- ce n'est pas comme ça que semble fonctionner la lib perl NetAddr::IP non plus
- utiliser des masques de sous-réseaux "troués" équivaut à chercher les embrouilles...
Donc, même si ce type de masque n'est pas erroné dans l'absolu (oui, mathématiquement, ça marche), il se trouve que ça ne marche pas dans le cadre du slis, et qu'il faut soit corriger la lib perl, soit les validateurs de champs du Slis.
Je pense que corriger le validateur est :
- à notre porté ;
- assez simple ;
- respectueux des bonnes pratiques (rfc1878).
Laurent COOPER (swirly)
mardi, 18 mai 2010, 09:54 GMT
La RFC n'interdit pas ce type de sous réseau, et surtout, iptables gère parfaitement ce principe de sous réseau logique avec des masques troués. Par exemple
iptables -A OUTPUT -d 193.194.117.18/255.255.0.128 -j ACCEPT est parfaitement accepté et géré par iptables.

Ce serait dommage de se priver de cette fonctionnalité.

Ceci dit, il est effectivement plus facile de mettre un validateur que de corriger le reste. Le plus facile ou le plus fonctionnel ?
Philippe Le Brouster (plb)
mardi, 18 mai 2010, 14:06 GMT
Il est commun de réserver les bits de haut niveau pour définir le (sous-)réseau et les bits de bas-niveau pour adresser la machine sur sous-réseau. Faire autrement aujourd'hui, ne peut amener qu'à des complications.

Plus d'information ici : http://en.wikipedia.org/wiki/Subnetwork

Chargement...