[Cascavel-pm] Script para criacao de arquivo dhcpd.conf

Leandro Costa lscosta em uninet.com.br
Quinta Setembro 4 20:10:23 CDT 2003


Ola galera !!!
Depois das dicas que peguei com vcs para trabalhar com arquivos, resolvi
botar a mao na massa.

Crie um arquivos estacoes.csv :
0;JOAO;0128p;00:02:E3:08:2f:C7;10.1.0.21;;;
1;MARIA;0147p;00:Af:CC:39:43:70;10.1.0.22;;;

O primeiro campo do arquivo e um flag onde:
´1´ escreva
#### JOAO
host 0128p {
    hardware ethernet 00:02:E3:08:2f:C7;
    fixed-address 10.1.0.21;

´0´ escreva
###Nome: , Hostname: 0147p, IP: 10.1.0.22.

Mais nao consigo fazer isso !!!!

Outra coisa que ainda nao fiz, seria verificar se existe o arquivo
dhcpd.conf caso existe renomear o antigo para dhcpd.conf.data+hora


Desde jah grato
Leandro

#!/usr/bin/perl

open(E, "estacoes.csv");

open(D, ">dhcpd.conf");
print D "ddns-update-style interim;\n";
print D "ignore client-updates;\n";
print D "log-facility local0;\n";
print D "subnet 10.1.0.0 netmask 255.255.254.0 {\n";
print D "  option subnet-mask 255.255.254.0;\n";
print D "  option domain-name \"fccsa\";\n";
print D "  option domain-name-servers 10.1.1.43;\n";
print D "  option netbios-name-servers 10.1.1.42;\n";
print D "  range dynamic-bootp 10.1.0.223 10.1.0.248;\n";
print D "  default-lease-time 600;\n";
print D "  max-lease-time 7200;\n";
print D "  option broadcast-address 10.1.1.255;\n";
print D "  option routers 10.1.1.1;\n";
print D "  }\n\n";

close(D);

  while ($linha=<E>) {
        ($status,$username,$hostname,$mac,$ip)=split(";",$linha);
        open(D,">>dhcpd.conf");
          if ($status = 0) {
            print D "#### $username \n";
            print D "host $hostname { \n";
            print D "    hardware ethernet $mac;\n";
            print D "    fixed-address $ip;\n}\n\n\n";
          }
           print D "### Nome: $username, Hostname: $hostname, IP: $ip.\n";
  }






Mais detalhes sobre a lista de discussão Cascavel-pm