clicsis
(usa Debian)
Enviado em 31/10/2007 - 18:36h
Boa noite.
Na realidade basiei toda minha estrutura de administração em um único arquivo a partir do qual gero toda e qualquer liberação, assim como o DHCP.
Exemplos:
O arquivo que utilizo como base (A)
-----------------------------------------
a;00:00:00:00:00:00;10.0.2.2;80;nome_cliente2;n;;yes;yes;
a;00:00:00:00:00:00;10.0.3.2;80;nome_cliente3;n;;yes;yes;
a;00:00:00:00:00:00;10.0.4.2;80;nome_cliente4;n;;yes;yes;
a;00:00:00:00:00:00;10.0.5.2;80;nome_cliente5;n;;yes;yes;
-----------------------------------------
Observação:
O "a;" no início da linha indica que o cliente está liberado e portanto serão criados os arquivos necessários, caso contrário seria colocada a letra "b;".
Parte do arquivo/script que utilizo para recriar o arquivo dhcpd.conf de configuração do dhcp(B)
-----------------------------------------
if [ $WC_STATUS = "a" ]; then
echo -ne '
subnet '$IPa'.'$IPb'.'$IPc'.0 netmask 255.255.255.252 {
option broadcast-address '$IPa'.'$IPb'.'$IPc'.3;
option routers '$IPa'.'$IPb'.'$IPc'.1;
range '$IPa'.'$IPb'.'$IPc'.2 '$IPa'.'$IPb'.'$IPc'.3;
host '$IPc'_'$USUARIO '{
hardware ethernet '$MACSOURCE';
fixed-address '$IPSOURCE';
}
}'>>$ConfDHCPTemp
# Escrevendo Levantar IP-Alias
echo -n 'echo -n "Subindo: ('$IPc').'$USUARIO'"
ip a d '$IPa'.'$IPb'.'$IPc'.1/30 dev eth1
ip a a '$IPa'.'$IPb'.'$IPc'.1/30 dev eth1
ok_or_error
'>>/usr/local/sbin/wcsubir_rv.sh
let liberados++
else
let bloqueados++
fi
done
-----------------------------------------
Em resumo o arquivo de configuração do DHCP /etc/dhcp3/dhcpd.conf ficará + - assim:
-----------------------------------------
default-lease-time 600;
max-lease-time 7200;
ddns-update-style none;
option domain-name-servers 200.223.???.???.???;
option netbios-node-type 1;
option netbios-scope "";
log-facility local7;
ddns-update-style none;
authoritative;
INTERFACES=eth1;
shared-network 10.0.0.1 {
subnet 10.0.2.0 netmask 255.255.255.252 {
option broadcast-address 10.0.2.3;
option routers 10.0.2.1;
range 10.0.2.2 10.0.2.3;
host nome_cliente2 {
hardware ethernet 00:00:00:00:00:00 #MAC
fixed-address 10.0.2.2;
}
}
subnet 10.0.3.0 netmask 255.255.255.252 {
option broadcast-address 10.0.3.3;
option routers 10.0.3.1;
range 10.0.3.2 10.0.3.3;
host nome_cliente3 {
hardware ethernet 00:00:00:00:00:00 #MAC
fixed-address 10.0.3.2;
}
}
subnet 10.0.4.0 netmask 255.255.255.252 {
option broadcast-address 10.0.4.3;
option routers 10.0.4.1;
range 10.0.4.2 10.0.4.3;
host nome_cliente4 {
hardware ethernet 00:00:00:00:00:00 #MAC
fixed-address 10.0.4.2;
}
}
}
-----------------------------------------
Espero de alguma forma ter ajudado.