Projet

Général

Profil

Scénario #26930

Restaurer la possibilité d'ajouter des routes statiques au travers de vlan en 2.6

Ajouté par lacambra fabrice il y a environ 5 ans. Mis à jour il y a environ 5 ans.

Statut:
Terminé (Sprint)
Priorité:
Normal
Catégorie:
-
Début:
25/03/2019
Echéance:
12/04/2019
% réalisé:

100%

Temps estimé:
(Total: 12.00 h)
Temps passé:
(Total: 13.50 h)
Points de scénarios:
3.0
Restant à faire (heures):
0.00 heure
Estimation basée sur la vélocité:
Release:
Liens avec la release:
Auto

Description

Bonjour,

Jusqu'en vesion 2.5.2 il était possible de router les paquets au travers d'interfaces taggées
A partir de la version 2.6 il n'est plus possible de choisir autre chose qu'un numéro d'interface
Afin de pouvoir proposer un fonctionnement proche du 2.5.2 nous avons créer un dico additionnel et patcher le fichier static-route, mais il serait plus intéressant
pour tout le monde que cette fonvtionnalité soit native

CDT

Je vous joins le dico et le patch

static-routes.patch Voir (1,39 ko) lacambra fabrice, 18/02/2019 09:23

03_add_vlan_static_route.xml Voir (432 octets) lacambra fabrice, 18/02/2019 09:23


Sous-tâches

Tâche #27412: Implémenter la proposition de Laurent HAEFFELE qui semble plus correspondre à la nouvelle gestion du réseau sur EOLE 2.7FerméFabrice Barconnière

Tâche #27427: Documenter le paramétrage des routes statiques pour les VLANFerméFabrice Barconnière

Tâche #27476: Implémenter le paramétrage des routes statiques pour les VLAN sur EOLE 2.6FerméFabrice Barconnière

Tâche #27565: Mettre à jour les dictionnaires sur Zéphir 2.6.0, 2.6.1, 2.6.2, 2.7.0 et 2.7.1FerméFabrice Barconnière

Historique

#1 Mis à jour par Joël Cuissinat il y a environ 5 ans

  • Sujet changé de ajout de route static au travers de vlan à Restaurer la possibilité d'ajoutes des routes statiques au travers de vlan en 2.6

Cf. échanges sur la liste amon-sphynx

#2 Mis à jour par Joël Cuissinat il y a environ 5 ans

  • Sujet changé de Restaurer la possibilité d'ajoutes des routes statiques au travers de vlan en 2.6 à Restaurer la possibilité d'ajouter des routes statiques au travers de vlan en 2.6

#3 Mis à jour par Gilles Grandgérard il y a environ 5 ans

  • Tracker changé de Demande à Scénario
  • Echéance mis à 22/03/2019
  • Version cible mis à sprint 2019 10-12 Equipe MENSR
  • Release mis à EOLE 2.6.2

c'est une régression ...

#4 Mis à jour par Joël Cuissinat il y a environ 5 ans

  • Points de scénarios mis à 3.0

#5 Mis à jour par Scrum Master il y a environ 5 ans

  • Echéance 22/03/2019 supprimé
  • Version cible sprint 2019 10-12 Equipe MENSR supprimé
  • Début 18/02/2019 supprimé
  • Release changé de EOLE 2.6.2 à EOLE 2.6.2.2
  • Nous devons retravailler le patch et vérifier différents cas d'utilisation => reporté pour la réalisation 2.6.2
  • L'implémentation sur les versions >= 2.7.0 nécessite un travail d'adaptation.

#6 Mis à jour par Laurent HAEFFELE il y a environ 5 ans

