Let me start off by saying that I apologize in advanced if this isn't the correct forum for this question, but there didn't seem to be a forum that exactly matched the question/issue I'm having.
I'm a VB.NET developer and I like to expand by knowledge by trying to program things from scratch that are already implemented ih the.NET framework. My current project is programming a SMTP server using just sockets. I've already read the RFC on SMTP and my company has an Exchange Server (2007) that I was going to use for testing.
The web address of the server is exchange.mycompany.com and I used reverse DNS to get the IP adress. The domain name does have a MX record a well. From the command prompt on my computer (which is running Win7 Professional) I tried using telnet to connect on port 25. I tried using the domain name as well as the IP address, but both times it said it couldn't connect to the server on port 25.
I checked the settings ih Outlook and the port is correct. I then tried connecting on port 110, and some other ones that are sometimes used, and it gave the same error message.
Next I connected to the Exchange server through VPN and tried telnet again on port 25 and this time it worked. However in the SMTP banner it said remote.mycompany.com instead of exchange.mycompany.com. So I disconnected from the VPN and tried the telnet again on all the ports I initially tried but used remote.mycompany.com but again got the same error message. I did an IP address lookup and remote.mycompany.com and exchange.mycompany.com point to the same IP address.
I then used mxtools.com and dnsstuff.com (I think that was the adress) and used their SMTP tools to see of they could connect. I entered mycompany.com as the domain name and they looked up the MX record, which returns exchange.mycompany.com as the SMTP server, and both tools were able to connect with no issues identified.
So my questions: 1) If the MX record list exchange.mycompany.com as the SMTP sever, why does the banner return remote.mycompany.com? 2) Why can't I connect the SMTP server through telnet unless I'm connected through VPN, but the two websites I used to test it the connection worked?
Obviously the server works because because the two websites can connect to it, I can when I'm in VPN, and other servers can because I receive email on my corporate account. What could prevent my computer from connecting to the SMTP server through telnet when I'm not on VPN. I should also mention that I even tried turning off all my anti-virus software to make sure that it wasn't blocking it.
Any help would be greatly appreciated since I assuming if I can't telnet in I most likely wouldn't be able to connect through sockets so I can't start working on my project until I solve this.
It is unlikely that you can connect directly from home to your company server through normal internet, as most company exchange servers do not allow connections from outside their intranet. When you use VPN you are, presumably, going via the company's intranet and thus seen as a valid user.
One of these days I'm going to think of a really clever signature.
I'm not trying to connect to it so I can send an email through the server. What I was trying to understand how to do was to deliver and email to it. For example, if I build an SMTP server and a client which connects to my that SMTP server and I want to send an email to email@example.com (where mycompany.com is hosted on the Exchange server), how would the SMTP server I created connect to the Exchange server in order to deliver the email? Doesn't the Exchange server have to allow some sort of connection from outside the intranet in order to receive emails from other domains (gmail, yahoo, etc.)?
I'm going to have to try and do that, unfortunately the person who set it up is no longer with the company and we just have an outsourced IT company that maintains it and they usually aren't very help fully. However, because the web tools were able to connect to is it reasonable to assume the problem is on my end? I was thinking maybe because I dont have a domain name so if the Exchange server tries to lookup the IP address of my computer there is no MX or PTR record. Is this something SMTP servers look for?
I also found something that I dont know how to explain or how it may affect this. The MX record for the server list exchange.mycompany.com. However, even when I'm on VPN, I can't connect to the SMTP server using that address in telnet or the IP address it points to. I have to use remote.mycompany.com, which is shown in the SMTP banner and points to the SAME IP ADDRESS. Is there a setting in Exchange that makes it script only request coming from this address? If so, how do the online SMTP tools discover this subdomain when I only gave the tools the domain name (mycompany.com) and the MX record only shows exchange.mycompany.com? The address remote.mycomany.com is not located anywhere in the zone file.