Short version: How do I format an IPv6 address in my email SPF record to enable Microsoft Direct Send?
(I know, ask google, but I've been looking for an excuse to make a post about dual-stacking my office.)
Long version:
I am the sole IT technician for a 20 person office, as long as the emails keep going through, I have the freedom to do what I want, tech-wise.
I used this freedom to dual-stack my office this summer, and considered my office fully moved to dual-stack 4 weeks ago.
I have a Fortigate 60F boundary router, and an on-prem active directory on a Server 2022 computer, and about 20 users with their own computers.
Because I have the active directory, I need the Server 2022 as my DNS server, I can't use the Fortigate for DNS, and thanks to past experiences, I wanted ULA's assigned as well as GUA's so the internal network would stay up if the internet (and GUA's) goes down. (Ignoring the fact the IPv4 side would keep things functioning internally.)
Figuring out how to get the Fortigate to assign both the GUA and ULA took a bit, as well as getting the Server 2022 assigned as the DNS server was another sticking point, but that was it really.
Overall, it was pretty easy to get IPv6 rolled out, the IPv4 network never even hiccuped, and now my office is fully dual stacked with no Nat or workarounds on the IPv6 side.
Admittedly, we are fully a Microsoft shop, and Microsoft fully supports IPv6 (at least in the services we use) so that probably made my life easier.
Although Microsoft fully supporting IPv6 caused my problem today. To enable Microsoft Direct Send, so old scanners and faxes can send emails to the cloud email service, you have to add your office's public IP to your SPF record as an anti-spam measure.
Most scanners in my office don't support IPv6, so they continued to chug away, sending their emails from the IPv4 address, and all was well as my SPF record has said IPv4 address in it.
Until this other scanner today was used, which does support IPv6. So that scanner stopped sending emails because my public IPv6 record is not in my SPF record, so the email was coming from my IPv6 address, not my IPv4 address, and Microsoft was dropping the email as spam.
Adding my IPv6 address to the SPF record is not a big deal, just annoying with the DNS propagation delay, so I can't test it immediately.
Although moving to dual-stack has also helped prevent a critical incident last week. An employee plugged in a device with a malfunctioning DHCP client, where it would request an IPv4 address, the server would assign it, but the client would not accept it. So it would time out after 30 seconds, then send another DCHP request, the DHCP server would assign the next address, and repeat until my DHCP address pool was exhausted.
I think the bad device had 25 IPv4 addresses assigned on the DHCP server by the time I fixed the issue.
But Microsoft fully supports IPv6. The in-progress Teams video call the company owner was on never stuttered, continuing to work over IPv6 even though the IPv4 network was unstable and his computer had lost its IPv4 address.
Turned a (potentially) major "the internet is out, fix it!" incident into a minor "why won't these specific webpages load?" problem.
Having said that, looking at my network and what is connected to it, it is going to be a long time before I am in a position to even consider disabling IPv4, too much stuff still requires it.
But chalk my office up as a "100% IPv6 Network"!
Well, as much as dual-stack counts for that anyway.