Email sent from server with rDNS & SPF being blocked by Hotmail

domain-name-systememailspf

I have been unable to send email to users on hotmail or other Microsoft email servers for some time. Its been a major headache trying to find out why and how to fix the issue.

The emails being sent that are blocked from my domain canadaka.net. I use Google Aps to host my regular email serverice for my @canadaka.net email addresses. I can sent email from my desktop or gmail to a hotmail without any problem. But any email sent from my server on behalf of canadaka.net is blocked, not even arriving in the junk email.

The IP that the emails are being sent from is the same IP that my site is hosted on: 66.199.162.177
This IP is new to me since August 2010, I had a different IP for the previous 3-4 years.

This IP is not on any credible spam lists
http://www.anti-abuse.org/multi-rbl-check-results/?host=66.199.162.177

The one list spamcannibal.org my IP is listed on seems to be out of my control, says "no reverse DNS, MX host should have rDNS – RFC1912 2.1". But since I use Google for my email hosting, I don't have control over setting up RDNS for all the MX records.

I do have Reverse DNS setup for my IP though, it resolves to "mail.canadaka.net".

I have signed up for SNDS and was approved. My ip says "All of the specified IPs have normal status."

Sender Score: 100
https://www.senderscore.org/lookup.php?lookup=66.199.162.177&ipLookup.x=55&ipLookup.y=14

My Mcafee threat level seems fine

I have a TXT SPF record setup, I am currently using xname.org as my DNS, and they don't have a field for SPF, but their FAQ says to add the SPF info as a TXT entry.
v=spf1 a include:_spf.google.com ~all

Some "SPF checking" tools ive used detect that my domain has a valid SPF, but others don't. Like Microsoft's SPF wizard, i think this is because its specifically looking for an SPF record and not in the TXT. "No SPF Record Found. A and MX Records Available".

From my home I can run "nslookup -type=TXT canadaka.net" and it returns:

Server:
google-public-dns-a.google.com
Address: 8.8.8.8

Non-authoritative answer: canadaka.net
text = "v=spf1 a
include:_spf.google.com ~all"

One strange thing I found is i'm unable to ping hotmail.com or msn.com or do a "telnet mail.hotmail.com 25". I am able to ping gmail.com and many other domains I tried. I tried changing my DNS servers to Google's Public DNS and did a ipconfig /flushdns but that had no effect. I am however able to connect with telnet to mx1.hotmail.com

This is what the email headers look like when I send to a Google email server and I receive the email with no troubles. You can see that SPF is passing.

Delivered-To: XXXX@dirtbiker.ca
Received: by 10.146.168.12 with SMTP
id q12cs91243yae;
Sun, 27 Feb 2011 18:01:49 -0800 (PST) Received: by 10.43.48.7 with SMTP id
uu7mr4292541icb.68.1298858509242;
Sun, 27 Feb 2011 18:01:49 -0800 (PST) Return-Path: Received:
from canadaka.net ([66.199.162.177])
by mx.google.com with ESMTP id uh9si8493137icb.127.2011.02.27.18.01.45;
Sun, 27 Feb 2011 18:01:48 -0800 (PST) Received-SPF: pass (google.com: domain of
postmaster@canadaka.net designates
66.199.162.177 as permitted sender) client-ip=66.199.162.177;
Authentication-Results: mx.google.com;
spf=pass (google.com: domain of
postmaster@canadaka.net designates
66.199.162.177 as permitted sender) smtp.mail=postmaster@canadaka.net
Message-Id:
<4d6b020c.c92c2b0a.4603.6378SMTPIN_ADDED@mx.google.com>
Received: from coruscant
([127.0.0.1]:12907) by canadaka.net
with [XMail 1.27 ESMTP Server] id
for from
; Sun, 27
Feb 2011 18:01:29 -0800 Date: Sun, 27
Feb 2011 18:01:29 -0800 Subject: Test
To: XXXX@dirtbiker.ca From: XXXX
Reply-To:
XXXX@canadaka.net X-Mailer: PHP/5.2.13

I can send to gmail and other email services fine. I don't know what i'm doing wrong!

UPDATE 1

I have been removed from hotmails IP block and am now able to send emails to hotmail, but they are all going directly to the JUNK folder.

UPDATE 2

I used Telnet to send a test message to port25.com, seems my SPF is not being detected.
Result: neutral (SPF-Result: None)
canadaka.net. SPF (no records)
canadaka.net. TXT (no records)

I did have a nameserver as my 4th option that doens't have the TXT records since it doens't support it. So I removed it from the list and instead added wtfdns.com as my 4th adn 5th nameservers, which does support TXT.

Now that the new nameservers have taken affect, I pass the SPF check email along with Microsofts SenderID Wizard. Seems some lookups were using the 4th nameserver and skipping the first 3???

MAIL SENT THROUGH GOOGLE SMTP:

canadaka.net. SPF (no records)
canadaka.net. 86400 IN TXT "v=spf1 a
include:_spf.google.com ~all"
canadaka.net. 86400 IN A
66.199.162.177
_spf.google.com. SPF (no records)
_spf.google.com. 300 IN TXT "v=spf1 ip4:216.239.32.0/19
ip4:64.233.160.0/19 ip4:66.249.80.0/20
ip4:72.14.192.0/18 ip4:209.85.128.0/17
ip4:66.102.0.0/20 ip4:74.125.0.0/16
ip4:64.18.0.0/20 ip4:207.126.144.0/20
ip4:173.194.0.0/16 ?all"

MAIL SENT FROM TELNET ON SERVER

canadaka.net. SPF (no records)
canadaka.net. 86400 IN TXT "v=spf1 a include:_spf.google.com ~all"
canadaka.net. 86400 IN A 66.199.162.177

Best Answer

Your title says your email is being blocked by hotmail.com but in one of your comments to Stony's answer you state that your SMTP log shows "RCPT=OK" and "RECV=OK" when sending email to hotmail.com. That in and of itself should be telling you that your email is not being blocked. It's being accepted by hotmail.com and is most likely being filtered after being accepted. there's a difference between an email being blocked/rejected and being filtered after being accepted.

You state that you can't telnet to port 25 of mail.hotmail.com. That's because mail.hotmail.com is not an MX for hotmail.com. A quick nslookup shows the following MX records for hotmail.com: mx1.hotmail.com, mx2.hotmail.com, mx3.hotmail.com, and mx4.hotmail.com.

You state that you can't ping hotmail.com but you can ping gmail.com. It's irrelevant whether or not you can ping hotmail.com or any other server, name, web site, etc. The ping tool doesn't test the availability of a service (web, email, etc). The fact that you can't ping hotmail.com only means that the hosts that hotmail.com resolve to don't respond to pings or that a firewall is blocking those pings. It's totally irrelevant to the problem. In addition, pinging hotmail.com has nothing to do with the MX records for hotmail.com. Hotmail.com is the domain name and pinging hotmail.com is pinging the A records configured for that domain name. When you ping gmail.com you're pinging the A record for that domain name, you're not pinging the MX records for gmail.com.

Have a look at the Hotmail Postmaster page here to see if there's anything you need to look in to:

http://mail.live.com/mail/troubleshooting.aspx