I've got a problem with Gmail.

It started after one of our trojan infected PCs sent spam for one day from our IP address.

We've fixed the problem, but we got into 3 black lists. We've fixed that, too. But still every time we send an email to Gmail the message is rejected:

So I've checked Google Bulk Sender's guide once again and found an error in our SPF record and fixed it. Google says everything should become fine after some time, but this doesn't happen. 3 weeks already passed but we still can't send emails to Gmail.

Our MX setup is a bit complex, but not too much: We have a domain name delo-company.com, it has it's own mail @delo-company.com (this one is fine, but the problems are with sub-domain name corp.delo-company.com).

Delo-company.com domain has several DNS records for the subdomain:

corp                     A
corp                     MX    20 corp.delo-company.com
corp.delo-company.com    TXT   "v=spf1 ip4: ~all" 

(I set ~all for testing purposes only, it was -all before that)

These records are for our corporate Exchange 2003 server at Its LAN name is s2.corp.delo-company.com so its HELO/EHLO greetings are also s2.corp.delo-company.com.

To pass EHLO check we've also created some records in delo-company.com's DNS:

s2.corp                  A
s2.corp.delo-company.com TXT   "v=spf1 ip4: ~all" 

As I understand SPF verifications should be passed in this way: Out server s2 connects to MX of the recepient (Rcp.MX): EHLO s2.corp.delo-company.com Rcp.MX says Ok, and makes SPF check of HELO/EHLO. It does NSlookup for s2.corp.delo-company.com and gets the above DNS-records. TXT records says that s2.corp.delo-company.com should be only from IP So it should be passed.