Pour information, concernant Eole 2.7.0, voici le dicos et les 3 patchs créés à Strasbourg (j'ai nommé la variable acastra_route_vlan_id pour plus de lisibilité et éviter les conflits à venir).

=> dico acastra-static-route-vlan.xml:

<?xml version="1.0" encoding="utf-8"?>
<creole>
     <variables>
        <family mode="expert" name="réseau avancé" icon='sitemap'>

 <variable name='acastra_route_vlan_id' type='port' description="Numero de VLAN ou rien" ></variable>
        </family>
   </variables>
<constraints>
       <group master='route_adresse'>
            <slave>acastra_route_vlan_id</slave>
        </group>
    </constraints>
</creole>

=> 01-extras-routes.yaml.patch

--- distrib/01-extras-routes.yaml    2019-01-10 14:42:31.000000000 +0100
+++ modif/01-extras-routes.yaml    2019-03-06 16:51:20.659038723 +0100
@@ -1,3 +1,4 @@
+%set %%vlan_routes = {}
 %set %%routes = {}
 %for %%route in %%route_adresse
     %set %%interface = %%route.route_int
@@ -5,14 +6,21 @@
         %continue
     %end if
     %set %%carte = %%getVar(u'nom_zone_eth'+ %%interface)
-    %%routes.setdefault(%%carte, []).append({'dest': %%route,
+    %if %%route.acastra_route_vlan_id is None
+        %%routes.setdefault(%%carte, []).append({'dest': %%route,
                                              'gw': %%route.route_gw,
                                              'netmask': %%route.route_netmask})
+    %else
+        %%vlan_routes.setdefault(%%route.acastra_route_vlan_id, []).append({'dest': %%route,
+                                             'gw': %%route.route_gw,
+                                             'netmask': %%route.route_netmask})
+    %end if
 %end for
-%if %%routes
+%if %%routes or %%vlan_routes
 network:
    version: 2
    renderer: networkd
+   %if %%routes
    ethernets:
    %for %%interface in %%routes:
        %%interface:
@@ -22,5 +30,18 @@
                  via: %%route.gw
                  metric: 100
            %end for
-    %end for
+   %end for
+   %end if
+   %if %%vlan_routes
+   vlans:
+   %for %%vlan_id in %%vlan_routes:
+       vlan%%vlan_id:
+           routes:
+           %for %%route in %%vlan_routes[vlan_id]:
+               - to: %%route.dest/%%calc_classe(%%route.netmask)
+                 via: %%route.gw
+                 metric: 100
+           %end for
+   %end for
+   %end if
 %end if

=> common-squid1.conf.patch

--- distrib/common-squid1.conf    2018-11-28 14:50:16.000000000 +0100
+++ modif/common-squid1.conf    2019-03-06 17:19:33.923079720 +0100
@@ -46,6 +46,13 @@
 #empêche le fonctionnement de cntlm (#10130)
 #acl srcnoauth src %%ip_vlan/32
 acl vlan_eth%%{interface}_%%vlans_iter src %%getattr(%%vlans_iter, %%network_key)/%%calc_classe(%%getattr(vlans_iter, %%netmask_key))
+%if %%is_defined('route_adresse')
+%for %%route_iter in %%route_adresse
+  %if %%route_iter.route_int == %%interface and %%route_iter.acastra_route_vlan_id == %%vlans_iter
+acl vlan_eth%%{interface}_%%vlans_iter src %%route_iter/%%calc_classe(route_iter.route_netmask)
+  %end if
+%end for
+%end if
 acl reseaueth%%{interface}_%%vlans_iter dst %%getattr(%%vlans_iter, %%network_key)/%%calc_classe(%%getattr(%%vlans_iter, %%netmask_key))
 acl localhosteth%%{interface}_%%vlans_iter dst %%ip_vlan/32
   %end for

=> nginx.wpad.patch

--- distrib/nginx.wpad    2017-11-16 11:22:14.000000000 +0100
+++ modif/nginx.wpad    2019-03-06 17:33:15.615099615 +0100
@@ -37,7 +37,11 @@
 %if %%activer_route == "oui" 
     #Routes statiques
  %for %%indirectnet in %%route_adresse
-    %%indirectnet/%%calc_classe(%%indirectnet.route_netmask) %%indirectnet.route_int;
+    %%indirectnet/%%calc_classe(%%indirectnet.route_netmask) eth%%indirectnet.route_int%slurp
+    %if %%indirectnet.acastra_route_vlan_id
+.%%indirectnet.acastra_route_vlan_id%slurp
+    %end if
+;
  %end for
 %end if
 }
@@ -68,6 +72,13 @@
         %%gen_wpad_end_of_file(%%nb_zone, %%getattr(%%vlan, 'vlan_ip_eth' + %%nb_zone), %%getattr(%%vlan, 'wpad_proxyport_vlan_eth' + %%nb_zone))
         rewrite  ^/wpad.eth%%{nb_zone}.%%vlan  /wpad.eth%%{nb_zone}  break;
         allow %%getattr(%%vlan, %%vlan_net)/%%calc_classe(%%getattr(%%vlan, %%vlan_mask));
+        %if %%activer_route == "oui" 
+          %for %%route_iter in %%route_adresse
+            %if %%route_iter.route_int == %%nb_zone and %%route_iter.acastra_route_vlan_id == %%vlan
+        allow %%route_iter/%%calc_classe(route_iter.route_netmask);
+            %end if
+          %end for
+        %end if
         deny all;
     }
         %end for

#7 Mis à jour par Joël Cuissinat il y a environ 5 ans

  • Echéance mis à 12/04/2019
  • Version cible mis à sprint 2019 13-15 Equipe MENSR
  • Début mis à 25/03/2019

#8 Mis à jour par Fabrice Barconnière il y a environ 5 ans

  • Assigné à mis à Fabrice Barconnière

#9 Mis à jour par Joël Cuissinat il y a environ 5 ans

  • Statut changé de Nouveau à Terminé (Sprint)

Formats disponibles : Atom PDF