IPs multiples: répertoire .d pour /etc/network/interfaces ?

Bonjour,

J’ai cherché un bon moment et je n’ai rien trouvé, mais je préfère quand même demander avant d’abandonner.

Mon serveur a plusieurs IPs sur le même NIC (eth0), configurées comme il se doit dans /etc/network/interfaces.
Problème : je suis amené à ajouter / supprimer des IPs régulièrement, et c’est une horreur pour l’automatisation. Résultat, je me retrouve à éditer le fichier interfaces à la main à chaque fois, alors que pour tout le reste j’ai des scripts d’administration qui se démerdent tous seuls.

Avant de faire une grosse usine à gaz en bash pour “éditer” automatiquement le fichier interfaces, j’aimerais savoir s’il y a quelque part, bien planqué, un répertoire de type “.d” (l’avantage étant que la config de chaque IP serait bien séparée des autres, chacune dans son fichier) ?

Nevermind, des scripts dans /etc/network/if-up.d/ feront très bien l’affaire. Je ne sais pas pourquoi je n’y ai pas pensé avant.

Pour les curieux, quelque chose du genre :

[ "$IFACE" = "eth0" ] && [ "$MODE" = "start" ] && { case "$ADDRFAM" in inet) ifconfig eth0 inet add $IPV4 ;; inet6) ifconfig eth0 inet6 add $IPV6 ;; esac; }
Il n’y a plus qu’à faire une déconfiguration complète dans if-down.d, et si possible récupérer les IPs à partir du nom de fichier/lien lui-même (exercice pour le lecteur et pour moi-même) pour arriver à un script de création d’IP du style :[code]IPV4=
IPV6=

rendre la config permanente, cf. code & explications ci-dessus

si le serveur redémarre, l’IP est rajoutée automatiquement via if-up.d

ln -s /usr/local/sbin/if-up-script “/etc/network/if-up.d/$IPV4@$IPV6”

appliquer les modifs immédiatement

ifconfig eth0 inet add $IPV4
ifconfig eth0 inet6 add $IPV6[/code]