Αν ξέρεις ήδη τι είναι ένα όνομα domain, το επόμενο επίπεδο είναι το σύστημα που κάνει τα ονόματα domain να λειτουργούν. Κάθε ιστοσελίδα, κάθε email, κάθε εφαρμογή που συνδέεται με έναν server εξαρτάται από το DNS, που δουλεύει αθόρυβα στο παρασκήνιο. Χωρίς αυτό, το διαδίκτυο θα ήταν ένα πλέγμα από αριθμημένες διευθύνσεις χωρίς ονόματα.
Τι είναι το DNS;
Το DNS σημαίνει σύστημα ονομάτων domain. Είναι ένα παγκόσμιο δίκτυο από servers που μεταφράζει τα ονόματα domain, που διαβάζουν οι άνθρωποι, σε διευθύνσεις IP, που διαβάζουν οι μηχανές. Όταν γράφεις ένα domain στον browser σου, ο υπολογιστής σου δεν ξέρει πού βρίσκεται αυτό το όνομα. Χρειάζεται έναν αριθμό. Το DNS είναι το σύστημα που βρίσκει αυτόν τον αριθμό.
Σκέψου το σαν την εφαρμογή επαφών στο κινητό σου. Πατάς το όνομα ενός ανθρώπου και το κινητό καλεί τον σωστό αριθμό. Δεν απομνημονεύεις ποτέ τον ίδιο τον αριθμό. Το DNS δουλεύει με τον ίδιο τρόπο για το διαδίκτυο. Εσύ δίνεις το όνομα και το DNS επιστρέφει τον αριθμό που χρειάζεται ο browser σου για να φτάσει στον σωστό server.
Η σύγκριση με τον τηλεφωνικό κατάλογο ακούγεται συχνά, αλλά το DNS πάει πιο μακριά από όσο θα μπορούσε ποτέ ένας κατάλογος. Ο τηλεφωνικός κατάλογος τυπώνεται μία φορά και ξεπερνιέται γρήγορα. Το DNS ενημερώνεται σε πραγματικό χρόνο. Όταν μια ιστοσελίδα μετακομίζει σε νέο server, οι εγγραφές DNS αλλάζουν και όλο το διαδίκτυο προσαρμόζεται μέσα σε λίγες ώρες. Είναι ένας ζωντανός κατάλογος που ενημερώνεται συνεχώς και χειρίζεται δισεκατομμύρια αναζητήσεις κάθε μέρα.
Γιατί υπάρχει το DNS;
Οι υπολογιστές επικοινωνούν με διευθύνσεις IP. Μια διεύθυνση IP είναι μια σειρά αριθμών, όπως 93.184.216.34, που δείχνει έναν συγκεκριμένο server. Κάθε συσκευή που συνδέεται στο διαδίκτυο έχει τουλάχιστον μία. Το πρόβλημα είναι ότι οι άνθρωποι είναι χάλια στο να θυμούνται μεγάλους αριθμούς.
Το DNS δημιουργήθηκε για να γεφυρώσει αυτό το κενό. Αντί να ζητά από τους ανθρώπους να απομνημονεύουν διευθύνσεις IP για κάθε ιστοσελίδα που επισκέπτονται, το DNS τους αφήνει να χρησιμοποιούν απλά ονόματα. Γράφεις το όνομα. Το DNS το μετατρέπει. Ο browser σου φτάνει στον server. Όλα γίνονται χωρίς να το σκέφτεσαι.
Χωρίς το DNS, θα έπρεπε να ψάχνεις και να γράφεις τη διεύθυνση IP για κάθε ιστοσελίδα που θέλεις να επισκεφτείς. Οι σελιδοδείκτες θα ήταν σειρές αριθμών. Οι σύνδεσμοι στα email θα ήταν δυσανάγνωστοι. Το διαδίκτυο όπως το ξέρεις δεν θα λειτουργούσε για καθημερινή χρήση.
Πώς λειτουργεί μια αναζήτηση DNS;
Κάθε φορά που επισκέπτεσαι μια ιστοσελίδα, τρέχει στο παρασκήνιο μια αναζήτηση DNS. Ακολουθεί μια συγκεκριμένη διαδρομή μέσα από πολλούς servers και ο καθένας στενεύει την απάντηση, μέχρι ο browser σου να πάρει τη διεύθυνση IP που χρειάζεται. Όλη η διαδικασία διαρκεί χιλιοστά του δευτερολέπτου. Ορίστε κάθε βήμα.
Βήμα 1. Ο browser σου ελέγχει τη δική του μνήμη cache
Πριν ρωτήσει κάποιον άλλον, ο browser σου ελέγχει αν ξέρει ήδη την απάντηση. Αν επισκέφτηκες την ίδια ιστοσελίδα πρόσφατα, η διεύθυνση IP μπορεί να είναι ακόμα αποθηκευμένη στην τοπική μνήμη cache του browser. Αν είναι εκεί, η αναζήτηση τελειώνει αμέσως και ο browser φορτώνει τη σελίδα. Δεν χρειάζονται εξωτερικοί servers.
Βήμα 2. Το λειτουργικό σου σύστημα ελέγχει τη δική του cache
Αν ο browser δεν έχει την απάντηση, ρωτά το λειτουργικό σύστημα του υπολογιστή σου. Το λειτουργικό κρατά τη δική του cache DNS, ξεχωριστή από του browser. Μπορεί να έχει αποθηκευμένη τη διεύθυνση IP από άλλον browser ή από άλλη εφαρμογή που επισκέφτηκε το ίδιο domain. Αν την έχει το λειτουργικό, η αναζήτηση σταματά εδώ.
Βήμα 3. Το αίτημα πηγαίνει σε έναν recursive resolver
Όταν ούτε ο browser ούτε το λειτουργικό έχουν την απάντηση, το αίτημα φεύγει από τον υπολογιστή σου. Πηγαίνει σε έναν recursive resolver, που είναι ένας server DNS που συνήθως τον τρέχει ο πάροχος internet σου. Η δουλειά του resolver είναι να βρει τη διεύθυνση IP εκ μέρους σου. Δεν έχει ακόμα την απάντηση, αλλά ξέρει την αλυσίδα των servers που πρέπει να ρωτήσει.
Ο resolver έχει επίσης δική του cache. Αν άλλος χρήστης στο ίδιο δίκτυο επισκέφτηκε πρόσφατα αυτό το domain, ο resolver μπορεί να έχει ήδη αποθηκευμένη τη διεύθυνση IP. Αν την έχει, στέλνει την απάντηση πίσω και η αναζήτηση τελειώνει. Αν όχι, ο resolver αρχίζει να προχωρά μέσα στην ιεραρχία του DNS.
Βήμα 4. Ο resolver επικοινωνεί με έναν root nameserver
Η πρώτη στάση είναι ένας από τους root nameservers του διαδικτύου. Υπάρχουν 13 σύνολα root nameservers, με ονόματα από A μέχρι M, σκορπισμένα σε όλο τον κόσμο. Κάθε σύνολο τρέχει σε εκατοντάδες φυσικούς servers. Ο root nameserver δεν ξέρει τη διεύθυνση IP του domain σου. Ξέρει όμως ποιος server χειρίζεται την κατάληξη domain που ψάχνεις. Αν επισκέπτεσαι ένα domain .com, ο root server στέλνει τον resolver στον nameserver TLD του .com.
Βήμα 5. Ο nameserver TLD στενεύει την αναζήτηση
Το TLD σημαίνει top-level domain (κατάληξη ανώτατου επιπέδου). Ο nameserver TLD του .com ξέρει κάθε domain .com που έχει καταχωριστεί στο διαδίκτυο. Δεν έχει την τελική διεύθυνση IP, αλλά ξέρει ποιος authoritative nameserver είναι υπεύθυνος για το συγκεκριμένο domain που θες. Στέλνει αυτή την πληροφορία πίσω στον resolver.
Βήμα 6. Ο authoritative nameserver επιστρέφει τη διεύθυνση IP
Ο authoritative nameserver είναι η τελευταία στάση. Αυτός ο server κρατά τις πραγματικές εγγραφές DNS του domain, μαζί με την εγγραφή A που αντιστοιχίζει το όνομα του domain σε μια διεύθυνση IP. Στέλνει τη διεύθυνση IP πίσω στον resolver. Ο resolver αποθηκεύει την απάντηση στη cache για μελλοντικές αναζητήσεις και την περνά στον browser σου.
Βήμα 7. Ο browser σου συνδέεται και φορτώνει τη σελίδα
Με τη διεύθυνση IP στα χέρια του, ο browser στέλνει αίτημα απευθείας σε αυτόν τον server. Ο server απαντά με τα αρχεία της ιστοσελίδας και η σελίδα φορτώνει στην οθόνη σου. Όλη η αλυσίδα, από το πρώτο πάτημα πλήκτρου μέχρι την ολοκληρωμένη σελίδα, συνήθως ολοκληρώνεται σε λιγότερο από 100 χιλιοστά του δευτερολέπτου.
Τι συμβαίνει όταν το DNS αποτυγχάνει;
Το DNS είναι αόρατο όταν δουλεύει. Όταν χαλάσει, τα αποτελέσματα είναι άμεσα και συχνά μπερδεύουν, γιατί τα συμπτώματα μοιάζουν με κάτι άλλο.
- Η ιστοσελίδα σου δεν φορτώνει. Αν η εγγραφή DNS που δείχνει στον web server σου είναι λάθος ή λείπει, οι browsers δεν βρίσκουν την ιστοσελίδα σου. Το domain σου εξακολουθεί να σου ανήκει, αλλά οι επισκέπτες βλέπουν σελίδα σφάλματος αντί για το περιεχόμενό σου.
- Το email δεν φτάνει. Το email εξαρτάται από τις εγγραφές MX στις ρυθμίσεις DNS σου. Αν αυτές οι εγγραφές διαγραφούν ή δείχνουν σε λάθος server, τα μηνύματα που στέλνονται στο domain σου επιστρέφονται ή χάνονται.
- Τα πιστοποιητικά SSL δεν ανανεώνονται. Ορισμένες μέθοδοι επαλήθευσης SSL βασίζονται σε εγγραφές DNS. Αν αφαιρέσεις ή αλλάξεις αυτές τις εγγραφές, η ανανέωση χαλάει και η ιστοσελίδα σου μένει χωρίς ασφαλή σύνδεση.
- Τα εργαλεία τρίτων αποσυνδέονται. Υπηρεσίες όπως τα εργαλεία email marketing ή η επαλήθευση analytics συχνά απαιτούν συγκεκριμένες εγγραφές DNS. Αν τις αλλάξεις ή τις αφαιρέσεις, κόβεται η σύνδεση.
- Οι επισκέπτες βλέπουν διαφορετικά αποτελέσματα ανάλογα με την τοποθεσία. Κατά τη διάδοση του DNS (την περίοδο μετά την ενημέρωση μιας εγγραφής), ορισμένοι servers DNS κρατούν ακόμα στη cache τις παλιές πληροφορίες. Μερικοί επισκέπτες φτάνουν στον νέο server. Άλλοι φτάνουν στον παλιό. Αυτό μπορεί να κρατήσει έως και 48 ώρες.
Τα περισσότερα προβλήματα DNS ανάγονται σε μια λάθος εγγραφή, μια εγγραφή που λείπει ή μια αλλαγή που δεν έχει τελειώσει να απλωθεί στο διαδίκτυο. Η λύση είναι συνήθως απλή όταν ξέρεις ποια εγγραφή να ελέγξεις.
Πώς οι ρυθμίσεις DNS του domain σου ελέγχουν την επισκεψιμότητα;
Οι ρυθμίσεις DNS του domain σου είναι ο πίνακας ελέγχου για το πού πηγαίνει η επισκεψιμότητά σου. Κάθε υπηρεσία που συνδέεται με το domain σου, από την ιστοσελίδα μέχρι το email και τα εργαλεία analytics, δρομολογείται μέσω εγγραφών DNS.
Όταν τελειώσεις την καταχώριση του domain, ένα από τα πρώτα πράγματα που ρυθμίζεις είναι το DNS. Κατευθύνεις την εγγραφή A του domain σου στον server όπου φιλοξενείται η ιστοσελίδα σου. Ορίζεις εγγραφές MX, ώστε το email να ξέρει πού να πάει. Προσθέτεις εγγραφές TXT, ώστε οι υπηρεσίες τρίτων να επαληθεύσουν ότι το domain σου ανήκει.
Άλλαξε οποιαδήποτε από αυτές τις εγγραφές και η επισκεψιμότητα μετακινείται. Κατεύθυνε την εγγραφή A σε νέο server και η ιστοσελίδα σου μετακομίζει. Ενημέρωσε τις εγγραφές MX και το email σου αρχίζει να ρέει προς άλλον πάροχο. Το DNS σού δίνει τον έλεγχο σε κάθε σύνδεση που δένεται με το domain σου.
Γι' αυτό έχει σημασία να καταλαβαίνεις και τη διαφορά ανάμεσα σε domain και φιλοξενία. Το domain είναι το όνομα. Η φιλοξενία είναι ο server. Το DNS είναι η γέφυρα που τα συνδέει. Χωρίς τις σωστές ρυθμίσεις DNS, το domain και η φιλοξενία σου δεν μιλούν μεταξύ τους.
Ποια είναι η διαφορά ανάμεσα στο DNS και στον registrar;
Το DNS και ο registrar του domain σου είναι δύο ξεχωριστά πράγματα, ακόμα κι αν συχνά προέρχονται από την ίδια εταιρεία.
Ο registrar είναι η εταιρεία από την οποία αγοράζεις και διαχειρίζεσαι το όνομα domain σου. Χειρίζεται την καταχώριση, την ανανέωση και τα αρχεία ιδιοκτησίας. Το DNS είναι το σύστημα που μεταφράζει το όνομα του domain σου σε διεύθυνση IP, ώστε το διαδίκτυο να δρομολογεί την επισκεψιμότητα στο σωστό μέρος.
Μπορείς να καταχωρίσεις ένα domain σε μία εταιρεία και να χρησιμοποιείς servers DNS σε μια εντελώς διαφορετική. Πολλά brand το κάνουν αυτό. Αγοράζουν το domain σε έναν registrar και κατευθύνουν τους nameservers στο DNS του παρόχου φιλοξενίας τους. Ο registrar διαχειρίζεται την ιδιοκτησία. Ο πάροχος DNS διαχειρίζεται τη δρομολόγηση.
Η σύγχυση προκύπτει επειδή οι περισσότεροι registrar προσφέρουν και ενσωματωμένη διαχείριση DNS. Έτσι, όταν μπαίνεις στον registrar σου και βλέπεις μια σελίδα ρυθμίσεων DNS, νιώθεις ότι είναι το ίδιο πράγμα. Δεν είναι. Το ένα αφορά το ποιος κατέχει το domain. Το άλλο αφορά το πού στέλνει το domain την επισκεψιμότητα.
Όροι DNS που πρέπει να ξέρεις
Το DNS έχει τους δικούς του όρους. Δεν χρειάζεται να τους απομνημονεύσεις όλους, αλλά τα βασικά βοηθούν όταν στήνεις μια ιστοσελίδα ή λύνεις ένα πρόβλημα.
- Nameserver. Ο server που αποθηκεύει τις εγγραφές DNS ενός domain. Όταν κάποιος ρωτά «πού δείχνει αυτό το domain;», ο nameserver έχει την απάντηση.
- Resolver. Ο server που λαμβάνει το ερώτημα DNS και διατρέχει την αλυσίδα των nameservers για να βρει τη διεύθυνση IP. Έναν τον τρέχει ο πάροχος internet σου και έναν τρέχουν και οι δημόσιες υπηρεσίες DNS.
- Εγγραφή A. Η εγγραφή DNS που αντιστοιχίζει ένα όνομα domain σε διεύθυνση IPv4 (όπως 93.184.216.34). Είναι η εγγραφή που συνδέει το domain σου με τον server όπου βρίσκεται η ιστοσελίδα σου.
- Εγγραφή CNAME. Μια εγγραφή που δείχνει ένα όνομα domain σε ένα άλλο όνομα domain. Χρησιμοποιείται συχνά για υποτομείς, ώστε το www.yourdomain.com να δείχνει στο ίδιο μέρος με το yourdomain.com.
- Εγγραφή MX. Η εγγραφή που λέει στο διαδίκτυο ποιος server χειρίζεται το email του domain σου. Χωρίς σωστή εγγραφή MX, το email προς το domain σου δεν θα παραδίδεται.
- TTL (time to live). Μια τιμή σε κάθε εγγραφή DNS που ελέγχει για πόση ώρα την κρατούν στη cache οι άλλοι servers πριν ελέγξουν για ενημέρωση. Μικρότερα TTL σημαίνουν πιο γρήγορες ενημερώσεις, αλλά πιο συχνές αναζητήσεις.
Το επόμενο κεφάλαιο αυτής της σειράς καλύπτει αναλυτικά τους τύπους εγγραφών DNS, μαζί με το πότε να χρησιμοποιείς καθέναν και πώς να τον ρυθμίζεις σωστά.
Το WEMASY και το DNS
Μπορείς να συνδέσεις το δικό σου domain με ένα πακέτο επί πληρωμή του WEMASY.
Δες τι περιλαμβάνει κάθε πακέτο στο WEMASY pricing.
Τι ακολουθεί
Αυτό το άρθρο κάλυψε τι είναι το DNS, πώς μια αναζήτηση DNS ταξιδεύει στο διαδίκτυο και γιατί οι ρυθμίσεις DNS έχουν σημασία για κάθε domain. Το επόμενο κεφάλαιο εμβαθύνει ειδικά στους servers DNS, εξηγώντας τους διαφορετικούς τύπους servers που συμμετέχουν, πώς οργανώνονται και ποιον ρόλο παίζει ο καθένας για να λειτουργεί το διαδίκτυο.
Συχνές ερωτήσεις για το DNS
Μπορείς να χρησιμοποιήσεις DNS χωρίς να έχεις domain;
Όχι. Το DNS δουλεύει μόνο με καταχωρισμένα ονόματα domain. Ολόκληρο το σύστημα είναι φτιαγμένο για να μεταφράζει ονόματα domain σε διευθύνσεις IP. Αν δεν έχεις domain, δεν υπάρχει τίποτα για να λύσει το DNS. Θα έπρεπε να μπαίνεις στους servers απευθείας με τη διεύθυνση IP τους, όπως δούλευε το διαδίκτυο πριν δημιουργηθεί το DNS. Ο Δημιουργός ιστοσελίδων του WEMASY σου επιτρέπει να φτιάξεις τις δικές σου σελίδες στην ιστοσελίδα σου.
Είναι το DNS το ίδιο σε κάθε χώρα;
Το ίδιο το σύστημα DNS είναι παγκόσμιο. Τα 13 σύνολα root nameservers εξυπηρετούν ολόκληρο το διαδίκτυο. Όμως οι απαντήσεις DNS μπορεί να διαφέρουν ανάλογα με την τοποθεσία. Ορισμένες μεγάλες ιστοσελίδες χρησιμοποιούν μια τεχνική που λέγεται GeoDNS και επιστρέφει διαφορετικές διευθύνσεις IP ανάλογα με το από πού έρχεται το αίτημα. Έτσι οι επισκέπτες δρομολογούνται στον πλησιέστερο server για πιο γρήγορη φόρτωση. Το σύστημα είναι το ίδιο παντού, αλλά οι απαντήσεις που δίνει μπορεί να διαφέρουν ανάλογα με τη γεωγραφία.
Επηρεάζει η αλλαγή παρόχου DNS την κατάταξή σου στις μηχανές αναζήτησης;
Η αλλαγή παρόχου DNS δεν επηρεάζει άμεσα την κατάταξή σου. Οι μηχανές αναζήτησης κατατάσσουν τις σελίδες με βάση το περιεχόμενο, τους συνδέσμους και την εμπειρία χρήστη. Όμως, αν η αλλαγή DNS προκαλέσει διακοπή λειτουργίας ή επιβραδύνει την ιστοσελίδα σου κατά τη διάδοση, αυτή η προσωρινή διαταραχή μπορεί να επηρεάσει τον τρόπο που οι μηχανές αναζήτησης σαρώνουν και ευρετηριάζουν τις σελίδες σου. Μια καθαρή μετάβαση DNS χωρίς διακοπή δεν πρέπει να έχει καμία επίδραση στην κατάταξη.
Πώς καταλαβαίνεις αν ένα πρόβλημα DNS προκαλεί την πτώση της ιστοσελίδας σου;
Ο πιο γρήγορος τρόπος είναι να κάνεις αναζήτηση DNS με ένα δωρεάν διαδικτυακό εργαλείο. Βάλε το domain σου και δες αν επιστρέφει διεύθυνση IP. Αν το εργαλείο δεν δείχνει αποτελέσματα ή δείχνει σφάλμα, το πρόβλημα είναι στις εγγραφές DNS σου. Αν επιστρέφει τη σωστή διεύθυνση IP αλλά η ιστοσελίδα σου εξακολουθεί να μη φορτώνει, το πρόβλημα είναι στον web server σου και όχι στο DNS. Αν ξεχωρίσεις τα προβλήματα DNS από τα προβλήματα φιλοξενίας, κερδίζεις χρόνο στην αντιμετώπιση.
Μπορεί να παραβιαστεί το DNS;
Ναι. Οι επιθέσεις στο DNS είναι υπαρκτός κίνδυνος. Οι πιο συνηθισμένοι τύποι είναι το DNS spoofing (όπου ένας κακόβουλος βάζει ψεύτικες εγγραφές, ώστε το domain σου να δείχνει σε κακόβουλο server) και το DNS hijacking (όπου κάποιος αποκτά πρόσβαση στις ρυθμίσεις DNS σου και τις αλλάζει). Η προστασία του DNS ξεκινά με έναν αξιόπιστο πάροχο DNS, με ενεργοποίηση της ταυτοποίησης δύο παραγόντων στον λογαριασμό registrar και με παρακολούθηση των εγγραφών DNS για απρόσμενες αλλαγές.