Σύστημα Ονοματοδοσίας Διαδικτύου

Το Σύστημα Ονοματοδοσίας Διαδικτύου ή Σύστημα Ονομάτων Τομέων, Χώρων ή Περιοχών (Αγγλ. Domain Name System (DNS)) είναι ένα ιεραρχικό σύστημα ονοματοδοσίας για δίκτυα υπολογιστών, που χρησιμοποιούν το πρωτόκολλο IP. Το σύστημα αυτό μπορεί και αντιστοιχίζει τα ονόματα των υπολογιστών υπηρεσίας σε αριθμητικές διευθύνσεις (Αγγλ. IP). 
Στην Ελλάδα η ΕΕΤΤ ρυθμίζει τα θέματα ονομάτων χώρου στο Διαδίκτυο με κατάληξη ".gr".

Λογική

Ο χώρος ονομάτων τομέων (Αγγλ. Domain Name Space ) του συστήματος είναι δομημένος ιεραρχικά κατά δενδρική δομή, με τα ονόματα να αντανακλούν τη δομή αυτή. Ο χώρος ονομάτων ενός ιδιωτικού δικτύου μπορεί να διαφέρει από τον χώρο ονομάτων του Διαδικτύου. Η αντιστοίχιση ονομάτων με αριθμητικές διευθύνσεις είναι φυσική αναγκαιότητα καθώς οι άνθρωποι θυμούνται ευκολότερα ονόματα παρά αριθμούς και συνδέουν ευκολώτερα έννοιες και σημασίες με τα πρώτα παρά με τους δεύτερους.

Δομή

Οι χώροι ή περιοχές ή τομείς (Αγγλ. domains) χωρίζονται σε επίπεδα και κάθε επίπεδο συχνά περιέχει κατώτερα επίπεδα. Για παράδειγμα ένας τομέας πρώτου επιπέδου μπορεί να περιέχει ιεραρχικά τομείς δεύτερου επιπέδου κλπ. Η αλλαγή επιπέδου των ονομάτων χώρου είναι πολλές φορές ισοδύναμη με αλλαγή Ζώνης (Αγγλ. DNS zone).  Χρησιμοποιώντας την ορολογία που χρησιμοποιείται στην δενδρική δομή μία ζώνη αντιστοιχεί σε μία διακλάδωση (κόμβο) και ένα όνομα σε μία απόληξη. Όλες οι ζώνες είναι και ονόματα χώρου αλλά το αντίστροφο δεν ισχύει πάντα. Στην πράξη οι ζώνες είναι τα φυσικά αρχεία που βρίσκονται σε εξυπηρετητές του συστήματος ονοματοδοσίας και περιέχουν τις αντιστοιχίσεις ονομάτων και διευθύνσεων ή άλλων ονομάτων ως εγγραφές DNS (Αγγλ. DNS records ή resource records ). Δηλαδή οι ζώνες είναι απλές βάσεις δεδομένων και οι εγγραφές είναι τα δεδομένα.  
Πχ. μια ζώνη είναι η ietf.org που περιέχει όλες τις εγγραφές γιά το όνομα χώρου του ietf.org. Για διαχειριστικούς λόγους και για λόγους διαχείρισης πόρων ο διαχειριστής της ζώνης ietf.org δημιούργησε τη ζώνη tools.ietf.org και έδωσε το δικαίωμα της διαχειρισής των εγγραφών στον χώρο ονομάτων tools.ietf.org σε κάποιον άλλο διαχειριστή συστημάτων. Άλλη μια ζώνη είναι η ζώνη com. Ο διαχειριστής της ζώνης com δημιούργησε τη ζώνη example.com και έδωσε τον έλεγχο της στον IANA. Τώρα ο IANA ελέγχει όλες τις εγγραφές για τον χώρο ονομάτων example.com. 
Οι ζώνες συνήθως σημαίνουν την αλλαγή διαχείρισης μιας περιοχής/χώρου και περιέχουν εγγραφές (με κατεύθυνση από το όνομα) μόνο με το όνομα χώρου ή τομείς του. Όταν κάποιος κατοχυρώνει ένα όνομα χώρου στο σύστημα ονοματοδοσίας στη ουσία παίρνει τον έλεγχο της ζώνης αυτού του ονόματος χώρου.
Το Σύστημα Ονοματοδοσίας Διαδικτύου βασίζεται σε μια διανεμημένη βάση δεδομένων η οποία βρίσκεται στους εξυπηρετητές του συστήματος και αποτελείται από ζώνες οργανωμένες σε μια δενδρική δομή. Οι εξυπηρετητές χωρίζονται στους αρχικούς (Αγγλ. root), τους εξουσιοδοτημένους (Αγγλ. authoritative) και τους αποθηκευτικούς (Αγγλ. caching). Οι εξουσιοδοτημένοι εξυπηρετητές χωρίζονται σε πρωτεύοντες και εναλλακτικούς (Αγγλ. masters and slaves).
Συνήθως κάποιος από τους πρωτεύοντες εξουσιοδοτημένους εξυπηρετητές ενός ονόματος χώρου είναι ο πρωταρχικός. Σε αυτόν γίνονται συνήθως οι αλλαγές.
Πελάτες των υπηρεσιών που παρέχουν οι εξυπηρετητές είναι οι Επιλυτές (Αγγλ. DNS resolvers). Οι Επιλυτές είναι προγράμματα που χρησιμοποιείται από έναν χρήστη ή κάποιo πρόγραμμα που ζητά τις υπηρεσίες του συστήματος ονοματοδοσίας. Οι Επιλυτές διαβάζουν τα ονόματα του συστήματος ονοματοδοσίας από δεξιά προς τα αριστερά. Κάθε τελεία δείχνει την αρχή ενός υποσυνόλου και το σύνολο που περιλαμβάνει όλα τα σύνολα είναι η πιο δεξιά τελεία που ονομάζεται ρίζα και συνήθως παραλείπεται. 
Π.χ. όταν γράφουμε το όνομα "DNS.example.wikipedia.www.el.ipduh.com" εννοούμε "DNS.example.wikipedia.www.el.ipduh.com." . Η τελική τελεία είναι το σύνολο που περιλαμβάνει όλο το σύστημα και το υποσύνολο που ονομάζεται "com.". Το σύνολο "com." περιλαμβάνει το σύνολο "ipduh.com.", το σύνολο "ipduh.com." περιλαμβάνει το "el.ipduh.com." Το σύνολο "el.ipduh.com." περιλαμβάνει το σύνολο "www.el.ipduh.com." κτλ.
Οι άνθρωποι διαβάζουν τα ονόματα του συστήματος ονοματοδοσίας από αριστερά προς τα δεξιά και πάντα παραλείπουν την τελευταία τελεία. Στα ονόματα επιτρέπεται η χρήση αλφαριθμητικών στοιχείων, παυλών και τελειών. Συνεχόμενες παύλες και συνεχόμενες τελείες δεν επιτρέπονται. Στα ονόματα χώρου τα κεφαλαία γράμματα είναι ισοδύναμα με τα μικρά γράμματα. Π.χ το example.net και exAmpLE.nET είναι το ίδιο όνομα.
Η σχέση μεταξύ ονομάτων και αριθμητικών διευθύνσεων (Αγγλ. IP) δεν είναι μία προς μία. Δηλαδή σε ένα όνομα μπορεί να αντιστοιχούν πολλές αριθμητικές διευθύνσεις και σε μια διεύθυνση πολλά ονόματα.

