DocFraggle Sure, that’s valid syntax, but the PHP script expplicitly checks for the IPv4 and IPv6 address in the SPF record.
I looked at it too in the meantime, and I’m not a dev and only understand PHP rudimentary, so I could be compoletely wrong about all this. ;-)
To me It looks like it does more than just check whether there’s an actual IP address in the record. There’s actually at least some magic happening in the data/web/inc/spf.inc.php script, which as far as I understand it does actual lookups based on the mechanics used in the record and then creates an array of IP addresses, which it then compares to the IPs of the server here:
if (in_array($ip, $rslt) && in_array(expand_ipv6($ip6), $rslt)) {
$state = state_good;
}
So, yes, it seems that you actually need both IPv4 and IPv6 enabled to get that check mark, if I understand the `&&' in the above statement correctly, but you don’t necessarily need actual IP addresses written out in the record.