PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : postfix dns resolver probleme



Backi
26.05.03, 18:15
Ich betreibe einen Mailserver mit Postfix-1.1.11 unter SuSE Linux 8.1. Der Server liefert Mails an eine bestimmte Domain per SMTP über einen weiteren (multi-homed) Relay aus. Die Namensauflösung für diesen Relay klappt und liefert zwei IP-Adressen, von denen ich jedoch nur eine nutzen möchte, weil die andere Leitung nach Volumen abgerechnet wird. Ich habe in die /etc/resolv.conf eine sortlist-Direktive eingebaut, die auch bei Tools wie Ping super funktioniert.
Der dusselige Postifix kümmert sich jedoch nicht darum und schickt die Mails immer schön über die teure Strecke.
Ein Eintrag in der /etc/hosts hat auch nichts gebracht.

Weiß irgendwer, wie die Namensauflösung bei Postfix funktioniert?

Backi (ratlos)

Lobanak
26.05.03, 21:04
Hi,

wenn Du in die /etc/postfix/main.cf reinschaust, gibt es folgenden Parameter:



# The inet_interfaces parameter specifies the network interface
# addresses that this mail system receives mail on. By default,
# the software claims all active interfaces on the machine. The
# parameter also controls delivery of mail to user@[ip.address].
#
# See also the proxy_interfaces parameter, for network addresses that
# are forwarded to us via a proxy or network address translator.
#
# Note: you need to stop/start Postfix when this parameter changes.
#
#inet_interfaces = all
#inet_interfaces = $myhostname
#inet_interfaces = $myhostname, localhost


es steht zwar drin, das dies für den Empfang ist, ich habe aber bei meinem Server nur eine IP eingetragen und er nutzt auch nur diese zum versenden der Mails. Und diese IP ist nur ein Alias auf eth0 (also eth0:0) und somit nicht standard welche dem hostname der Maschine zugeordnet ist. Es gibt keinerlei Probleme damit, da auch nur diese IP in der Firewall freigeschaltet ist. Ansonsten würde man ja in den Log-Files irgendwas sehen.

Es sollte aber in der /etc/hosts auch der hostname des Mail-Servers auf diese IP zeigen.

Beispiel:
eth0 = 6x.xxx.xxx.1
eth0:0 = 6x.xxx.xxx.2

hostname = server.mydomain.tld

in /etc/hosts:
6x.xxx.xxx.1 server.mydomain.tld
6x.xxx.xxx.2 mail.mydomain.tld
6x.xxx.xxx.2 www.mydomain.tld
...

in /etc/postfix/main.cf
inet_interfaces = 6x.xxx.xxx.2, localhost

Greets

Lobanak

Backi
27.05.03, 09:41
Hmmm, das funktioniert bei mir nicht. Der Mailserver hat eine IP (62.xxx.xxx.40), der nächste Relay hat die 62.xxx.xxx.34 und die 217.xxx.xxx.134. in der /etc/hosts steht für relay.mydomain.com nur die 62.xxx.xxx.34. Das interessiert den Postfix aber nicht. Er sendet trotzdem etwa die Hälfte der Mails an 217.xxx.xxx.134.

Backi

Lobanak
27.05.03, 13:19
Hi,

ok, mein Server hat keinen relay, somit kann das evtl. auch nicht passen. Aber evtl. könnte folgendes das Problem lösen:



# The relayhost parameter specifies the default host to send mail to
# when no entry is matched in the optional transport(5) table. When
# no relayhost is given, mail is routed directly to the destination.
#
# On an intranet, specify the organizational domain name. If your
# internal DNS uses no MX records, specify the name of the intranet
# gateway host instead.
#
# In the case of SMTP, specify a domain, host, host:port, [host]:port,
# [address] or [address]:port; the form [host] turns off MX lookups.
#
# If you're connected via UUCP, see also the default_transport parameter.
#
#relayhost = $mydomain
#relayhost = gateway.my.domain
#relayhost = uucphost
#relayhost = [an.ip.add.ress]


Greets

Lobanak

Backi
28.05.03, 15:33
Dann würde er alle Mails an den Relay schicken, das will ich nicht. Das Problem ist auch nicht die Zustellung von Mails sondern nur die Namensauflösung. Das dammige Teil kümmert sich einfach nicht um Einträge in /etc/hosts oder /etc/resolv.conf, obwohl die postfix-Programme gegen die gleiche resolver-Bibliothek gelinkt sind wie z.B. ping.

Rebell
25.06.03, 09:40
Das gleiche Problem hab ich auch, ich kann einfach nicht an Hosts schicken die in meiner /etc/hosts eingetragen sind. Somit bekomme ich ständig die Fehlermeldung: "Unroutable Domain" oder "Host not found". Auch bei Exim.