OSX Swift Netzwerkresource auf Existenz prüfen

Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen

  • OSX Swift Netzwerkresource auf Existenz prüfen

    Hallo,

    ich würde gerne prüfen ob ein bestimmtes NAS im Netzwerk vorhanden und betriebsbereit ist? In meinen Büchern finde ich hierzu keinen Hinweis. Im Netz habe ich hierzu eine Objective-C Methode gefunden, welche jedoch nur Fehlermeldungen produziert.

    Ich würde dies gerne mit Swift realisieren. Hat jemand hierzu evtl. ein paar Infos bzw. Quellen die er mir benennen kann?

    Danke.
  • MyMattes schrieb:

    Wann ist für Dich eine Resource denn „verfügbar“? Vielleicht gibt es eine File-URL, die Du checken kannst? Das halte ich für den Idealfall und es gibt entsprechende Methoden.

    Sonst wird es schwammig: Ping, Webinterface, ... da wirst Du bastel müssen.

    Mattes
    Dein Vorschlag finde ich gut, nur leider habe ich keinen Zugriff bzw. administritative Berechtigung auf diesem Device. Verfügbar ist es, wenn es eingeschaltet und im Netz erreichbar ist.

    Die Objective-C Methode nutzt Ping, nur leider kann ich da nur rudimentär herauslesen wie es funktioniert. Liegt auch daran, dass diese nicht läuft und somit nicht wirklich sichergestellt ist, dass der Ablauf und die aufgerufenen Methoden funktionieren. Vielleicht könntest Du mir da ein paar Anregungen hinsichtlich des Ablaufs mitteilten?
  • OSXDev schrieb:

    Die Objective-C Methode nutzt Ping, nur leider kann ich da nur rudimentär herauslesen wie es funktioniert.
    Ping ist denkbar ungeeignet für sowas. Das Protokoll ist erstaunlich kompliziert und es sagt gerade mal aus, dass der Rechner da ist.


    OSXDev schrieb:

    Liegt auch daran, dass diese nicht läuft und somit nicht wirklich sichergestellt ist, dass der Ablauf und die aufgerufenen Methoden funktionieren.
    Das ist der Weg zur Wahrheit: Mit welchem Protokoll greifen die anderen Rechner hauptsächlich auf das NAS zu? HTTP(S), WebDAV, SMB, AFS, SSH? Dann solltest du (mindestens) eines dieser Protokolle verwenden, um die Verfügbarkeit zu testen.
    „Meine Komplikation hatte eine Komplikation.“
  • macmoonshine schrieb:

    Das ist der Weg zur Wahrheit: Mit welchem Protokoll greifen die anderen Rechner hauptsächlich auf das NAS zu? HTTP(S), WebDAV, SMB, AFS, SSH? Dann solltest du (mindestens) eines dieser Protokolle verwenden, um die Verfügbarkeit zu testen.
    Das ist eine wirklich guter Ansatz. :thumbsup:

    Ich habe mal nachgefragt und es läuft gerade die Umstellung von AFS auf SMB. Also generell wird zukünftig nur via SMB zugegriffen. Wenn ich Dich nun aber richtig verstehe, dann sollte ich einen Zugriff mit mehren Protokollen durchführen? Da aber alle anderen Protokolle nicht verfügbar sind, wird dies schwierig werden. Es sollte doch auch ausreichen wenn der Zugriff nur via SMB erfolgt oder übersehe ich hier etwas?
  • OSXDev schrieb:

    Es sollte doch auch ausreichen wenn der Zugriff nur via SMB erfolgt oder übersehe ich hier etwas?
    Ja, das hier:

    macmoonshine schrieb:

    Dann solltest du (mindestens) eines dieser Protokolle verwenden, um die Verfügbarkeit zu testen
    Natürlich reicht es aus, das Protokoll zu testen, welches für die Verfügbarkeit der Resource notwenig ist. Wenn Du ausschliesslich SMB-Clients hast, eben SMB. Vielleicht muss aber - z. B. für die Administration - auch ein Web-Interface aufrufbar sein. Dann eben zusätzlich HTTP(S) ... oder ... oder ... oder. Letztlich versuchst Du eine Art End-to-End-Monitoring, und dabei muss man eben alle Services testen, die eine Komponente für den Betrieb bereitstellen muss (nicht kann).

    Mattes
    Diese Seite bleibt aus technischen Gründen unbedruckt.