Bonjour,
J'utilise le module Net::ISC:HCPd::Config pour parser la configuration du fichier de conf dhcpd donc voici un extrait :
et le début du script…subnet 192.168.10.0 netmask 255.255.255.0 {
option routers 192.168.10.1;
range 192.168.10.100 192.168.10.200;
host pnom {
hardware ethernet D0:AA:12:BC:13:65;
fixed-address pnom.domain.net
}
host pnom2 {
hardware ethernet D0:AA:12:BC:13:66;
fixed-address pnom2.domain.net
}
}
subnet 192.168.20.0 netmask 255.255.255.0 {
option routers 192.168.10.1;
range 192.168.10.100 192.168.10.200;
host pnom3 {
hardware ethernet D0:AA:12:BC:13:67;
fixed-address pnom.domain.net
}
host pnom4 {
hardware ethernet D0:AA:12:BC:13:68;
fixed-address pnom2.domain.net
}
}
subnet 192.168.30.0 netmask 255.255.255.0 {
option routers 192.168.10.1;
range 192.168.10.100 192.168.10.200;
host pnom5 {
hardware ethernet D0:AA:12:BC:13:69;
fixed-address pnom.domain.net
}
}
Jusque là tout va bien, mon fichier de conf est parfaitement bien parsé.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 #! /usr/bin/perl use sctrict; use warnings; use utf8; use Data::Dumper; use Net::ISC::DHCPd::Config; my $config = Net::ISC::DHCPd::Config->new(file => './dhcpd.conf'); $config->parse; print Dumper \$config;
Maintenant je souhaite ajouté pnom6 dans le subnet 192.168.20.0:
Comment faire?host pnom6 {
hardware ethernet D0:AA:12:BC:13:6A;
fixed-address pnom.domain.net
}
Sachant que pour ajouter un host je peux faire :
mais l'host ajouté n'a pas les attributs hardware ethernet et fixed-address, et il est ajouté à la racine du fichier de conf, je ne sais pas comment l'ajouter dans un subnet.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 $config->add_host({ name => 'pnom6', )}
Je ne vois pas de méthodes documentées dans le CPAN me permettant de faire çà.
Ensuite pour réécrire le fichier de conf il me resterai plus qu' à faire $config->generate …
Merci d'avance pour ceux qui voudront bien apporter leur aide
Partager