Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Here is my senario:

  1. I have domain say is using google app mail server to send and receive emails
  2. I have a sendMail server deployed on my a cloudServer that I am using to send email campaigns & news letters to my clients ( with from address in head is:

  3. Now when I observe email headers of mails that I sent from my sendMail server I notice

Received-SPF: none

Some of my customers reported that campaign emails are going into spam, when I investigated the problem I found that it can be because of "Received-SPF" is missing.

My question is Where should I setup (in cloudServer DNS OR google app mail DNS) MX, NS, CNAME records or or any other setting that will allow sendMail server to send email that has low risk of being marked as spam.

share|improve this question

First off, make sure to implement SPF-records in your dns. Your SPF-record should be something like this:

v=spf1 mx ip4:a.b.c.d ~all

Where a.b.c.d is the IP of your sendmail-server.

To have even less chance of being marked as spam, make SendMail use the Google servers to send your email. You will need to add some AuthInfo-lines to client-info.

More info can be found here: Link.

share|improve this answer

Somewhere there is an interface that you are using to manage the DNS settings for your domain. There you need to add a TXT record for your domain which will set up the proper SPF record for it, just as Bart De Vos pointed out. So the value of the TXT record is:

v=spf1 mx ip4:a.b.c.d ~all

This setup sets a proper SPF value for your domain. However, without modifying your sendmail configuration, emails that you send from your server and destined for your domain (the one hosted at Google Apps) will likely not get delivered as the server will think that it should deliver them locally and not at Google. To overcome this, you need to follow these steps.

share|improve this answer

You should set up those records on the authoritative DNS Servers for your domain

Try dig command


look at the AUTHORITY SECTION, you will see at least one NS Record take a look at those records to guess what DNS Servers are Authoritative for your domain.

share|improve this answer

Alternatively, you could check as they will provide the authoritative server if applicable:

They have an spf wizard that will help you to create the record if needed.

Ans one last thing, after you set up the records, you can send an email to that will return your DNS setup, verify the records, provide spam score for the email, etc. This is my go to test when setting up new records. HTH!

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.