Friday, December 11, 2009

Postfix sending mail & /etc/resolv.con on openSUSE 11.2

Sometimes my openSUSE 11.2 client is connected to a SLES10 router and DHCP Server, connected to another Linksys router.

I just realized that my connection dropped every 15 minutes or so, and I saw that my mail was still in the mailqueue and wasn't send out.

Sending an email with postfix I get the following error:
(Host or domain name not found. Name service error for name=relay.host.com type=MX: Host not found, try again)

So something is wrong with the DNS setting.

# host relay.host.com returns only the
relay.host.com has address _IP_address

I checked the /etc/resolv.conf and find the IP of the router in it, although my DHCP server should deliver the nameserver. Apparently the IP of the router doesn't work well.

In /etc/resolv.conf I read:

# Before you change this file manually, consider to define the
# static DNS configuration using the following variables in the
# /etc/sysconfig/network/config file:
# NETCONFIG_DNS_STATIC_SEARCHLIST
# NETCONFIG_DNS_STATIC_SERVERS
# NETCONFIG_DNS_FORWARDER
# or disable DNS configuration updates via netconfig by setting:
# NETCONFIG_DNS_POLICY=''
#


My settings:
YaST2 - Network Settings - "Global options":
Traditional Method with ifup

Hostname/DNS
Modify DNS configuration -> Use Default Policy

with the following DNS variables in /etc/sysconfig/network/config

NETCONFIG_DNS_FORWARDER="resolver"
NETCONFIG_DNS_STATIC_SEARCHLIST=""
NETCONFIG_DNS_STATIC_SERVERS=""
NETCONFIG_DNS_POLICY="auto"

In /etc/resolv.conf the nameserver entry is pointing to the access point/Linksys router: nameserver 192.168.1.1



In YaST2 I changed Hostname/DNS settings to:
Modify DNS configuration -> Only Manually

The following changes were made automatically to /etc/sysconfig/network/config:

NETCONFIG_DNS_FORWARDER="resolver"
NETCONFIG_DNS_STATIC_SEARCHLIST=""
NETCONFIG_DNS_STATIC_SERVERS=""
NETCONFIG_DNS_POLICY=""

The last one: NETCONFIG_DNS_POLICY="" is exactly the change needed and also documented in /etc/resolv.conf as well.

After I made the change:

# host relay.host.com returns
relay.host.com has address _IP_address
relay.host.com mail is handled by 5 relay.host.com

And my mail gets delivered too.

# postqueue -f

Flushes the email stuck in the mailqueue as well.

No comments:

Post a Comment