Residents of academic institutes and other organizations frequently face problem wile synchronizing their non-Gmail email accounts like yahoo, outlook or other IMAP account with Gmail Android app, thunder-Bird, em-client or any other such desktop or mobile email clients while using their organizational internet connection, but everything works fine with personal 3G connection. This post will explain the situation in details, reasons behind such issues and some short of resolutions.
- Gmail is working fine with Gmail Android app but any other email account is not synchronizing with Gmail Android app inside organizational network
- Other emails are working fine with Gmail Android app with Personal internet connection like 3G and 2G.
- Although Yahoo is not synchronizing with Gmail Android app inside organizational network it’s working fine with Yahoo Android App..!!
- All email accounts are working with web based email clients but not working with any desktop email client like thunder-bird, eMclient or opera email client etc.
- Even if the particular account is added with personal internet connection it again doesn’t work with organizational restricted internet.
- Most of those institute provides their own email account. Those accounts sometime works with email synchronization apps.
- Some privileged users (like faculty members in academic organization) don’t seem to have this issues.
So, it’s clear that the problem is with the organization’s internet connection and not with email accounts and email clients. I myself has faced such problem in IIT Delhi and IIT Bombay, two most popular engineering institute in India
What Actually Causes This?
- Email inbox synchronize using two protocol (IMAP and POP) and outgoing email use SMTP protocol for mail transfer. Depending user’s choice all email clients (in both Desktop and Android) use either IMAP or POP to fetch emails stored email from inbox (IMAP is better choice as it provides synchronization). POP, IMAP and SMTP uses following TCP port to connect with remote email server.
- POP: 110 (insecure), 995 (SSL)
- SMTP: 25 (insecure), 465 (SSL), 587(TLS)
- IMAP: 993
For security reasons most of the organization block all those ports and so email clients fail to connect remote server and any email account hosted in that server doesn’t work. Usually organizations configure their firewall to reject any packet without some very common source or destination port like 22(SSH), 80 (HTTP, for web), 443 (HTTPS) etc.
- 2nd question is then why Gmail works with their own android apps? This is simply because those apps doesn’t need specified ports for connecting their servers, but how? Because Gmail apps use their propitiatory protocol to connect their server using TCP port 443 only which is never blocked. But when the same app try to connect with another server (like Gmail app is connecting to yahoo server) it has no way to connect but using those common RFC defined protocols and ports. This is because Gmail Client doesn’t have propitiatory method to connect with yahoo server. This creates all such issues. But Yahoo, Outlook and all other established public email provider have their own Android app using propitiatory protocols and hence those apps work fine with their email ID like Gamil works.
- Organization emails are usually hosted in organizational local network. Some organization use firewall blocking at gateway router only and hence it applies only on external connections. In such case internal email works fine.
- In academic institute faculty members are usually given with prevailed login account. When logged in any kind of internet traffic filtering is removed. So all apps works as it is with any other personal internet connections.
- Use Apps for respective email: It’s clear from above discussions that if you use particular app for each email it will work provided that propitiatory app need not to use outgoing ports other than 80 and 443. But it’s not convenient to use different apps for every email. And some other organizational email most probably doesn’t have an app.
- Use Gmail’s POP and SMTP service: This is the most convenient solution to use with Android Gmail App, I think. Gmail has it’s POP service to pull email from any other account. One Gmail account allow to fetch email from maximum 5 Gmail or non-Gmail email ID over POP. If you configure your Gmail ID to fetch email from another ID, all email from your other ID will be fetched to Gmail inbox by Gmail server (with an interval of one hour between two synchronization). Although the Gmail App is not fetching emails from non-Gmail ID, still all email will be accessible from Gmail Android App because they are now in Gmail inbox.
Gmail also offer SMTP service. You may add any number of gmail and non gmail ID as sender ID in your Gmail inbox. After adding those ID from Gmail setting you can chose any one of them as from address in Gmail Android App. Now again Gmail server, and not your APP, will work to connect via SMTP to another server over port 25 to send email as your another ID and everything will work fine.
- Using VPN (Virtual Private Network): With VPN it’s possible to remove all such local restrictions. VPNs use encrypted tunneling to pull all traffic from user’s device to their server usually over destination port 80 or 443. Then VPN server acts as client, connect with remote email server and do whatever is needed and return back the data to user with source port 80 or 443 over same open TCP connection. So organization can’t block those traffic by anyway. You may use excellent free VPN providers like www.tcpvpn.com, psyphon etc for this purpose.
Note: This post in written in perspective of IIT Delhi and IIT Bombay’s internet connection. Two most popular engineering institute it India.