Script para controle de MAC em FreeBSD

Segue abaixo script atualizado que visa filtrar os endereços MAC não cadastrados e efetuar o cadastramento dentro do DHCP e do  arquivo rc.conf.local (que o FreeBSD lê toda vez em que algum serviço é reiniciado.

#!/bin/sh

# definicao de variaveis
redeint=xl1

# controle de mac+ip via rc.conf.local
arp -ani $redeint \
| egrep -v permanent \
| awk ‘{print $2 $4}’ \
| awk -F”(” ‘{print $1 $2}’ \
| awk -F”)” ‘{ printf (“arp -S %s %s\n”, $1, $2)’} >> /etc/rc.conf.local

# controle/fornecimento de mac+ip pelo dhcp
arp -ani $redeint \
| egrep -v permanent \
| awk ‘{print $2 $4}’ \
| awk -F”(” ‘{print $1 $2}’ \
| awk -F”)” ‘{ printf (” host NOME { hardware ethernet %s; fixed-address %s; }\n”, $2, $1)’} >> /srv/dhcpd.conf

Deixe uma resposta