dhcpd option 82 logging não está funcionando

1

Estamos implementando a Opção 82 em nossa rede e estou apenas começando a entender como configurar meu servidor. Eu criei com sucesso minha primeira ACL da Opção 82 com base na ID do circuito do agente contida no pacote, agora só preciso de orientação sobre como obter os dados da Opção 82 nos logs. Aqui está a minha configuração do O82 no servidor:

## Option 82 Class
class "myvendor" {
match if option agent.circuit-id = 00:04:00:6b:00:84;
}

# Test Option 82 logging
if exists agent.circuit-id
{
log (info, concat( "Lease for ", option agent.circuit-id (leased-address), "is an address assigned using Option82"));
}

pool {
            allow members of "myvendor";
            range x.x.x.x x.x.x.x;
    }

O problema que estou tendo é quando vou verificar o conf antes de reiniciar o dhcpd Estou recebendo o erro:

etc/dhcp/dhcpd.conf line 135: right parenthesis expected.
log (info, concat( "Lease for ", option agent.circuit-id (
                                                      ^

Alguém pode me dizer o que estou fazendo de errado e como corrigir esse erro? Eu tentei vários locais e configurações de parênteses, mas ele continua reclamando sobre eles.

    
por user53029 04.10.2016 / 17:49

1 resposta

1

Suponho que você gostaria de ter uma linha de log como:

Lease <ip address>, circuit id <circuit-id> is assigned using Option82

Acho que isso deve funcionar:

log(info, concat(
   "Lease ", 
   binary-to-ascii(10, 8, ".", leased-address),
   ", circuit id", 
   option agent.circuit-id, 
   " is assigned using Option82")
);

Esteja ciente de que, se o seu campo de ID de circuito for binário (por exemplo, não um valor legível humano normal), você precisará convertê-lo primeiro para obter algo legível a partir dele. Veja também man dhcp-eval.

    
por 05.10.2016 / 10:32