[FUG-BR] Dhcp com banco de dados
Corsini Corsini
jbcorsini em hotmail.com
Quinta Fevereiro 3 09:45:40 BRST 2011
Pessoal segue o modelo de arquivo basta copiar o conteudo para um arquivo .php qualquer
a tabela do banco mysql precisa ter esses campos abaixo citados, mas caso queira mudar fiquem a vontade.
<?
header("Content-type: text/plain");
$dbhost="localhost";
$dbuser="usuario";
$dbpass="senha";
$dbname="nomedobancomysql";
($link = mysql_connect("$dbhost", "$dbuser", "$dbpass")) || die("Couldn't connect to MySQL");
mysql_select_db("$dbname", $link) || die("Couldn't open db: $dbname. Error if any was: ".mysql_error() );
$sSql = "select nome, mac, ip, setor, rede, gateway
from nomedatabela
where ip is not null and ip != '' order by rede, setor, nome;";
$rs=mysql_query($sSql, $link);
print "# dhcpd.conf\n";
print "#\n";
print "# Joao B. Corsini\n";
print "#\n";
print "option domain-name \"fwcp3.fepesmig.br\";\n";
print "default-lease-time 64800;\n";
print "max-lease-time 72000;\n";
print "authoritative;\n";
print "ddns-update-style ad-hoc;\n";
print "log-facility daemon;\n\n";
$rede='VAZIO';
$setor='VAZIO';
while ($reg = mysql_fetch_object($rs)) {
if ($rede != $reg->rede) {
if ($setor != "VAZIO") { print " }\n"; }
if ($rede != "VAZIO") { print " }\n"; }
if ( $reg->rede == "A") {
print "shared-network unis {\n";
print " option domain-name-servers 192.168.10.1,192.168.1.1;\n";
print " subnet 192.168.10.0 netmask 255.255.255.0 {\n";
print " option routers 192.168.10.1;\n";
print " }\n";
}
$setor="VAZIO";
}
if ($setor != $reg->setor) {
if ($setor != "VAZIO") { print " }\n"; }
print "\n group ".$reg->setor." {\n";
}
$nome = $reg->nome;
$mac = $reg->mac;
$ip = $reg->ip;
$setor = $reg->setor;
$rede = $reg->rede;
$gw = $reg->gw;
print " host ".$nome." { hardware ethernet ".$mac."; fixed-address ".$ip.";";
if ($gw != "") { print " option routers ".$gw.";"; }
print " }\n";
}
if ($setor != "VAZIO") { print " }\n"; }
if ($rede != "VAZIO") { print "}\n"; }
?>
Abraços
João B. Corsini
Analista de Suporte
> From: thiago.rocha em bsd.com.br
> Date: Thu, 3 Feb 2011 09:18:13 -0200
> To: freebsd em fug.com.br
> Subject: Re: [FUG-BR] Dhcp com banco de dados
>
> João,
>
> tenho interesse nesse arquivo, você poderia compartilhar?
>
> att.,
>
> 2011/2/3 Corsini Corsini <jbcorsini em hotmail.com>
>
> >
> > Olá akamaru,
> >
> > tenho aqui rodando da seguinte forma com mysql
> >
> > Criei um banco no mysql chamado MAC - com os campos IP, MAC etc....
> > Criei um arquivo index.php em uma pastinha aqui do apache ex:
> > http:\\192.168.0.1\mac\
> > Nesse arquivo index.php eu conecto no banco e faço a consulta gerando os
> > registros ao qual pretendo colocar no arquivo dhcpd.conf
> > Em seguida no freebsd no diretorio do dhcp /usr/local/etc/ eu chamo esse
> > index.php através do comando fetch Ex: fetch -o dhcpd.conf
> > http://192.168.0.1\mac\index.php
> > Se quiser posso estar te passando o modelo de arquivo index.php
> >
> > Abraços
> >
> > João B. Corsini
> > Analista de Suporte
> >
> >
> >
> >
> > > From: coopermine em bol.com.br
> > > To: freebsd em fug.com.br
> > > Date: Wed, 2 Feb 2011 14:45:05 -0200
> > > Subject: [FUG-BR] Dhcp com banco de dados
> > >
> > > Alguem já usou dhcp com banco de dados (mysql,etc) ou alguma maneira de
> > > nao ter que ficar editando o arquivo na mao toda vez que tenha
> > > alteração?
> > >
> > > -------------------------
> > > Histórico: http://www.fug.com.br/historico/html/freebsd/
> > > Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
> >
> > -------------------------
> > Histórico: http://www.fug.com.br/historico/html/freebsd/
> > Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
> >
>
>
>
> --
> _________________
> Rocha, Thiago
> SysAdmin
> Powered by FreeBSD: The Power to Serve
> -------------------------
> Histórico: http://www.fug.com.br/historico/html/freebsd/
> Sair da lista: https://www.fug.com.br/mailman/listinfo/freebsd
Mais detalhes sobre a lista de discussão freebsd