For my mail server, I forward outbound messages to my ISP's relayhost.
This can be fine, if you're using their domain, or using a domain that doesn't have a restrictive SPF or doesn't have an SPF at all. OTOH, if you are using domains that have restrictive SPF (and possibly other measures), then your messages might end up in spam folder or rejected.
Or what recently happened, somebody pointed out that my SPF was bad, due to errors in an
include:<fqdn> which is the mailer I current send everything from home through. Due to where I had put that/my provider's include it was causing mail from pretty much everybody in our domain (a .edu) to land in spam folders everywhere. When I opened ticket, I got an unhelpful canned answer on what an SPF include: is for. And when I replied by email using their mailer, their server rejected the message due to SPF failure. It took a couple tries, but eventually I satisfied the email verification to be able to log into their support portal and respond that way.
More than 12, less than 24, hours later the problem got sorted out, but then I had demoted
include:<fqdn> to being the last include: in our SPF. And, it might need to find a new home, or cease, as it was pointed out to me that there is also a 10 DNS lookup limit in processing an SPF. The include:'s up to this last one consume 7. To get all the way the last one would take 9.
IPs that match before the 10 DNS lookup limit is reached with get a PASS, and the search ends. The rest will get PermError for hitting thel limit whether they are listed past this point or not. And, IPs that aren't our SPF will the get the error rather than the FAIL that they should. It is up to the remote system how they want to treat the message...is it unknown or is the same as FAIL. Are there even in between values to that host.
I suspect I'm probably the only person that still uses this specific service, mainly because I own and use a large number of domains to sending and receive email, where its easier to use one smarthost for all the domains than to hack
sendmail(8) to route by sender through different smarthosts, etc. Though there are blogs out there on how to do it, so I have a starting point, just working up to putting it in place. Also, being able to queue my outgoing messages is nice, since I have heard lots of people complain about the slowness of sending using our service provider's authenticated smtp. Though I rely on their imap interface almost exclusively, though I run
mail/fetchmail in the background with IDLE, to create local copy of my email.
Only problem the latest version of
mail/dovecot2's FTS Lucene is broken. From what I can tell is that they have modified the Snowball class to work with ICU, but at runtime, its trying to use the Snowball class in the
textproc/clucene port. Which eventually leads to a
segv. Of course, all these port options are off by default. As with out a pr/patch I had previously submitted got timed out as the conversion to bugzilla used by from address and dropped the reply-to address, and they only waited a day for a response.
But, up until the latest release, my patch was what got the FTS/Lucene option to work. Not sure how to respond on the latest....such as they have ICU a separate option from FTS, except if you build it with FTS and no ICU it complain that it needed ICU... though even then, the new FTS code is beta at best. So, I'm probably waiting for upstream to fix things before I can fix it for FreeBSD (which had mostly been making it look in other places when looking for the libraries it needs.)
Might have to explore other options.
The Dreamer.