Hacker News new | ask | show | jobs
by Erwyn 265 days ago
> You can run your own mail server and name server on top. The network of mail is very much federated.

While I do completely agree with that in theory (and I also love mail) I think it does not stand the reality test because of email deliveravility which tends to be a nightmare.

How do you solve this? Do you use a third party SMTP?

3 comments

I ran multiple mail servers for years until about 10 years ago (moved out of the industry). The deliverability problem, as far as I know, hasn't really changed that much in the last decade. The key was to configure DKIM, SPF, only use secure protocols and monitor the various black/block-lists to make sure you aren't on them for very long. In my experience, if you end up on a few bad lists, and don't react quickly, the reputation of your domain goes down rapidly and it's harder to get off said lists.

You also want some spam filtering, which, these days, is apparently much more powerful with local LLMs. I used to just use various bayesian classification tools, but I've heard that the current state of affairs is better. Having said that, when you've trained the tool, it does a pretty good job.

It's not "plug-and-play", but it's not that hard. Once you've got it up and running the maintenance load goes to almost zero.

> It's not "plug-and-play", but it's not that hard. Once you've got it up and running the maintenance load goes to almost zero.

This is where I disagree. In my opinion it might not be that hard but the maintenance is really not zero as you just described how you need a reputable IP as a prerequisite and constant monitoring of block lists.

Just having DKIM, SPF and DMARC really was not enough last time I checked for getting delivered to let's say outlook.

I just realised, and this could be red herring, that almost all of the domains I've administered were based in Australia. I suppose it's possible that the IP ranges I'm dealing with have a better reputation than those from other countries. I have administered a few domains from US companies and IPs, but they've often been based in known data centres which may help their cause. I can't really talk to the reliability of hosting a mail server on a consumer / small business IP in the US / Europe/ Asia. It's possible that all known, common IPs in these areas have a natural disadvantage when it comes to reputation. I suppose try running a tunnel from your server to a small VPS in a knwon data centre? Not ideal, but it may help.

It would be annoying if entire US/European/Asian ISP IP ranges were immediately blocked. We should have moved on from that for many reasons unrelated to email.

The monitoring of block lists is much more important than people assume. I haven't looked into it in detail, but it always seemed like the reputation was based on a ratio of number of messages to known bad messages. If you have a moderately busy server, and you manage to keep off the block lists (or at least pro-actively remove yourself from them) then the reputaion gets higher and higher, and the maintenance goes down.

If you're a domain that only receives occasional messages, and you end up on Spamhaus and co, you're gonna have a problem. It seems that reputation at small scale is viral. You need actively good reputation and response time. But, honestly, it seemed that it didn't take more than about 3 months per domain I administered until they were just accepted by the net as valid, good actors.

If you consistently don't receive mail you expect, then you stop giving money to your mail host and get a different one.
It's not about receiving. Receiving is the easy part. It is about the delivery of your own mail.

> you stop giving money to your mail host and get a different one.

I was entertaining the "host your own mail server" thought, I agree that if you don't host it yourself then you can change your provider if it fails you.

Who needs the transmission more - the sender, or the recipient?

Much of the time, when it's for signup verification, especially for a free service, they just write "don't use @live.microsoft.com" underneath the email address box. The user wants to be signed up for the service more than the service provider wants a new user, at least by enough to use an alternate email address. Enough cases like this, and the user quits @live.microsoft.com.

> if you don't host it yourself then you can change your provider if it fails you.

Even if you host it yourself :-). The key is to own your domain.

If I recall the domain is not the only issue, IP is also deeply involved or am I wrong?
IP address is involved in some receiver's reputation calculation. It's never involved when sending to a domain.
Sure but then your mail gets dropped on the other end: The main issue I had the last time I tried running my own setup for mails was basically getting an email to an outlook or live.microsoft address. My mails were dropped for no reason, effectively not landing in my friends mailboxes and without any error on my side to know that my mail was getting rejected.

This is when I decided to stop trying getting through with this and came back to paying a provider.

The fact that it is a nightmare is a bit of a myth. Granted, not everybody can do it, but that's not necessary.

And then there are many mail providers other than Gmail. It's just that nobody cares and probably the fact that a ton of (most?) people were forced to create a Gmail account by Google.

> The fact that it is a nightmare is a bit of a myth. Granted, not everybody can do it, but that's not necessary.

I agree to some extent. But it is more involved than deploying a Discourse instance in my opinion.

> And then there are many mail providers other than Gmail. It's just that nobody cares and probably the fact that a ton of (most?) people were forced to create a Gmail account by Google.

100% agree. This is the tradeoff I went for. I would love for it to be easier to self host but you can definitely use another provider.