Then our s2 server says RCPT FROM: Rcp.MX` server checks it, too. The values are the same so they should also be positive.

Maybe there is also a rDNS check, but I'm not sure what is checked HELO or RCPT FROM.

Our PTR record for is: 86400 IN PTR s2.corp.delo-company.com.

To me everything looks fine, but anyway all emails are rejected by Gmail.

So, I've checked MXtoolbox.com - it says everything is fine, I passed http://www.kitterman.com/spf/validate.html Python check, I did 25port.com email test. It's fine, too:

Return-Path: <[email protected]>
Received: from s2.corp.delo-company.com ( by verifier.port25.com id ha45na11u9cs for <[email protected]>; Fri, 2 Mar 2012 13:03:21 -0500 (envelope-from <[email protected]>)
Authentication-Results: verifier.port25.com; spf=pass [email protected]
Authentication-Results: verifier.port25.com; domainkeys=neutral (message not signed) [email protected]
Authentication-Results: verifier.port25.com; dkim=neutral (message not signed)
Authentication-Results: verifier.port25.com; sender-id=pass [email protected]
Content-class: urn:content-classes:message
MIME-Version: 1.0
Content-Type: multipart/alternative;
Subject: test
Date: Fri, 2 Mar 2012 21:03:15 +0300
X-MimeOLE: Produced By Microsoft Exchange V6.5
Message-ID: <[email protected]>
Thread-Topic: test
Thread-Index: Acz4jS34oznvbyFQR4S5rXsNQFvTdg==
From: =?koi8-r?B?89XQ0tXOwMsg8MHXxcw=?= <[email protected]>
To: <[email protected]>

I also checked with [email protected], but it FAILs all the time, no matter which SPF records I make:

<s2.corp.delo-company.com #5.7.1 smtp;550 5.7.1 <[email protected]>: Recipient address rejected: SPF Tests: Mail-From Result="softfail": Mail From="[email protected]" HELO name="s2.corp.delo-company.com" HELO Result="softfail" Remote IP="">

I've filled Gmail form twice, but nothing happens.

We do not send spam, only emails for our clients. 2 or 3 times we did mass emails (like New Year Greetings and sales promos) from corp.delo-company.com addresses, but they where all complying to Gmail Bulk Sender's Guide (I mean SPF, Open Relays, Precedence: Bulk and Unsubscribe tags). So, this should be not a problem.

Please, help me. What am I doing wrong?

UPD: I also tried Unlocktheinbox.com test and the server also fails this test. Here is the result; here is one more.

I also tried to send email from that server manually via telnet and everything is fine. Here is what I type:

220 mx.google.com ESMTP g15si4811326anb.170
HELO s2.corp.delo-company.com
250 mx.google.com at your service
MAIL FROM: <[email protected]>
250 2.1.0 OK g15si4811326anb.170
RCPT TO: <[email protected]>
250 2.1.5 OK g15si4811326anb.170
354  Go ahead g15si4811326anb.170
From: [email protected]
To: Pavel <[email protected]>
Subject: Test 28

This is telnet test
250 2.0.0 OK 1330795021 g15si4811326anb.170
221 2.0.0 closing connection g15si4811326anb.170

And this is what I get:

Delivered-To: [email protected]
Received: by with SMTP id a9csp96864wbt;
        Sat, 3 Mar 2012 09:17:02 -0800 (PST)
Received: by with SMTP id f12mr4837125ann.49.1330795021572;
        Sat, 03 Mar 2012 09:17:01 -0800 (PST)
Return-Path: <[email protected]>
Received: from s2.corp.delo-company.com (s2.corp.delo-company.com. [])
        by mx.google.com with SMTP id g15si4811326anb.170.2012.;
        Sat, 03 Mar 2012 09:17:00 -0800 (PST)
Received-SPF: pass (google.com: domain of [email protected] designates as permitted sender) client-ip=;
Authentication-Results: mx.google.com; spf=pass (google.com: domain of [email protected] designates as permitted sender) [email protected]
Date: Sat, 03 Mar 2012 09:17:00 -0800 (PST)
Message-Id: <[email protected]>
From: [email protected]
To: Pavel <[email protected]>
Subject: Test 28

This is telnet test
  • Have you tried changing the TXT record from ip4: to mx? Like you, I can't see an error, but that may be worth trying. Commented Mar 2, 2012 at 21:14
  • Tried mx for corp: <s2.corp.delo-company.com #5.7.1 smtp;550 5.7.1 <[email protected]>: Recipient address rejected: SPF Tests: Mail-From Result="permerror": Mail From="[email protected]" HELO name="s2.corp.delo-company.com" HELO Result="softfail" Remote IP="">
    – pablomedok
    Commented Mar 2, 2012 at 23:03
  • And mx for s2.corp. <s2.corp.delo-company.com #5.7.1 smtp;550 5.7.1 <[email protected]>: Recipient address rejected: SPF Tests: Mail-From Result="softfail": Mail From="[email protected]" HELO name="s2.corp.delo-company.com" HELO Result="softfail" Remote IP=""> Both are Softfail.
    – pablomedok
    Commented Mar 2, 2012 at 23:15
  • Do you have a DSN (Delivery Status Notification) for a bounced message ? Can you post it ? You don't say whether you know for sure that SPF is why Gmail is rejecting your email.
    – kls
    Commented Mar 2, 2012 at 23:18
  • I can give it to you, but it's in Russian: Сообщение не было получено одним или несколькими получателями. Тема: test 22 Отправлено: 03.03.2012 0:07 Сообщение не получили следующие получатели: [email protected] на 03.03.2012 0:08 Ошибка связи с сервером электронной почты получателя по протоколу SMTP. Обратитесь к системному администратору. <s2.corp.delo-company.com #5.5.0 smtp;550-5.7.1 [ 3] Our system has detected an unusual rate of> The message breaks after the first line. I saw the logs, after it there is QUIT
    – pablomedok
    Commented Mar 2, 2012 at 23:46

3 Answers 3


Microsoft has a nice wizzard. Maybe it can suggest some changes?


  • This link doesn't work anymore
    – rineez
    Commented Mar 21 at 6:03
  • 12 years later... things are bound to change :)
    – DerekC
    Commented Mar 24 at 4:05

After 50 days of trying and googling for a solution, Gmail started to accept our emails. They pass to inbox in normal way (they are not tagged as spam).

I didn't make any changes or any other tries during last 15 days. I don't know is it bureaucracy or some algorithms that take so long, but to my mind it took 10 time longer than it should. 5 day penalty for our weak security is enough.

By the way, unlocktheinbox.com now passes the test, openspf.org test is still reporting a failure. Looks like my situation is too complex for the test. I would fix my PTR and HELO names to match domain name.

However it took already a week after we asked our ISP to change PTR and it's still remains unchanged... One more bureaucracy issue.

Thanks for everyone's help.


could it be because you're using only TXT records, without an SPF type record?

to quote RFC 4408:

It is recognized that the current practice (using a TXT record) is
not optimal, but it is necessary because there are a number of DNS
server and resolver implementations in common use that cannot handle
the new RR type. The two-record-type scheme provides a forward path
to the better solution of using an RR type reserved for this purpose.

An SPF-compliant domain name SHOULD have SPF records of both RR
types. A compliant domain name MUST have a record of at least one
type. If a domain has records of both types, they MUST have
identical content.

  • Our hosting control panel does not support SPF record type (only a, aaaa, cname, ns, mx, srv, txt). But that was not a problem before. I just can't understand, why some services pass and some other fail. And why manual message sending via Telnet was successful from the same server? Looks like there is something wrong with Exchange settings.
    – pablomedok
    Commented Mar 4, 2012 at 0:19
  • 1
    For anyone reading this now, be aware that use of the SPF RR type was deprecated in 2014. use TXT. See RFC 7208 for details.
    – mc0e
    Commented Apr 29, 2019 at 4:49

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .