Controllare la connessione al server AFP tramite bash

3

C'è un modo per controllare a livello di programmazione se una connessione è stabilita su un server afp? Ho provato a eseguire il ping sul server, ma questo risulta sempre in un timeout.

Finora l'unica soluzione alternativa che ho imparato a lavorare è:

#!/bin/bash
open "afp://website.com/afpDir/"
until [[ -d /Volumes/afpDir/ ]]; do
    echo 'waiting for connections'
    sleep 1
done

Tuttavia, questo funziona solo se controllo in modo specifico la directory afpDir mentre è aperta in Finder. Esiste un modo affidabile per verificare se esiste una connessione a quel server AFP o forse anche trovare un IP affidabile per il server?

    
posta Micks Ketches 26.10.2017 - 19:46
fonte

1 risposta

1

Per verificare se una connessione a un server AFP - con la porta di ascolto fissa 548 - è stata stabilita, utilizzare:

netstat -naf inet | grep [.]548[\ ].*ESTAB*

o tra virgolette:

netstat -naf inet | grep '[.]548[\ ].*ESTAB*'

con -naf inet : nessuna risoluzione dei nomi, tutti i socket e restrizione a IPv4

e [.]548[\ ].*ESTAB* (grep per a) <IP-address>.548 ESTABLISHED . Il [.] è necessario per escludere porte come 2548 o 10548. [\ ] esclude le porte come 5480 o 5481. Il .* concatena tutto (tab / spazi) tra 548 e ESTAB *.

Un risultato di esempio ha il seguente aspetto:

tcp4       0      0  192.168.1.24.54340       192.168.1.2.548         ESTABLISHED

192.168.1.24 è l'indirizzo IP del client e 192.168.1.2 l'indirizzo IP del server, quindi.

    
risposta data 27.10.2017 - 01:58
fonte

Leggi altre domande sui tag