Recently I’d been having problems sending mail from one of the mail accounts on my iPhone. No error message. The mail just wasn’t being sent. Re-booting the iPhone appeared to sometimes fix the problem, but I couldn’t put my finger on exactly what the issue was until I noticed when it was happening.
At home when my iPhone was using the wi-fi network, mail was being sent without issue. Away from home and using the 3G network I couldn’t send mail from this one account. At first I thought the problem was down to my carrier’s (Softbank Japan) 3G network. But as I could send email from other accounts on my iPhone over 3G this didn’t make sense.
By chance I was looking at the mail account settings on my Mac and noticed that the mail account I was having issues with on the iPhone had its associated SMTP (outgoing mail server) port set to 80.
As I sync my mail settings via iTunes to the iPhone this same port would be used there.
The other mail accounts had SMTP ports set to 587 or using SSL on port 465.
I can’t recall why this one mail account was configured to send mail using a non-standard SMTP port, but the ISP that provides my home internet must be allowing SMTP traffic over port 80 as both my Mac and iPhone could send mail using this port when connected to my home wi-fi.
However, the same wasn’t true of my 3G carrier. They were apparently blocking SMTP traffic over port 80.
The fix was simple. I changed the SMTP port to 465 using SSL for the offending mail account on my Mac and synced the changed mail settings to my iPhone.
Sending mail from my iPhone using the 3G network now works without issue.