Σημασία του συστήματος ονοματοδοσίας

Το σύστημα ονοματοδοσίας ήταν καταρχάς φυσική απόρροια του ότι για τους άνθρωπους τα ονόματα σημαίνουν περισσότερα από τις αριθμητικές διευθύνσεις αλλά στην συνέχεια το σύστημα απέκτησε και άλλες χρήσεις εξίσου σημαντικές.
Το σύστημα ονοματοδοσίας επιτρέπει την ανεύρεση ενός εξυπηρετητή ή μιας υπηρεσίας σε έναν εξυπηρετητή χρησιμοποιώντας ένα όνομα.
Ένας εξυπηρετητής μπορεί να προσφέρει ταυτόχρονα περισσότερες από μια υπηρεσίες, σύμφωνα με διάφορα πρωτόκολλα, όπως το HTTP, το FTP, το POP, το IMAP και το SMTP, δίνοντας τη δυνατότητα στο χρήστη να συνδεθεί σε μια ιστοσελίδα (HTTP), σε μια αποθήκη αρχείων (FTP), ή να λάβει μηνύματα ηλ/κού ταχυδρομείου (Αγγλ. email) (POP ή IMAP).
Για ένα χρήστη είναι ευκολότερο να θυμάται το όνομα της ιστοσελίδας www.google.gr  παρά το χ.ψ.ω.ζ:80 (ο συνδυασμός αριθμητικής διεύθυνσης και θύρας TCP στην οποία βρίσκεται ο εξυπηρετητής HTTP του www.google.gr).
Επίσης σύστημα ονοματοδοσίας χρησιμοποιείται για να αντιστοιχίσει αριθμητικές διευθύνσεις με ονόματα. Έτσι ο διαχειριστής ενός δικτύου μπορεί να χρησιμοποιήσει ονόματα για να επικοινωνήσει ή απλώς να θυμάται ονόματα μηχανημάτων, τοποθεσίες, ονόματα χώρου, και ότι άλλο σκεφτεί. Τα ονόματα των αριθμητικών διευθύνσεων λειτουργούν και κατά κάποιον τρόπο σαν εγγυήσεις καθώς μόνο οι διαχειριστές των δικτύων - κάτοχοι των διευθύνσεων μπορούν να τα αλλάξουν. Στην λειτουργία του ηλεκτρονικού ταχυδρομείου το όνομα της αριθμητικής διεύθυνσης του εξυπηρετητή της υπηρεσίας ηλεκτρονικού ταχυδρομείου (Αγγλ. Mail Server) θεωρείται απόδειξη του ότι είναι αυτός που παρουσιάζεται πως είναι.
Το σύστημα ονοματοδοσίας δίνει, τέλος, τη δυνατότητα αντιστοίχισης μεταξύ ονομάτων, καθώς και τη δυνατότητα αντιστοίχισης ενός ονόματος σε πολλαπλές αριθμητικές διευθύνσεις (round robin DNS και IP sorting), πράγμα που βοηθά στη κατανομή του φόρτου μιας δικτυακής υπηρεσίας σε περισσότερους του ενός εξυπηρετητές ή την κατεύθυνση των πελατών δικτυακών υπηρεσιών σε γεωγραφικά κοντινότερους εξυπηρετητές.
Στο σύστημα ονοματοδοσίας είναι δυνατή η αντιστοίχιση άπειρων ονομάτων σε μία αριθμητική διεύθυνση ή μια ομάδα αριθμητικών διευθύνσεων. Αυτό διευκολύνει την διαχείριση των πόρων των εξυπηρετητών δικτυακών υπηρεσιών και βοηθά στην οικονομία αριθμητικών διευθύνσεων.