named [742] Fehler

cat1510

Well-Known Member
Hi Leutz,

habt Ihr eine Idee, was ich für einen Fehler mache?
Ich benutze FreeBSD 5.1 und Bind 9.2.4.


Oct 21 04:49:00 bbtgateway named[742]: could not listen on UDP socket: permissi
on denied
Oct 21 04:49:00 bbtgateway named[742]: creating IPv4 interface tun0 failed; int
erface ignored
Oct 21 05:49:00 bbtgateway named[742]: could not listen on UDP socket: permissi
on denied
Oct 21 05:49:00 bbtgateway named[742]: creating IPv4 interface tun0 failed; int
erface ignored

MFG

CAT
 
Hast Du den named evtl. nicht als root gestartet? Ich weiss im Moment nicht, was sonst ein "permission denied" auslösen könnte. Evtl. kommst Du dem Problem mit einem 'truss' auf die Spur.
 
Hmm der läuft als bind. Mit truss kenn ich mich (noch) nicht aus.

mit /usr/local/sbin/named -c /etc/namedb/named.conf -u bind

starte ich meinen named.
 
Code:
truss -o /tmp/truss /usr/local/sbin/named -c /etc/namedb/named.conf -u bind
Dann in /tmp/truss mal nach EACCESS suchen (von hinten) und mit jeweils 10 Zeilen Kontext in beiden Richtungen posten...
 
Das sieht nicht gut aus. Er gibt immer nur folgende Meldung:

[root@gateway]~# truss -o /data/truss /usr/local/sbin/named -c /etc/namedb/named.conf -u bind
truss: cannot open /proc/5285/mem: No such file or directory
Exit 5
truss: cannot open /proc/curproc/mem: No such file or directory

Habe kein /tmp darum hab ich /data eingesetzt.

es gibt auch eine Datei /data/truss (hat er ja angelegt) aber die ist leer.
 
hmm so das klappt nu.

Wenn ich den Befehl eingebe gibt er diese Meldung aus:

truss: PIOCWAIT top of loop: Inappropriate ioctl for device

In der Datei steht aber nichts von EACCESS.

Access hab ich gefunden aber das ist nicht, was ich suche oder?

access("/usr/lib/libcrypto.so.3",0) = 0 (0x0)
open("/usr/lib/libcrypto.so.3",0x0,027757774730) = 4 (0x4)
fstat(4,0xbfbff9c0) = 0 (0x0)
read(0x4,0xbfbfe980,0x1000) = 4096 (0x1000)
mmap(0x0,1105920,0x5,0x20002,4,0x0) = 672784384 (0x28

Tut mir echt leid, wenn ich micht ein bißchen blöd anstelle.
 
Tut mir echt leid, wenn ich micht ein bißchen blöd anstelle.
Nicht blöder als wir alle, als wir das zum ersten Mal gemacht haben. Kommt denn die von Dir oben gepostete Meldung immer noch? Bitte mach' das mit dem 'truss' erneut, denn der named 'forkt' sich weg, und vermutlich kommt der Fehler erst nach dem 'fork'. Und der BSD-truss kann dem 'fork' nicht folgen.

Also nochmal bitte:
Code:
truss -o /tmp/truss /usr/local/sbin/named -f -c /etc/namedb/named.conf -u bind
(Zusätzliche Option -f für den named)...
 
Na dann bin ich schonmal beruhigt.

Er nimmt den Befehlt ohne weitere Meldung. Zeichnet der jetzt alles auf oder wie muss man sich das vorstellen?

[root@gateway]~# truss -o /data/truss /usr/local/sbin/named -f -c /etc/namedb/named.conf -u bind

^C

Hab mal Ctrl+C gedrückt, der bricht das aber nicht ab.
 
Na ja, der loggt jetzt die Sytemcalls, die das Program macht, das ihm als Argument übergeben wurde. Meine Erwartung wäre jetzt gewesen, das

1. Der von dir oben beschriebene Fehler kommt
2. Wir in dem erzeugten File (/data/truss) jetzt gucken könnten, was genau named in dem Moment tut, in dem der Fehler auftritt

... aber das klappt ja nicht.

Nachdem was Du beschreibst würde ich jetzt sagen, dass der named ordentlich läuft und du ihn, als Du die o.a. Fehlermeldung bekammst, nicht als root gestartet hast.

Und du musst ihn zunächst als root starten, sonst kann er sich nicht an port 53 (priviliged port da < 1024!) binden. Der named setzt dann - nachdem er sich gebunden hat - die euid seines Prozesses von root auf bind zurück.
 
Also in der rc.conf ist folgendes zum Thema bind:

named_enable="YES"
named_program="/usr/local/sbin/named"
named_flags="-c /etc/namedb/named.conf -u bind"

Ich wollte meinem bind aber sagen, daß er nur auf port 53 die Abfrage machen soll, weil auch noch eine Firewall im Spiel ist.
Leider habe ich immer einen Syntax Fehler in meiner named.conf

listen-on port 53 {10.0.0.1; };

Wie macht der bind das denn? Die IP die ich ihm gebe (10.0.0.1),
dann beantwortet er nur noch fragen die an dem Interface ankommen? Fragt er dann noch seine Forwarder über tun0?

achso die Meldung kommt immer wieder im 30sek Takt.
Meine massages laufen schon immer über.
Bei einem Neustart startet er den named ja selbst als root oder? Darum verstehe ich den Fehler nicht.


Ich hab nochmal die Logfiles gecheckt. Er versucht alle Stunde das Interface neu zu binden.

Oct 17 15:23:04 gateway named[292]: could not listen on UDP socket: permission denied
Oct 17 15:23:04 gateway named[292]: creating IPv4 interface tun0 failed; interface ignored
Oct 17 16:23:04 gateway named[292]: could not listen on UDP socket: permission denied
Oct 17 16:23:04 gateway named[292]: creating IPv4 interface tun0 failed; interface ignored
Oct 17 17:23:04 gateway named[292]: could not listen on UDP socket: permission denied
Oct 17 17:23:04 gateway named[292]: creating IPv4 interface tun0 failed; interface ignored
Oct 17 18:23:04 gateway named[292]: could not listen on UDP socket: permission denied
Oct 17 18:23:04 gateway named[292]: creating IPv4 interface tun0 failed; interface ignored
 
Zuletzt bearbeitet:
Zurück
Oben