Αν κάποιος διακομιστής μας είναι εκτός λειτουργίας, συνήθως θα τρέξουμε την εντολή ping για να επαληθεύσουμε την διαθεσιμότητά του στο δίκτυο. Στο σημερινό Tip θα δούμε την χρήση του εργαλείου fping για να δούμε ποιες συσκευές είναι συνδεδεμένες στο τοπικό ή απομακρυσμένο δίκτυο μιας και να ελέγξουμε την διαθεσιμότητα ολόκληρου του δικτύου ή πολλαπλών συσκευών ταυτόχρονα.
Με την χρήση του fping, αντί του απλού ping, μπορούμε να εκτελέσουμε Ping Sweep το οποίο είναι μια μέθοδος σάρωσης δικτύου για να μας δείξει την διαθεσιμότητα των υπό εξέταση συσκευών (live hosts). Επίσης το fping διαφέρει από το ping στο ότι μπορείτε να ορίσετε οποιονδήποτε αριθμό από Hosts στη γραμμή εντολών ή να δώσετε ένα αρχείο που περιέχει μια λίστα από hosts. Αν ο host δεν ανταποκριθεί εντός ορισμένου χρονικού ορίου θεωρείται μη προσβάσιμο. Βέβαια σε περίπτωση που o sysadmin του host έχει ρυθμισμένο τον firewall να μην δέχεται ping τότε πιθανόν να εμφανιστεί ως μη προσβάσιμο.
Στο τοπικό μας δίκτυο είναι χρήσιμο σε περίπτωση που θέλουμε να δούμε τις συνδεδεμένες συσκευές στο δίκτυό μας. Οπότε με άλλα λόγια μπορούμε να ελέγξουμε ποιοι είναι συνδεδεμένοι στο ρουτερ μας, όπως είχαμε δει στον σχετικό οδηγό για τους τζαμπατζίδες που χώνονται και κλέβουν internet. :)
Πως εγκαθιστούμε το FPING
Το Fping είναι διαθέσιμο για εγκατάσταση μέσω του προγράμματος εγκατάστασης λογισμικών (Software Repositories) της διανομής Linux που χρησιμοποιείτε. Μια απλή αναζήτηση σε αυτό, της λέξης fping
θα σας δώσει το πακέτο το οποίο θα κάνετε κλικ για εγκατάσταση.
Αν θέλετε να το κάνετε μέσω τερματικού τότε:
Fping σε Ubuntu / Debian και παρόμοιες διανομές
sudo apt install fping
Fping σε RHEL/CentOS και παρόμοιες διανομές
sudo dnf install fping
Fping σε Arch Linux και παρόμοιες διανομές
sudo pacman -S fping
Fping σε openSUSE διανομή
sudo zypper install fping
Πως χρησιμοποιούμε το FPING
Παρακάτω θα δούμε τις πιο συνηθισμένες περιπτώσεις χρήσης του fping
. Οπότε ανοίξτε τερματικό (αν το είχατε κλείσει) και τρέξτε τα παρακάτω σενάρια.
Για να δείτε την περιγραφή των παραμέτρων που λαμβάνει το fping αρκεί να δώσετε:
fping -h
Κάνουμε ping σε πολλαπλά host σε μια γραμμή
fping 192.168.1.1 192.168.1.102 localhost 8.8.8.8 cerebrux.net
Όπου λογικά θα πάρουμε τα παρακάτω αποτελέσματα
192.168.1.1 is alive
192.168.1.102 is alive
localhost is alive
8.8.8.8 is alive
cerebrux.net is alive
Κάνουμε ping σε πολλαπλά host χρησιμοποιώντας ένα αρχείο file.txt
Αν δημιουργήσουμε ενα αρχείο π.χ. file.txt
και προσθέσουμε εκεί τον κάθε host (σε μορφή IP όνομα τομέα) ανα γραμμή, μπορούμε να το χρησιμοποιήσουμε ως είσοδο στο fping
fping < file.txt
192.168.1.1 is alive
192.168.1.102 is alive
192.168.1.150 is unreachable
localhost is alive
192.168.147.2 is alive
8.8.8.8 is alive
cerebrux.net is alive
Κάνουμε Ping σε ένα εύρος απο IP
Όταν π.χ. δεν γνωρίζουμε την IP κάποιων συσκευών, ή απλά θέλουμε να δούμε την διαθεσιμότητα των συσκευών σε ένα εύρος από IP:
fping -s -g 192.168.1.1 192.168.1.255
Θα έχουμε παρόμοια με τα παρακάτω αποτελέσματα:
192.168.1.1 is alive
192.168.1.102 is alive
ICMP Host Unreachable from 192.168.1.102 for ICMP Echo sent to 192.168.1.2
ICMP Host Unreachable from 192.168.1.102 for ICMP Echo sent to 192.168.1.3
ICMP Host Unreachable from 192.168.1.102 for ICMP Echo sent to 192.168.1.4
[...]
255 targets
2 alive
253 unreachable
0 unknown addresses
253 timeouts (waiting for response)
1014 ICMP Echos sent
2 ICMP Echo Replies received
1008 other ICMP received
0.05 ms (min round trip time)
1.71 ms (avg round trip time)
3.37 ms (max round trip time)
12.003 sec (elapsed real time)
Περίμενε μέχρι να έρθει το Internet

Πριν κλείσουμε θα δούμε πως μπορούμε να χρησιμοποιήσουμε το fping
για να ελέγξουμε αν συνδεθήκαμε στο internet ή πως να περιμένουμε αν μια συσκευή συνδεθεί και είναι διαθέσιμη στο δίκτυο.
Πως θα το κάνουμε αυτό; Χρησιμοποιώντας την παράμετρο -l
η οποία λέει στο fping
μην σταματάς να κάνεις ping. Θα φτιάξουμε λοιπόν ένα μικρό προγραμματάκι, όπως μάθαμε στα μαθήματα Scripting.
Ανοίγουμε τον αγαπημένο μας κειμενογράφο, βάζουμε τον παρακάτω κώδικα και τον αποθηκεύουμε ως wait-for-derne.sh
#!/bin/bash
echo "Ελέγχω αν έχεις Internet... αν όχι θα περιμένω μέχρι να συνδεθεί..."
fping -l 1.1.1.1 | read
echo "ΟΚ... μόλις ήρθε το Internet"
Αφού το αποθηκεύσουμε, το κάνουμε εκτελέσιμο
chmod +x wait-for-derne.sh
Για δοκιμή, κλείστε το Wifi του υπολογιστή ή βγάλτε το καλώδιο δικτύου και έπειτα τρέξτε το
./wait-for-derne.sh
Λογικά θα περιμένει μέχρι να συνδεθεί η συσκευή στο δίκτυο με το σχετικό μήνυμα. Τώρα συνδέστε το Wifi/Καλώδιο και λογικά θα εμφανίσει το σχετικό μήνυμα και θα σταματήσει να τρέχει.
Σας φάνηκε χρήσιμο;
Πείτε μας τη γνώμη σας για το σημερινό tip. Δείτε και τα υπόλοιπα Tips ή πείτε μας τα δικά σας tips στα σχόλια ή επικοινωνήστε μαζί μας.
παρα πολυ ωραιο
Ευχαριστούμε !
περισσότερο από βολικό
Ευχαριστούμε πολύ φίλε!
Και σαν άρθρο και σαν παρουσίαση και σαν ευκολία εφαρμογής. Αλλά θα επανέλθω μετά από λίγο χρόνο εφαρμογής
Πολύ χρήσιμη ιστοσελίδα να μαθαίνουμε!