I am currently running a web service which is a little unusual because it is available on the non-anonymous web, the Tor Onion service network, and the Invisible Internet(I2P). It can thus be accessed on up to four different hostnames using 3 different networking technologies, should the necessary software be installed.
This service also sends email notifications to users who opt-in. To accomplish this, it must be configured to use an SMTP server. Right now, it talks directly to one SMTP server which is hosted by a third party company who I pay to provide with the service we need. The problem is that we currently have users who wish to use email which is primarily hosted in on .i2p
domains. This means there are now two cases we want to accommodate:
- email is destined for a non-anonymous email provider who is using a "normal" domain name like
gmail.com
.
- email is destined for an anonymous email provider who is using a "special" domain like
mail.i2p
In order to send mail to those mail.i2p
addresses we have to talk to a different email service, in this case the person is a dedicated volunteer and longstanding community member who I do not pay for anything. Besides that, there is very little point in sending notification emails across the clearnet bridge(i2pmail.org
is the same as mail.i2p
) because it fails to obscure much of anything about the notifications to an observer, whereas end-to-end in-I2P transmission obscures email metadata about notifications from everyone but in-I2P email ops. As such, I'd like to make sure that we only send mail destined for *.i2p
servers to his service.
So what I think I need is some kind of proxy or swich which I would host on my server that speaks SMTP, which would look at the domain for an outgoing message, and depending on the TLD in the email address, send it to one server or the other. However, I'm at a loss to find such a piece of software.
What the heck do I actually need here?