No SPF record.

Discussion in 'Installation/Configuration' started by beryl, May 15, 2007.

  1. beryl

    beryl New Member

    Hi there,

    No matter how i change the SPF record in ISP config, it wont show up in DNS report or other SPF tests.
    Ive run the domain thru DNS report and it finds Nameservers, Reverse, and also, SOA, MX servers all is OK. But not SPF records, it says it cant find any.

    I can however send to Hotmail and Google without problems.

    But it would be nice if the SPF records where working as they should.

    This is what i have in the SPF:

    Hostname : mail
    Are emails sent
    from A Record?: Yes

    Are emails sent
    from MX Record?:Yes

    Are emails sent
    from all servers of
    this domain?: Yes

    Are emails sent
    from other A Records?:

    Are emails sent
    from other MX Records?:

    Are emails sent
    from other IP addresses?: my server IP number

    Inherit SPF Record
    from this zone?: my ISP SMTP server.

    contain all hosts
    allowed to send emails
    for this domain?: Yes

    Do anyone know what is wrong?
    Ive also noticed that i have both BIND and BIND9 installed.
    Can that cause any problems?
  2. edge

    edge HowtoForge Supporter

    When you do a DNS report on your domain, do the "NS records at parent servers" reurned show your own DNS server info?
  3. beryl

    beryl New Member

    Yes, everything else is OK and it shows that it goes thru my ISP config nameservers.

    If you want me to post the whole report, i can do so.

    This is it, ive changed the domain name to and the IP.
    (dont want any unwanted visitors while im putting it up)

    Category Status Test Name Information
    INFO NS records at parent servers Your NS records at the parent servers are: [] [TTL=172800] [DE]
    ns2.mydomain. [] [TTL=172800] [DE]
    [These were obtained from]
    PASS Glue at parent nameservers OK.
    PASS DNS servers have A records OK.
    NS INFO NS records at your nameservers Your NS records at your nameservers are: [] [TTL=86400] [] [TTL=86400]
    PASS Open DNS servers OK. Your DNS servers do not announce that they are open DNS servers. Although there is a slight chance that they really are open DNS servers, this is very unlikely. Open DNS servers increase the chances that of cache poisoning, can degrade performance of your DNS, and can cause your DNS servers to be used in an attack (so it is good that your DNS servers do not appear to be open DNS servers).
    PASS Mismatched glue OK. The DNS report did not detect any discrepancies between the glue provided by the parent servers and that provided by your authoritative DNS servers.
    PASS No NS A records at nameservers OK. Your nameservers do include corresponding A records when asked for your NS records. This ensures that your DNS servers know the A records corresponding to all your NS records.
    PASS All nameservers report identical NS records OK. The NS records at all your nameservers are identical.
    PASS All nameservers respond OK. All of your nameservers listed at the parent nameservers responded.
    PASS Nameserver name validity OK. All of the NS records that your nameservers report seem valid (no IPs or partial domain names).
    FAIL Number of nameservers ERROR: You have 2 nameservers, but both are on the same IP! This is not a valid setup. You are required to have at least 2 nameservers, per RFC 1035 section 2.2.
    PASS Lame nameservers OK. All the nameservers listed at the parent servers answer authoritatively for your domain.
    PASS Missing (stealth) nameservers OK. All 2 of your nameservers (as reported by your nameservers) are also listed at the parent servers.
    PASS Missing nameservers 2 OK. All of the nameservers listed at the parent nameservers are also listed as NS records at your nameservers.
    PASS No CNAMEs for domain OK. There are no CNAMEs for RFC1912 2.4 and RFC2181 10.3 state that there should be no CNAMEs if an NS (or any other) record is present.
    PASS No NSs with CNAMEs OK. There are no CNAMEs for your NS records. RFC1912 2.4 and RFC2181 10.3 state that there should be no CNAMEs if an NS (or any other) record is present.
    WARN Nameservers on separate class C's WARNING: All of your nameservers (listed at the parent nameservers) are in the same Class C (technically, /24) address space, which means that they are probably at the same physical location. Your nameservers should be at geographically dispersed locations. You should not have all of your nameservers at the same location. RFC2182 3.1 goes into more detail about secondary nameserver location.
    PASS All NS IPs public OK. All of your NS records appear to use public IPs. If there were any private IPs, they would not be reachable, causing DNS delays.
    PASS TCP Allowed OK. All your DNS servers allow TCP connections. Although rarely used, TCP connections are occasionally used instead of UDP connections. When firewalls block the TCP DNS connections, it can cause hard-to-diagnose problems.
    FAIL Single Point of Failure ERROR: Although you have at least 2 NS records, they both point to the same server, resulting in a single point of failure. You are required to have at least 2 nameservers per RFC 1035 section 2.2.
    INFO Nameservers versions Your nameservers have the following versions: "8.4.7-REL-NOESW" "8.4.7-REL-NOESW"
    PASS Stealth NS record leakage Your DNS servers do not leak any stealth NS records (if any) in non-NS requests.
    SOA INFO SOA record Your SOA record [TTL=86400] is:

    Primary nameserver:
    Hostmaster E-mail address:
    Serial #: 2007051304
    Refresh: 28800
    Retry: 7200
    Expire: 604800
    Default TTL: 86400
    PASS NS agreement on SOA serial # OK.
    PASS SOA MNAME Check OK. Your SOA (Start of Authority) record states that your master (primary) name server is: That server is listed at the parent servers, which is correct.

    PASS SOA RNAME Check OK. Your SOA (Start of Authority) record states that your DNS contact E-mail address is: (techie note: we have changed the initial '.' to an '@' for display purposes).
    PASS SOA Serial Number OK. Your SOA serial number is: 2007051304. This appears to be in the recommended format of YYYYMMDDnn, where 'nn' is the revision. So this indicates that your DNS was last updated on 13 May 2007 (and was revision #4). This number must be incremented every time you make a DNS change.
    PASS SOA REFRESH value OK. Your SOA REFRESH interval is : 28800 seconds. This seems normal (about 3600-7200 seconds is good if not using DNS NOTIFY; RFC1912 2.2 recommends a value between 1200 to 43200 seconds (20 minutes to 12 hours)). This value determines how often secondary/slave nameservers check with the master for updates.
    PASS SOA RETRY value OK. Your SOA RETRY interval is : 7200 seconds. This seems normal (about 120-7200 seconds is good). The retry value is the amount of time your secondary/slave nameservers will wait to contact the master nameserver again if the last attempt failed.
    PASS SOA EXPIRE value OK. Your SOA EXPIRE time: 604800 seconds. This seems normal (about 1209600 to 2419200 seconds (2-4 weeks) is good). RFC1912 suggests 2-4 weeks. This is how long a secondary/slave nameserver will wait before considering its DNS data stale if it can't reach the primary nameserver.
    PASS SOA MINIMUM TTL value OK. Your SOA MINIMUM TTL is: 86400 seconds. This seems normal (about 3,600 to 86400 seconds or 1-24 hours is good). RFC2308 suggests a value of 1-3 hours. This value used to determine the default (technically, minimum) TTL (time-to-live) for DNS entries, but now is used for negative caching.
    MX INFO MX Record Your 1 MX record is:

    10 [TTL=86400] IP= [TTL=86400] [DE]
    PASS Low port test OK. Our local DNS server that uses a low port number can get your MX record. Some DNS servers are behind firewalls that block low port numbers. This does not guarantee that your DNS server does not block low ports (this specific lookup must be cached), but is a good indication that it does not.
    PASS Invalid characters OK. All of your MX records appear to use valid hostnames, without any invalid characters.
    PASS All MX IPs public OK. All of your MX records appear to use public IPs. If there were any private IPs, they would not be reachable, causing slight mail delays, extra resource usage, and possibly bounced mail.
    PASS MX records are not CNAMEs OK. Looking up your MX record did not just return a CNAME. If an MX record query returns a CNAME, extra processing is required, and some mail servers may not be able to handle it.
    PASS MX A lookups have no CNAMEs OK. There appear to be no CNAMEs returned for A records lookups from your MX records (CNAMEs are prohibited in MX records, according to RFC974, RFC1034 3.6.2, RFC1912 2.4, and RFC2181 10.3).
    PASS MX is host name, not IP OK. All of your MX records are host names (as opposed to IP addresses, which are not allowed in MX records).
    INFO Multiple MX records NOTE: You only have 1 MX record.
    PASS Differing MX-A records OK. I did not detect differing IPs for your MX records (this would happen if your DNS servers return different IPs than the DNS servers that are authoritative for the hostname in your MX records).
    PASS Duplicate MX records OK. You do not have any duplicate MX records (pointing to the same IP). Although technically valid, duplicate MX records can cause a lot of confusion, and waste resources.
    PASS Reverse DNS entries for MX records OK. The IPs of all of your mail server(s) have reverse DNS (PTR) entries.
    Mail PASS Connect to mail servers OK: I was able to connect to all of your mailservers.
    PASS Mail server host name in greeting OK: All of your mailservers have their host name in the greeting:
    220 ESMTP Postfix (Debian/GNU)
    PASS Acceptance of NULL <> sender OK: All of your mailservers accept mail from "<>". You are required (RFC1123 5.2.9) to receive this type of mail (which includes reject/bounce messages and return receipts).
    PASS Acceptance of postmaster address OK: All of your mailservers accept mail to (as required by RFC822 6.3, RFC1123 5.2.7, and RFC2821 4.5.1).
    PASS Acceptance of abuse address OK: All of your mailservers accept mail to
    PASS Acceptance of domain literals OK: All of your mailservers accept mail in the domain literal format (user@[]).
    PASS Open relay test OK: All of your mailservers appear to be closed to relaying. This is not a thorough check, you can get a thorough one here. OK: 554 5.7.1 <>: Relay access denied
    WARN SPF record Your domain does not have an SPF record.
    INFO WWW Record Your A record is: A [TTL=86400] [DE]
    PASS All WWW IPs public OK.
    PASS CNAME Lookup OK.
    INFO Domain A Lookup Your A record is: A [TTL=86400]
    Last edited: May 15, 2007
  4. falko

    falko Super Moderator

    What's the output of
    dig txt
    ? What's in's zone file?
  5. beryl

    beryl New Member

    dig txt

    ; <<>> DiG 9.3.4 <<>> txt mydomain.comno
    ;; global options: printcmd
    ;; Got answer:
    ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 25744
    ;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0

    ; IN TXT

    ;; AUTHORITY SECTION: 10800 IN SOA 2007051304 28800 7200 604800 86400

    Zone file: TXT "v=spf1 ip4: a mx ptr ~all"
  6. falko

    falko Super Moderator

    Change it to
    Code:       TXT  "v=spf1 ip4: a mx ptr ~all"
    (without the mail at the beginning). Restart BIND afterwards.
  7. beryl

    beryl New Member

    Hmm, so when i remove the Hostname, it works.
    This really should be in the manual!

    Thank you very very much for the help!
    Last edited: May 17, 2007

Share This Page