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