Με τον όρο localhost αναφερόμαστε στον τοπικό υπολογιστή στον οποίο τρέχει ένα πρόγραμμα. Οπως όλα τα domain names αντιστοιχούν σε μια IP address, έτσι και το “localhost” αντιστοιχεί στην 127.0.0.1 address που κατευθύνει πάντα στον τοπικό υπολογιστή. Ο loopback μηχανισμός όπως αποκαλείται είναι καίριας σημασίας καθώς επιτρέπει την δημιουργία σύνδεσης με τον εαυτό του, έτσι ώστε να βεβαιωθεί ότι το TCP/IP πρωτόκολλο είναι σωστά εγκατεστημένο και λειτουργικό χωρίς να χρειάζεται να φτάσει στην κάρτα δικτύου ή να επικοινωνήσει με το υπόλοιπο δίκτυο.
Με τεχνικούς όρους τώρα, η διεύθυνση 127.0.0.1 ανήκει στο Class A, που σημαίνει ότι το εύρος της κυμαίνεται από 127.0.0.0 μέχρι 127.255.255.255, δίνοντας έτσι την δυνατότητα σε developers να κάνουν δοκιμές χωρίς να χρειάζονται φυσική κάρτα ή δικτυακή σύνδεση.
Πως λειτουργεί
Το τμήμα – 127 – είναι reserved μόνο για loopback επικοινωνία, για αυτό όταν το δει το TCP/IP, το δρομολογεί απευθείας στον τοπικό υπολογιστή. Για τον ίδιο λόγο δεν μπορεί να χρησιμοποιηθεί public σε server IP με πρόθεμα 127. Ο loopback μηχανισμός είναι υλοποιημένος σε επίπεδο λειτουργικού (OS) και τα στάδια λειτουργίας του είναι:
- Οταν πληκτρολογεί ο χρήστης “localhost” στον browser, ο DNS resolver την μεταφράζει στην 127.0.0.1.
- Ο browser δημιουργεί ένα request σύνδεσης, π.χ. HTTP.
- Το request αυτό διερχόμενο του TCP/IP stack, δρομολογείται στο loopback interface.
- Μόλις το packet φτάσει στο service, π.χ. web server, επεξεργάζεται και επιστρέφει μέσω της ίδιας διαδρομής, δηλαδή του loopback interface.
- 5. Ο browser δέχεται το response και εμφανίζει την σελίδα.
Χρήσεις του localhost
Οι όροι localhost και 127.0.0.1 είναι συνώνυμοι, με τις ποιο σύνηθεις εφαρμογές του να είναι:
- Αν θέλει ο admin να μπλοκάρει κάποιες σελίδες, δημιουργεί DNS A records που να κάνουν point στην 127.0.0.1
- Αν χρειάζεται για λόγους testing και development να στηθούν εφαρμογές, π.χ. web servers και databases, αυτό μπορεί να γίνει χωρίς να επηρεάζεται η υπόλοιπη υποδομή σε ασφαλές και απομονωμένο περιβάλλον.