[resolu] Sous interfaces vlans perdues si migration > 1.4

Forum traitant de la distribution sécurisée montante nommée IP cop et basée sur la distribution Smoothwall. C'est à l'heure actuelle le forum le plus actif du site.

Modérateur: modos Ixus

[resolu] Sous interfaces vlans perdues si migration > 1.4

Messagepar JarodOnTheNet » 28 Nov 2008 16:11

Bonjour à toutes et à tous,

Le problème venait tout simplement que le fichier rc.local n'étais pas exécutable par le propriétaire, donc root. J'ai changé le droit et exécuté le fichier dans le répertoire courant : ./rc.local et cela à fonctionné :lol:

Un reboot Ipcop donne donc enfin le même résultat :!:

Comment n'y ai-je pas pensé plus tôt, sot que je suis ...

:cry:

Bonjour à toutes et à tous,

J'utilise Ipcop avec BOT et active 8021q pour créer des sous-interfaces sur Green, ce qui me permet de dépasser allègrement les 4 interfaces. J'ai plus de 12 ipcops confiturés de cette manière et en production et je peux vous dire que c'est vraiment stable.

Ceci fonctionnait particulièrement bien avec BOT jusqu'au passage à Ipcop 1.4.20 et supérieur.

Dot1q semble être lancé au niveau du noyau et n'est plus chargé comme module via modprob 8021q ou 8021Q suivant les versions, malgré que cette commande ne renvoie pas d'erreur.

Par contre, à partir de la 1.4.20, toutes les sous-interfaces créés ne sont plus visibles et les subnets associés ne peuvent évidemment plus bénéficier du routage.

Pour ceux que cela intérressent, voici comment je fais jusqu'à la version 1.4.19 :
================================================================

