NFS Server an ein bestimmtes Interface binden

Thorsten

SSF Facilitymanagement
Staff member
Hallo!
Gegeben ist ein Debian Lenny nfs-kernel-server. Die Maschine hat zwei Netzwerk Interfaces (öffentlich / privat). Im privaten Netz stehen zwei NFS Clients. Wie bringe ich es unter Debian 5.0 fertig, den kompletten NFS Dienst an ein Interface eth1 mit der IP Adresse 10.10.10.1 zu binden?

Sobald ich in der /etc/default/portmap die Option
Code:
OPTIONS="-i 10.10.10.1"
setze und den portmapper starte, erhalte ich die Fehlermeldung
Code:
Cannot register service: RPC: Unable to receive; errno = Connection refused not registered: 100000 2  tcp   111   portmapper
Cannot register service: RPC: Unable to receive; errno = Connection refused not registered: 391002 2  tcp   723   sgi_fam
Cannot register service: RPC: Unable to receive; errno = Connection refused not registered: 100024 1  udp   54814   status
Cannot register service: RPC: Unable to receive; errno = Connection refused not registered: 100000 2  tcp   42800   status
Das Ganze klappt übrigens ganz wunderbar, wenn ich den portmapper an das Interface 127.0.0.1 bind - bringt mir aber eher nichts.

mfG
Thorsten
 
Mein erster Gedanke war einfach mal mehrere -i Optionen zu verwenden. Wie du an der Fehlermeldung gesehen hast, nutzen die Anbieter der RPC-Dienste die lokale Adresse zur Registrierung der Dienste. Dumm, dass der portmapper offenbar nur die letzte Option beachtet und damit immer nur an einer Adresse hängt. :(

Du könntest schauen, ob du stattdessen rpcbind verwendest, was IMHO mehrere Adressen zuläßt. Ist allerdings erst in squeeze enthalten, d.h. entweder selber übersetzen oder auf die Suche gehen. Da scheinen in Verbindung mit NFS auch noch mehr Gründe für rpcbind zu sprechen: http://www.held.org.il/blog/2010/01...r-is-broken-or-portmap-to-rpcbind-transition/

Der portmapper ist ja auch nur der erste Schritt. Für die eigentliche NFS-Funktionalität sind dann mountd und nfsd sowie ggfs. statd und lockd relevant. Zumindest mountd scheint das Binden an spezifische Adressen auch nicht zu beherrschen. Da scheint iptables oder tcpwrapper dann das Mittel der Wahl zu sein.
 
Hallo Cenic!

Danke für deine Ausführungen. Wenn ich das richtig verstanden habe, sind einige Distributionen schon auf dem Migrationsweg weg vom portmapper und hin zu rpcbind. Aktuell bleiben mir also nur die Umwege über hosts.deny / hosts.allow und iptables.

mfG
Thorsten
 
Back
Top