Ich habe drei Nächte und einen Teil des Tages damit verbracht, zu googeln und die Server meines Heimnetzwerks mit zwei NFS-Vers=3-Servern neu zu konfigurieren, die plötzlich nicht mehr funktionierten.
Sie funktionierten problemlos mit Automount von 3-4 Clients. Das ist nichts Produktives, ich habe sie zu Hause, nur um Dinge zu testen oder so, aber es gibt einige Fotos und Filme usw., die auf dem einen oder anderen Server auf ZFS liegen.
Nichts funktionierte plötzlich und es wurden keine Fortschritte erzielt. Weder rm /etc/default/nfs-* apt-get purge&install, noch verschiedene Versuche, rpc.mountd oder statd zu starten und dessen Ausgabe zu beobachten. Nun, es gibt aber eine dritte Maschine mit einem NFS3-Server, einen Router mit OpenWRT, der nur einen USB-Stick bedient. Dieser funktioniert ohne Probleme auf allen PCs, unabhängig davon, dass diese beiden Ubuntu-Server tot sind. Ich vermutete also Ubuntu-Updates. Ich fand, dass das NFS-Utils-Paket vor einigen Monaten entfernt wurde. Und ich war mir nicht sicher, wann es aufgehört hatte zu funktionieren.
Symptome: showmount -e Server braucht 2 bis 3 Minuten, um die Antwort anzuzeigen, aber die Antwort ist richtig. rpcinfo -p Server braucht etwa eine Minute oder länger, zeigt die richtige Ausgabe. mount.nfs xx:/x/x /mnt/test -o vers=3 endet nach ein oder zwei Minuten mit einem Fehler. Ping oder Mounten des Samba dieser Server funktioniert ohne Probleme, iperf sagt wie erwartet etwa 1 Gigabit (oder weniger, aber immer noch gut, wenn der Client WLAN verwendet). Telnet zum Portmapper-Port und NFS-Port öffnet eine Sitzung. Firewall ist aus. Sogar ALL:lanip zu Hosts.allow hinzugefügt. – Alle Probleme betreffen nur Ubuntu-Server, OpenWrt antwortet in Sekundenbruchteilen und funktioniert wie erwartet auf allen Clients. Aber es unterstützt kein NFS4. – Einer der Server ist 12.04.5 LTS mit Trusty HWE-Stack, – der zweite Server ist 14.04 LTS Trusty. Alle Updates installiert. Einer davon verwendet Nic-Bonding (Modus 0) von zwei Schnittstellen, der zweite nicht.
Grund, ohne Erklärung:
Um es kurz zu machen: Vor ein paar Minuten hatte ich eine verrückte Idee und tauschte meinen neuen verwalteten ZyXel GS1900-8-Switch gegen einen alten, billigen (aber auch Gigabit-) TP-Link aus. Und ich wurde verrückt, als meine NFS-Server in diesem Moment zu funktionieren begannen.
Wenn ich mir den Switch anschaue, habe ich keine Ahnung, was mit ihm los ist. Jetzt erinnere ich mich, dass ich LLTP aktiviert und lltpd auf allen PCs installiert habe, nur um Spaß daran zu haben, ihren Namen in der Portliste zu sehen. Und ich habe einige Tests mit Bonding unter Verwendung von 803.ad LACP durchgeführt, was vom alten Switch nicht unterstützt wurde und auf dem neuen funktioniert, aber ich habe es ausgeschaltet (zurück auf Modus 0), da es WoL vermeidet, das ich regelmäßig verwende und für notwendig halte.
Sagen Sie mir bitte, was ich überprüfen soll, oder raten Sie mir, was der Grund dafür sein könnte. Wo muss ich suchen und welche Befehle muss ich verwenden, um den Unterschied zu finden? Ich bin sehr neugierig geworden.
Antwort1
Am Ende stellt man fest, dass verwaltete Switches mit aktivierter DoS-Funktion (Denial of Service) SYN<1024-Portmap-Anfragen erkennen und diese blockieren. Das Ausschalten dieser Funktion löst das Problem vollständig.
Ich kann das Problem nur durch den Versuch mit „rpcinfo -p“ oder „showmount -e“ erkennen, da beim bloßen Versuch mit Telnet alle Ports zugänglich sind.
Google findet häufige Nachrichten, nachdem ich bereits weiß, wonach ich suchen soll, z. B.https://serverfault.com/questions/367107/cant-mount-nfs-share-over-tcp Und es werden verschiedene Marken von Switches erwähnt (meine sind von ZyXel, deren PoweConnect und auch Cisco).
Da verwaltete Switches immer billiger und allgemeiner werden, kann dieses Problem meiner Meinung nach häufig erneut auftreten und ist vielleicht der Grund für andere auf Askubuntu erwähnte NFS-Probleme.