Ok, i found something: It's the CaptivePortal.
i think its some sort of ipfw rule, wich blocks outgoing dhcp requests.
I've found a workaround:
Bad:
edit "/usr/local/www/services_captiveportal_mac_edit.php"
comment the following line out:
$input_errors[] = sprintf(gettext("The MAC address %s belongs to a local interface. It cannot be used here."), $_POST['mac']);
then i was able to add the local MAC-Address.
But maybe this not allowed without purpose...
Better:
So i switched to dhcping-ng: https://github.com/pchytla/dhcping-ng
I compiled this on an other freebsd11 system and copied to the pfsense machine
/root/dhcping-ng -i vmx0.X -c 5 -w 2 -h aa:aa:aa:aa:aa:aa
With the parameter -h i changed the source MAC-Address, so i also added this MAC-Adress in the CaptivPortal to the MACs section as Pass Action.
I see this only as an workaround. I would like to be able sending what i want from the firewall-host
Here the working Rouge-DHCP-Detection script. Added to the crontable executing every 5 minutes.
#!/bin/sh
res1="`/root/dhcping-ng -i vmx0.9 -c 5 -h aa:aa:aa:aa:aa:aa 2>/dev/null`"
res1found="`echo $resnew | grep 'Recived Resonse from'`"
[ -n "${res1found}" ] && printf "Rogue DHCP detected! - Guest-Network\n\n$res1\n"
# for testing and finding
# ./dhcping-ng -v -i -c 100 vmx0.