Installation d'Ipcop avec le nombre d'interfaces souhaitées (j'en utilise 4 -Verte, Bleue, Orange et rouge) et après l'installation de BOT (n'importe quelle version récente ne pose aucun problème), voici comment je crée mes sous-interfaces :

Passage en mode « Probe » 802.1q :

Chargement du module dans le noyau Linux
ipcop#modprobe 8021Q (#vérifier que le Q est en majuscules)

Attention le Q majuscule n'est pas forcément un standard. Le mieux est de vérifier en demandant l'aide de la commande modprobe !


Sur les version IpCop 1.4.18 , la bonne commande est :

ipcop#modprobe 8021q

ipcop#lsmod | less (vérifie que le module 802.1Q est chargé)

Pour créer les sous-interfaces en linux :
ipcop#vconfig add eth0 10
ipcop#vconfig add eth0 20
ipcop#vconfig add eth0 30
ipcop#vconfig add eth0 40
ipcop#vconfig add eth0 50

Vérifier la création des sous-interfaces en linux :

ipcop#ifconfig –a | less et on doit voir les sous-interfaces notées sous le format :

eth0.10
eth0.20
eth0.30
eth0.40
eth0.50

Adressage des sous-interfaces :

ipcop#ifconfig eth0.10 192.168.10.1 netmask 255.255.255.0 up
ipcop#ifconfig eth0.10 192.168.20.1 netmask 255.255.255.0 up
ipcop#ifconfig eth0.10 192.168.30.1 netmask 255.255.255.0 up
ipcop#ifconfig eth0.10 192.168.40.1 netmask 255.255.255.0 up
ipcop#ifconfig eth0.10 192.168.50.1 netmask 255.255.255.0 up


Astuce :

Pour éviter des soucis et retrouver un fichier natif non modifié, faite une copie du fichier et rajoutez l’extension .org (original)

Exemple :

root@cerbere# cp /etc/rc.d/rc.local /etc/rc.d/rc.local.ori g

Maintenant, vous pouvez travailler sur le fichier sans risque !

Attention, cette notation n’est valable que jusqu’au prochain reboot ! Il fautdonc ajouter ces lignes dans le fichier qui va bien -> /etc/rc.d/rc.local


Exemple de fichier rc.local :

#!/bin/sh
modprobe 8021Q # Il semble qu'il faille mettre dans certaine version modprobe 8021q
vconfig add eth0 1
vconfig add eth0 30
vconfig add eth0 40
vconfig add eth0 50
ifconfig eth0.1 192.168.1.2 netmask 255.255.255.0 up
ifconfig eth0.30 192.168.30.2 netmask 255.255.255.0 up
ifconfig eth0.40 192.168.40.2 netmask 255.255.255.0 up
ifconfig eth0.50 192.168.50.2 netmask 255.255.255.0 up

Vérifier l’adressage :

ipcop#ifconfig –a (on doit avoir une adresse IP par interface)

Astuce !

La notification dans le module « Block Out Traffic ne permet pas le caractère . (le point de ponctuation) et le supprime.

Pour y remédier :

Editer le fichier /var/ipcop/fwrules/
vi custominterfaces
Modifier ethxxx par ethx.xx

Exemple : eth020 devient eth0.20

Exemple de fichier /var/ipcop/fwrules/custominterfaces :

desinfection,eth0.30,1
internautes,eth0.40,0
management,eth0.1,0
montage,eth0.50,0

Attention :
=======

Les chiffres suivants les interfaces ne sont pas à effacer ! Il s’agit du nombre de fois que l’interface intervient dans des règles, etc …

Ici, l’interface etho.30.1 intervient 1 fois dans une règle. Les autres, 0 fois.

Si tout va bien, à ce stade, vous pouvez redémarrer votre IpCop et devez retrouver toutes les interfaces ainsi que leur adressage respectif.

Bien sûr, côté switching, il faut impérativement un switch qui supporte les vlans et établir un agrégat sur l'interface verte pour laisser y remonter tous les vlans provenant de ses sous-interfaces.

Je n'explique pas comment le faire sur les switchs, cela variant d'une marque à l'autre et même d'un switch à l'autre dans la même marque.

Mais voilà, vous essayez de mettre à jour votre Ipcop 1.4.19 en 1.4.20 ou supérieur et vous perdez les sous-interfaces créées, mais rassurez-vous, vos interfaces physiques n'ont aucun impact.

Pour ceux que cela intéressent et qui veulent essayer en ayant mis en place les sous-interfaces, n'oubliez-pas de faire une sauvegardes de votre ipcop. J'utilise un tar à la racine pour tout sauvegarder, avec quelques exclusions :

# tar -czvpf backup.tgz /* --exclude=/boot --exclude=/proc --exclude=/lost+found --exclude=/mnt --exclude=/swapfile –exclude=/backup.tgz

Cela ne dure qu'un instar -czvpf backup.tgz /* --exclude=/boot --exclude=/proc --exclude=/lost+found --exclude=/mnt --exclude=/swapfile –exclude=/backup.tgz
tant, mais vous serez content de pouvoir décompresser votre fichier tar si cela tourne au cauchemar.

Bien évidemment, je souhaiterais passer aux dernières mises à jours, mais je ne m'en sort pas. Il semble que la philisophique ai changé d'où ce post.

Quelqu'un peut-il me donner un petit coup de main ?

Bien à vous toutes et tous !
Dernière édition par JarodOnTheNet le 25 Jan 2009 12:33, édité 1 fois au total.
Ne pas prévoir, c'est déjà gémir - Léonard de Vinci
JarodOnTheNet
Quartier Maître
Quartier Maître
 
Messages: 16
Inscrit le: 30 Déc 2007 20:35
Localisation: Belgique - Hainaut

Messagepar Gesp » 30 Nov 2008 10:46

Sans BOT, je ne vois pas de problèmes pour charger 8021q
root@ipcop:~ # lsmod | grep 8021
root@ipcop:~ # modprobe 8021q
root@ipcop:~ # lsmod | grep 8021
8021q 13032 0 (unused)
root@ipcop:~ # cat /etc/issue
IPCop v1.4.21 - The Bad Packets Stop Here
root@ipcop:~ #


Si modprobe ne renvoit pas d'erreur, c'est que le module s'est chargé ou qu'il était déjà chargé.

Le package vlan n'a pas changé depuis 1.4.11.

Peux tu détailler quelle commande tu utilises quand tu dis que les interfaces n'apparaissent plus.
Ou est-ce un problème dans l'interface web.

Pour le problème du . dans BOT, il suffirait de reporter le soucis à l'auteur.
Je peux en parler à Achim.
Avatar de l’utilisateur
Gesp
Amiral
Amiral
 
Messages: 4481
Inscrit le: 29 Déc 2002 01:00

Messagepar JarodOnTheNet » 01 Déc 2008 08:37

Gesp a écrit:Sans BOT, je ne vois pas de problèmes pour charger 8021q
root@ipcop:~ # lsmod | grep 8021
root@ipcop:~ # modprobe 8021q
root@ipcop:~ # lsmod | grep 8021
8021q 13032 0 (unused)
root@ipcop:~ # cat /etc/issue
IPCop v1.4.21 - The Bad Packets Stop Here
root@ipcop:~ #


Si modprobe ne renvoit pas d'erreur, c'est que le module s'est chargé ou qu'il était déjà chargé.

Le package vlan n'a pas changé depuis 1.4.11.

Peux tu détailler quelle commande tu utilises quand tu dis que les interfaces n'apparaissent plus.
Ou est-ce un problème dans l'interface web.

Pour le problème du . dans BOT, il suffirait de reporter le soucis à l'auteur.
Je peux en parler à Achim.


Bonjour Gesp,

Je vais refaire des tests. Je vais d'abord sauver mon Ipcop. Comme je l'explique dans mon post, le problème apparaît lorsque j'installe la 1.4.20. A ce moment, tu as raison, BOT n'intervient pas.

En 1.4.19 : Mon Ipcop me renvoie ceci :

# lsmod | grep 8021q
8021q 13032 3 (autoclean)

Et voici mes interfaces : Ne tiens pas compte de mes macs, je les ai modifiées pour ne pas publier
les vraies sur ce forum. Securité oblige pour le MAC Spoofing

ifconfig -a | more
eth0 Link encap:Ethernet HWaddr 00:A0:4B:CE:4A:C9
inet addr:192.168.2.2 Bcast:192.168.2.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:20915408 errors:0 dropped:0 overruns:0 frame:0
TX packets:25818230 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3476342421 (3315.2 MB) TX bytes:3656177176 (3486.8 MB)
Interrupt:11 Base address:0x3000

eth0.30 Link encap:Ethernet HWaddr 00:A0:4C:BE:4A:C9
inet addr:192.168.30.2 Bcast:192.168.30.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1760355 errors:0 dropped:0 overruns:0 frame:0
TX packets:966722 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:112120185 (106.9 MB) TX bytes:1237282525 (1179.9 MB)

eth0.40 Link encap:Ethernet HWaddr 00:E0:3C:FA:4A:C9
inet addr:192.168.40.2 Bcast:192.168.40.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:12267272 errors:0 dropped:0 overruns:0 frame:0
TX packets:17606877 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:917461730 (874.9 MB) TX bytes:3261459368 (3110.3 MB)

eth0.50 Link encap:Ethernet HWaddr 00:E0:8C:AE:4A:29
inet addr:192.168.50.2 Bcast:192.168.50.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:422594 errors:0 dropped:0 overruns:0 frame:0
TX packets:835268 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:26938467 (25.6 MB) TX bytes:1197185397 (1141.7 MB)

eth1 Link encap:Ethernet HWaddr 00:34:FA:15:D5:22
inet addr:192.168.65.2 Bcast:192.168.65.255 Mask:255.255.255.0
UP BROADCAST RUNNING MTU:1500 Metric:1
RX packets:24400062 errors:0 dropped:0 overruns:0 frame:0
TX packets:17485207 errors:868 dropped:0 overruns:0 carrier:1736
collisions:60461 txqueuelen:1000
RX bytes:801280922 (764.1 MB) TX bytes:1515187323 (1444.9 MB)
Interrupt:11 Base address:0xc000

eth2 Link encap:Ethernet HWaddr 00:22:BB:33:46:11
inet addr:192.168.3.2 Bcast:192.168.3.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:5684805 errors:0 dropped:0 overruns:0 frame:0
TX packets:6670881 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1271198033 (1212.3 MB) TX bytes:596133356 (568.5 MB)
Interrupt:3 Base address:0x4000

eth3 Link encap:Ethernet HWaddr 00:AA:23:13:BB:1C
inet addr:192.168.4.2 Bcast:192.168.4.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1546 errors:0 dropped:0 overruns:0 frame:0
TX packets:1547 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:109580 (107.0 KB) TX bytes:108134 (105.5 KB)
Interrupt:5 Base address:0x6000

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:22631 errors:0 dropped:0 overruns:0 frame:0
TX packets:22631 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2351313 (2.2 MB) TX bytes:2351313 (2.2 MB)

eth0 = Green
eth0.30, eth0.40 et eth0.50 sont mes sous-interfaces, une fois que j'ai fais :

ipcop#modprobe 8021q

et que j'ai créés ces dernières :
===================

ipcop#vconfig add eth0 30
ipcop#vconfig add eth0 40
ipcop#vconfig add eth0 50

et je les adresse :
===========

ipcop#ifconfig eth0.10 192.168.30.2 netmask 255.255.255.0 up
ipcop#ifconfig eth0.10 192.168.40.2 netmask 255.255.255.0 up
ipcop#ifconfig eth0.10 192.168.50.2 netmask 255.255.255.0 up

et pour les garder persistantes, je les inscrits pour le prochain reboot de Ipcop dans le fichier
/etc/rc.d/rc.local

Mon fichier donne donc ceci :
==================

#!/bin/sh
modprobe 8021Q # Il semble qu'il faille mettre dans certaine version modprobe 8021q
vconfig add eth0 1
vconfig add eth0 30
vconfig add eth0 40
vconfig add eth0 50

ifconfig eth0.30 192.168.30.2 netmask 255.255.255.0 up
ifconfig eth0.40 192.168.40.2 netmask 255.255.255.0 up
ifconfig eth0.50 192.168.50.2 netmask 255.255.255.0 up




En 1.4.20 et 1.4.21 : Je te le fais parvenir dans un autre post, je suis sur bleue et je vais perdre la main si je fais l'upgrade.

Mais je peux déjà te garantir que je vais voir ceci :

ifconfig -a | more
eth0 Link encap:Ethernet HWaddr 00:A0:4B:CE:4A:C9
inet addr:192.168.2.2 Bcast:192.168.2.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:20915408 errors:0 dropped:0 overruns:0 frame:0
TX packets:25818230 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3476342421 (3315.2 MB) TX bytes:3656177176 (3486.8 MB)
Interrupt:11 Base address:0x3000


eth1 Link encap:Ethernet HWaddr 00:34:FA:15:D5:22
inet addr:192.168.65.2 Bcast:192.168.65.255 Mask:255.255.255.0
UP BROADCAST RUNNING MTU:1500 Metric:1
RX packets:24400062 errors:0 dropped:0 overruns:0 frame:0
TX packets:17485207 errors:868 dropped:0 overruns:0 carrier:1736
collisions:60461 txqueuelen:1000
RX bytes:801280922 (764.1 MB) TX bytes:1515187323 (1444.9 MB)
Interrupt:11 Base address:0xc000

eth2 Link encap:Ethernet HWaddr 00:22:BB:33:46:11
inet addr:192.168.3.2 Bcast:192.168.3.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:5684805 errors:0 dropped:0 overruns:0 frame:0
TX packets:6670881 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:1271198033 (1212.3 MB) TX bytes:596133356 (568.5 MB)
Interrupt:3 Base address:0x4000

eth3 Link encap:Ethernet HWaddr 00:AA:23:13:BB:1C
inet addr:192.168.4.2 Bcast:192.168.4.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1546 errors:0 dropped:0 overruns:0 frame:0
TX packets:1547 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:109580 (107.0 KB) TX bytes:108134 (105.5 KB)
Interrupt:5 Base address:0x6000

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:22631 errors:0 dropped:0 overruns:0 frame:0
TX packets:22631 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2351313 (2.2 MB) TX bytes:2351313 (2.2 MB)


Et ceci va se traduire par mes utilisateurs qui vont me signaler qu'ils n'ont plus accès à Internet.

Je précise que je le fais à partir du shell en tant que root et que l'interface graphique renvoie la même chose. Ce n'est donc pas un bug de l'interface graphique d'Ipcop.

Mon fichier /etc/rc.d/rc.local reste identique mais il ne charge plus les commandes qui définissent les sous-interfaces.

Pour le . (point) dans BOT, si tu connais le développeur (Achim), merci de lui en parler.

Le problème semble donc que la mise à jours postérieure à la 1.4.19 (j'ai cumulé la 1.4.20 et ensuite la 1.4.21) ne charge plus d'office le module 8021q et la réponse à ce problème est donc de savoir comment le charger automatiquement lors d'un reboot et surtout, de s'assurer que le fichier /etc/rc.d/rc.local reste lisible pour qu'il charge et adresse les sous-interfaces.

Voilà, si tu as encore des questions, n'hésites pas car ce problème, si il n'est pas résolu va m'obliger à stopper les upgrades à la 1.4.19 ce qui serait fâcheux pour mes 12 Ipcops en production.

Déjà merci pour ce dialogue qui je l'espère va trouver une solution

JarodOnTheNet
JarodOnTheNet
Quartier Maître
Quartier Maître
 
Messages: 16
Inscrit le: 30 Déc 2007 20:35
Localisation: Belgique - Hainaut

Messagepar Gesp » 01 Déc 2008 14:00

Ok je vais vérifier ce que tu m'as dit à partir de ifconfig et vconfig et modprobe

Mais concernant le modprobe, je l'ai fait en 1.4.21 et c'est modprobe 8021q.
Je pense que si tu utilises un modprobe 8021Q, le modprobe devrait retourner une erreur indiquant que le fichier n'a pas été trouvé.
Si le module n'est pas chargé, il serait normal que les vlans n'apparaissent pas.
Avatar de l’utilisateur
Gesp
Amiral
Amiral
 
Messages: 4481
Inscrit le: 29 Déc 2002 01:00

Messagepar JarodOnTheNet » 09 Déc 2008 11:43

Gesp a écrit:Ok je vais vérifier ce que tu m'as dit à partir de ifconfig et vconfig et modprobe

Mais concernant le modprobe, je l'ai fait en 1.4.21 et c'est modprobe 8021q.
Je pense que si tu utilises un modprobe 8021Q, le modprobe devrait retourner une erreur indiquant que le fichier n'a pas été trouvé.
Si le module n'est pas chargé, il serait normal que les vlans n'apparaissent pas.


Bonjour Gesp,

As-tu eu le temps de te pencher sur ce problème ?

JarodOnTheNet
JarodOnTheNet
Quartier Maître
Quartier Maître
 
Messages: 16
Inscrit le: 30 Déc 2007 20:35
Localisation: Belgique - Hainaut

Messagepar JarodOnTheNet » 25 Jan 2009 12:08

Bonjour,

:marre: :marre: :marre:

Je reviens sur le sujet car toujours pas de solution mais une observation importante :

Un Ipcop installé directement en 1.4.20 ne pose pas de problème. J'en ai un dans ma production au boulot chez un client et qui utilise bien les vlans.

La seule différence entre la version 1.4.19 et la 1.4.20 est que dans le fichier /etc/rc.d/rc.local est que dans la version 1.4.19, on note modprobe 8021Q (le Q en majuscule), tandis que dans la 1.4.20, on note modeprobe 8021q (le q en micuscule).

Le bug semble apparaitre dans la mise à jour de la version 1.4.19 vers la version 1.4.20 car là, même en ayant repris le fichier originel rc.local qui ne contient rien et en recodant les commandes, rien à faire, au reboot, Ipcop ne charge pas le module 8021q pourtant bien adapté avec le q en minuscules. Donc, toujours perte des sous-interfaces créés.

Toutefois, si je charge manuellement le module et que je défini à la patte mes sous-interfaces et que je les adressent, là, pas de problème, elles sont vues.

Donc, mon problème durant cette migration 1.4.19 vers la 1.4.20 est localisé : comment automatiser à coup sûr et lancer à chaque reboot ce module qui m'est indispensable ?

Pouquoi est-ce que le fichier rc.local, contenant les bonnes commandes n'est plus lu après migration ?

Un mystère auquel je demande un petit coup de main.

D'avance merci pour votre aide
JarodOnTheNet
Quartier Maître
Quartier Maître
 
Messages: 16
Inscrit le: 30 Déc 2007 20:35
Localisation: Belgique - Hainaut


Retour vers IPCop

Qui est en ligne ?

Utilisateur(s) parcourant actuellement ce forum : Aucun utilisateur inscrit et 1 invité