Editors Picks

Κυριακή 29 Νοεμβρίου 2009

10 αλήθειες για τις Μηχανές Αναζήτησης και το SEO

1. Οι καλοί επαγγελματίες του SEO έχουν πάντα τον τρόπο να ανεβάσουν μια ιστοσελίδα στην πρώτη θέση στο Google.
Οι καλοί επαγγελματίες του SEO θα κάνουν πάντα ότι καλύτερο μπορούν για να βοηθήσουν την ιστοσελίδα του πελάτη τους να κερδίσει καλύτερη θέση στις μηχανές αναζήτησης.
Ωστόσο, ούτε οι μηχανές αναζήτησης τους ανήκουν, ούτε έχουν κρυφές συμφωνίες μαζί τους, οπότε σε καμιά περίπτωση δεν μπορούν να εγγυηθούν την πρώτη θέση στο Google ή σε άλλη μηχανή αναζήτησης.
Σημαντικό είναι σε κάθε βελτίωση μιας ιστοσελίδας για τις μηχανές αναζήτησης να χρησιμοποιούνται πάντα τεχνικές που δεν προσπαθούν να ξεγελάσουν τις μηχανές αναζήτησης, αλλά ακολουθούν τους κανόνες του ηθικού SEO (white hat seo), και πάνω απ' όλα κάνουν την ιστοσελίδα σας ελκυστική στους επισκέπτες της.

2. Μπορείς να αγοράσεις την πρώτη θέση στο Google και τις άλλες μηχανές αναζήτησης.
To Google έγινε η πιο δημοφιλής μηχανή αναζήτησης γιατί από την αρχή έδινε σχετικά και αξιόπιστα αποτελέσματα σε κάθε αναζήτηση. Αν το Google άρχιζε να πουλάει τις πρώτες θέσεις στα αποτελέσματα του, αυτό θα γινόταν γρήγορα αντιληπτό και θα έχανε την αξιοπιστία του και την δημοτικότητα του.
Ωστόσο υπάρχει τρόπος να εμφανίσετε την ιστοσελίδα σας στην κορυφή των απατελεσμάτων του Google. Ο τρόπος αυτός είναι να διαφημιστείτε στο Google πληρώνοντας την μεγαλύτερη τιμή σε σχέση με τους υπόλοιπους διαφημιζόμενους. Στην περίπτωση αυτή η διαφήμιση σας (πληρωμένη καταχώρηση) θα φαίνεται με ανοικτό γαλάζιο ή κίτρινο φόντο πριν από τα αποτελέσματα της αναζήτησης (οργανικά αποτελέσματα).




3. Μια εταιρία SEO θα δηλώσει την ιστοσελίδα μου σε 1500 μηχανές αναζήτησης για να βγει πρώτη στο Google.
Εσείς πόσες μηχανές αναζήτησης χρησιμοποιείτε; Δύο, τρείς ή περισσότερες;
Στην Ευρώπη το Google έχει το 90% στις καθημερινές αναζητήσεις στο Ιντερνετ, ενώ το υπόλοιπο 10% το μοιράζονται το Yahoo και το MSN. Στην Αμερική το Google έχει το 70% περίπου, το υπόλοιπο 30% μοιράζονται το Yahoo, το MSN, η AOL και άλλες μικρότερες μηχανές αναζήτησης.
Στο Ιντερνετ υπάρχουν χιλιάδες μικρές μηχανές αναζήτησης αλλά είναι αμφίβολο αν όλες μαζί θα σας φέρουν 10 επισκέπτες το χρόνο, οπότε μη χάνετε το χρόνο σας μαζί τους.

4. Ενα έξυπνο κόλπο στο SEO είναι να βάλω 100 φορές μια λέξη-κλειδί (keyword) με αόρατα γράμματα.
Αυτό ήταν ένα από τα πρώτα κόλπα που εμφανίστηκαν στο SEO και οι μηχανές αναζήτησης το ανακάλυψαν γρήγορα. Εδώ και πολλά χρόνια θεωρείται λάθος τακτική βελτίωσης μιας ιστοσελίδας για τις μηχανές αναζήτησης, και χρησιμοποιείται μόνο από τους άσχετους.
Οι μηχανές αναζήτησης σήμερα τιμωρούν κάθε ιστοσελίδα που εφαρμόζει ανήθικες τακτικές βελτίωσης, το "black hat SEO" όπως είναι γνωστό διεθνώς. Η τιμωρία μπορεί να είναι χαμηλότερη θέση στα αποτελέσματα ή διαγραφή από τον κατάλογο (index) της μηχανής αναζήτησης.

5. Αρκεί να αλλάξει κάποιος ειδικός του SEO τα metatags (keywords + description) στην ιστοσελίδα μου για να ανέβω στις μηχανές αναζήτησης.
Σε όσους ασχολούνται με το SEO (Βελτίωση για τις μηχανές αναζήτησης) είναι γνωστό εδώ και χρόνια ότι πολλές μηχανές αναζήτησης αγνοούν ή δίνουν ελάχιστη σημασία στα meta keywords, επειδή στο παρελθόν είχε γίνει κακή χρήση από αυτούς που φτιάχνουν ιστοσελίδες ή τις βελτιώνουν για τις μηχανές αναζήτησης.
Συνηθισμένη πρακτική είναι να γράφονται δεκάδες ή εκατοντάδες λέξεις - κλειδιά (keywords), κάτι που σήμερα ξέρουμε ότι δεν βοηθάει πουθενά. Αυτό που συνιστάμε είναι να γράφετε μόνο ότι έχει πραγματικά σχέση με το περιεχόμενο κάθε σελίδας.
Η βελτίωση για τις μηχανές αναζήτησης (SEO) θα πρέπει πάντα να βοηθά τις μηχανές αναζήτησης και όχι να προσπαθήσει να τις παραπλανήσει. Μην ξεχνάτε ότι οι μηχανές αναζήτησης γίνονται διαρκώς εξυπνότερες και αυστηρότερες.

6. Η ιστοσελίδα μου βγαίνει πρώτη στις μηχανές αναζήτησης αν κάποιος ψάξει το όνομα της
Συγχαρητήρια! Καταφέρατε να σας βρίσκουν όσοι ήδη σας γνωρίζουν. Τι γίνεται όμως με το υπόλοιπο 99,99% του παγκόσμιου ιντερνετ που σας αγνοεί τελείως και ίσως δεν σας βρει ποτέ;
Αν η εταιρία σας έχει ήδη τόσους πελάτες που σας είναι αρκετό να σας βρίσκουν μόνο αυτοί και δεν χρειάζεστε καινούριους, τότε μπορείτε να κοιμάστε ήσυχοι.
Αν όμως ανήκετε στις εταιρίες που επιθυμούν νέους πελάτες, τότε μάλλον θα πρέπει να κάνετε κάτι ώστε την ιστοσελίδα σας να τη βρίσκουν όσοι ψάχνουν για το είδος των υπηρεσιών ή των προϊόντων σας και όχι για τον τίτλο σας.

7. Μετά από πολύ κόπο και πολλά έξοδα, η ιστοσελίδα μου βγαίνει πρώτη στο Google για τη φράση «Αθήνα διαμαντόπετρα στης γης το δαχτυλίδι». Επιτέλους τα καταφέραμε και αξίζουν συγχαρητήρια στον ειδικό που μου έκανε το SEO.
Εχετε αναρωτηθεί αν αυτά που εσείς θεωρείτε πολύτιμες φράσεις ή λέξεις - κλειδιά (keywords), έχουν πραγματικά κάποια αξία;
Μια από τις πρώτες κινήσεις που πρέπει να γίνουν όταν αποφασίσετε να φτιάξετε την ιστοσελίδα σας, είναι να εντοπίσετε τις λέξεις ή φράσεις - κλειδιά που χρησιμοποιούνται συνήθως στις μηχανές αναζήτησης και έχουν σχέση με την επιχείρηση σας. Πρέπει δηλαδή να χρησιμοποιήσετε τα κατάλληλα εργαλεία για να ανακαλύψετε πως ψάχνει ο κόσμος μια επιχείρηση όπως τη δική σας.
Οσοι γνωρίζουν πραγματικά από SEO, μπορούν να σας διαβεβαιώσουν ότι αν τα κείμενα της ιστοσελίδας σας δεν περιλαμβάνουν τις "σωστές" φράσεις ή λέξεις - κλειδιά, η ιστοσελίδα σας είναι καταδικασμένη στην αφάνεια. Μαζί μ΄αυτή και η επιχείρηση σας...

8. Βρήκα ειδικό για το SEO που μου υποσχέθηκε ότι θα είμαι πρώτος στις μηχανές αναζήτησης μέσα σε ένα μήνα.
Πείτε στον ειδικό αυτό με τις τόσο δελεαστικές υποσχέσεις για την πρώτη θέση στις μηχανές αναζήτησης, ότι θα τον πληρώσετε σε ένα μήνα.
Τότε δηλαδή που θα φανεί άν οι υποσχέσεις του ήταν αληθινές...

9. Ενας ειδικός του SEO μου ζήτησε ΧΧΧ€ για να με βγάλει πρώτο στις μηχανές αναζήτησης, ενώ κάποιοι άλλοι μου ζητούσαν λεφτά χωρίς να μου δίνουν καμιά υπόσχεση για τα αποτελέσματα. Εννοείται ότι επέλεξα τον πρώτο, γιατί η πρόταση του ήταν η καλύτερη.
Αραγε ήταν καλύτερη η πρώτη πρόταση; Πόσο σίγουροι είστε γι αυτό; Μήπως οι άλλοι, οι δήθεν "κακοί" επαγγελματίες είναι τελικά οι καλοί επαγγλεματίες;

Αυτοί που ξέρουν πραγματικά από SEO και δεν θέλουν να σας πάρουν τα χρήματα σας άδικα, θα σας βοηθήσουν να διαλέξετε ρεαλιστικούς στόχους, θα σας εξηγήσουν ότι ο ανταγωνισμός για μια καλή θέση στις μηχανές αναζήτησης αυξάνει διαρκώς, ότι οι μηχανές αναζήτησης αλλάζουν τους τρόπους αξιολόγησης των ιστοσελίδων συχνά, και ότι η άνοδος στο Google είναι μια μεγάλη πρόκληση, μια δύσκολη εξίσωση με πολλές παραμέτρους, γνωστές και άγνωστες.
Η αλήθεια είναι ότι στο SEO και στις μηχανές αναζήτησης δεν μπορούν να δοθούν εγγυήσεις για την πρώτη θέση στο Google, τη δεύτερη ή τη δέκατη. Η μόνη λογική εγγύηση είναι ότι θα υπάρξει βελτίωση στη σειρά εμφάνισης μιας ιστοσελίδας, θα αυξηθούν οι επισκέπτες, θα βοηθηθούν οι πωλήσεις.

10. Αν βγω πρώτος στο Google και στις άλλες μηχανές αναζήτησης, τότε έχω εξασφαλίσει πολλούς νέους πελάτες.
Αν βγείτε πρώτος στις μηχανές αναζήτησης, τότε θα έχετε πολλούς επισκέπτες στην ιστοσελίδας σας.
Κάθε επισκέπτης είναι υποψήφιος πελάτης, αλλά δεν είναι σίγουρος πελάτης. Για να μετατραπεί ο επισκέπτης σε πελάτη, θα πρέπει να έχετε μια καλοσχεδιασμένη και σύγχρονη ιστοσελίδα, να προσφέρετε τα προϊόντα και τις υπηρεσίες σας σε ανταγωνσιτικές τιμές, να απευθύνεστε στον επισκέπτη με πειστική γλώσσα, να απαντήσετε γρήγορα σε ένα email που θα σας στείλει.
Συζητήστε με γνωστούς, με φίλους, με τους πελάτες σας. Ρωτήστε τη γνώμη τους για την ευκολία χρήσης της ιστοσελίδας σας, για τις τιμές σας, ζητήστε να σας καταδείξουν αυτά που εκείνοι θεωρούν ελαττώματα.
Πριν επιδιώξετε την πρώτη θέση στις μηχανές αναζήτησης, εκτιμήστε τις δυνατότητες της επιχείρησης σας να ανταποκριθεί στις αυξημένες υποχρεώσεις που θα προκύψουν από την μεγάλη επισκεψιμότητα και προετοιμαστείτε έγκαιρα.

Πηγή : http://www.artkreta.gr/seo-top10-tips-GR.html

Γιατί τα αποτελέσματα της Google είναι διαφορετικά;


Τα αποτελέσματα μίας αναζήτησης στην Google, μπορεί να είναι διαφορετικά ανάμεσα στους χρήστες και υπάρχουν διάφοροι λόγοι γι αυτό. Ανάμεσά τους, είναι ο web browser, η γεωγραφική θέση, το ιστορικό του data center που μας εξυπηρετεί κ.λ.π. Aς τα δούμε με λεπτομέρειες:

Data centers και γεωγραφική θέση
Η Google λειτουργεί διάφορα data centers που εξυπηρετούν τις αναζητήσεις μας. Ο βασικός λόγος γι αυτό είναι η ίση κατανομή του φόρτου εργασίας και η καλύτερη διαχείριση των εγκαταστάσεων. Τα Data centers ενημερώνονται με τους νέους αλγόριθμους αναζήτησης, ενώ άλλα data centers έχουν ήδη ενημερωθεί.
Η γεωγραφική θέση του data center μπορεί επίσης να παίξει ρόλο στα αποτελέσματα που θα παρουσιαστούν. Είναι επίσης σημαντικό να σημειώσουμε ότι η Google προσπαθεί να δώσει αποτελέσματα που είναι συγκεκριμένα για συγκεκριμένες χώρες (country specific results).

Ιστορικό
Οι χρήστες που έχουν κάνει login και χρησιμοποιούν τη μηχανή αναζήτησης της Google θα δουν διαφορετικά αποτελέσματα όταν κάνουν log-out. Αυτή η δυνατότητα προσφέρεται επειδή η Google στην ουσία “παρακολουθεί” τις αναζητήσεις των εγγεγραμμένων χρηστών, με σκοπό(!) να δώσει καλύτερα και πιο προσωποποιημένα αποτελέσματα. Αυτό μπορεί να σημαίνει εντελώς διαφορετικά αποτελέσματα.

Πρόσφατες αναζητήσεις
Η Google μπορεί να αλλάξει τα αποτελέσματα μιας αναζήτησης ενός χρήστη, σε περίοδο 30 λεπτών. Η λειτουργία αυτή ονομάζεται “πρόσφατες αναζητήσεις”. Αυτό που κάνει είναι ότι ψάχνει σε ένα αποθηκευμένο cookie, που υπάρχει για περίπου 30 λεπτά και δίνει πρόσβαση στην Google στις πρόσφατες αναζητήσεις μας, ώστε να προσαρμόσει ανάλογα τα αποτελέσματα.

Όλα αυτά φαίνονται ότι έχουν σαν στόχο τον χρήστη για τα καλύτερα δυνατά αποτελέσματα. Εγείρονται φυσικά, θέματα προσωπικών δεδομένων και privacy.
Στην ουσία όμως, κάνουν πολύ πιο δύσκολη τη δική μας ζωή, των προγραμματιστών και των SEO Specialists… :(

Πηγή: http://dev.digitalnews.gr

Κυριακή 8 Νοεμβρίου 2009

Μυστικά για υψηλή βαθμολόγηση από τις μηχανές αναζήτησης

Έχουμε πει και έχουμε γράψει αρκετές φορές ότι το web δεν είναι τηλεόραση.
Στο web ψάχνεις και βρίσκεις (αν υπάρχουν)
Πως ψάχνεις; Στις μηχανές αναζήτησης
Πως βρίσκεις; Με λέξεις ή φράσεις κλειδιά.

Κανόνες ή μυστικά για την καταχώρηση του site σας στις μηχανές αναζήτησης.

@ Χρησιμοποιήστε μόνο πραγματικά meta tags

@ Τοποθετήστε τις πραγματικές λέξεις κλειδιά με σειρά προτεραιότητας.
Οι λέξεις κλειδιά πρέπει να έχουν σχέση με την επιχείρηση ή την υπηρεσία.
Το μυστικό είναι να δεις τα πρώτα 10 sites που εμφανίζονται στις μηχανές με λέξεις κλειδιά που ταιριάζουν στο site σας.
Μελετήστε τους τίτλους, τα meta tags, λέξεις κλειδιά, alt image tags πριν γράψετε τα δικά σας.

@ Κρατήστε τα meta tags στους 1000 χαρακτήρες σε σύνολο και όχι παραπάνω, οι περισσότερες μηχανές θα πετάξουν τα παραπάνω και θα σας βγάλουν κίτρινη κάρτα.

@ Μην χρησιμοποιήσετε λέξεις όπως ' το καλύτερο, το μοναδικό, κλπ' για να περιγράψεις το site σου.

@ Πάντα χρησιμοποιήστε λέξεις κλειδιά στους τίτλους των σελίδων σας

@ Μη χρησιμοποιείτε frames όταν σχεδιάζετε το site σας.

@ Καταχωρήστε το site σας κάθε 2 μήνες.

Και τώρα τι δεν πρέπει να κάνετε.

@ Μην χρησιμοποιείτε λέξεις κλειδιά που δεν έχουν καμία σχέση με το site σας.

@ Μην προσπαθείτε να ξεγελάσετε τις μηχανές δίνοντας μια τεράστια περιγραφή του site σας.

@ Ποτέ μην χρησιμοποιείτε την ίδια λέξη κλειδί περισσότερο από 3 φορές.

Ξοδεύουμε αρκετό χρόνο προσπαθώντας να τοποθετήσουμε και να αναλύσουμε τα meta tags σε κάθε site που δημιουργούμε.
Αν πραγματικά θέλετε το site σας στις πρώτες θέσεις αποτελεσμάτων πρέπει να μελετήσετε και να καταλάβετε τους κανόνες των μηχανών.
Το Yahoo για παράδειγμα έχει πολύ ιδιότροπους κανόνες. Αν το site είναι «σε κατασκευή» μην το καταχωρήσετε, δεν θα το δεχτούν, δεν καταχωρούν σελίδες που δεν είναι έτοιμες.
Αν έχετε καταχωρίσει το site σας στο Yahoo τότε υπομονή. Χρειάζεται τουλάχιστο 6 εβδομάδες για να δει κάποιος την σελίδα σας.
Αν λοιπόν η σελίδα σας είναι σωστά σχεδιασμένη και με σοβαρό περιεχόμενο προφανώς θα καταχωρηθεί στην κατηγορία που διαλέξατε. Μπορεί όμως να χρειαστούν και 6 μήνες για να δει κάποιος από το Yahoo το site σας.
Μην προσπαθείτε λοιπόν συνέχεια να καταχωρήσετε το site σας στο Yahoo, με 199$ εγγυούνται ότι θα δουν το site σας σε 1 εβδομάδα αλλά δεν εγγυούνται ότι θα το καταχωρήσουν.

Κάντε μία αναζήτηση για το site σας κάθε 3 βδομάδες, δείτε τα αποτελέσματα και αν είναι απαραίτητο αλλάξτε τα meta tags και πάλι από την αρχή.

Το Domain Name System

Σε αυτό το κείμενο περιγράφονται οι βασικές αρχές λειτουργίας του DNS (Domain Name System), καθώς και η βασική παραμετροποίηση του δημοφιλέστερου DNS server, του BIND.

Εισαγωγή

Το Internet είναι βασισμένο στο IP πρωτόκολλο, το οποίο διασφαλίζει την επικοινωνία μέσω της μοναδικότητας των μονάδων του (hosts). Κάθε host χαρακτηρίζεται από μία διεύθυνση αποτελούμενη από τέσσερις ομάδες ψηφίων (octets), κάθε μία από τις οποίες φέρει μέγιστη τιμή 2^8 (255). Κάθε μονάδα για να προσπελάσει και να προσπελαστεί από μία άλλη και να διατελέσει τις δραστηριότητες που καθορίζονται από τα υψηλότερου επιπέδου πρωτόκολλα, χρησιμοποιεί ως αναγνωριστικό την IP address. Πρακτικά, αυτό σημαίνει για παράδειγμα ότι όταν εμείς θέλουμε να αντλήσουμε δεδομένα από το αγαπημένο μας website, ο υπολογιστής (ή ο router) μας, όντας μία μονάδα του internet, επικοινωνεί με τον server εντοπίζοντας τον από την IP address του και στέλνοντας ως αναγνωριστικό τη δική του.

Ωστόσο εάν οι αριθμητικές διευθύνσεις είναι ό,τι καλύτερο χρειάζεται ο υπολογιστής, δεν είναι ότι καλύτερο και για τους ανθρώπους. Για λόγους απομνημόνευσης, κομψότητας και ευκαμψίας (στη διαχείριση) χρειαζόταν ένα naming address scheme που θα περιελάμβανε αλφαβητικούς χαρακτήρες και θα επέτρεπε την αποκεντρωτική διαχείριση. Αυτό μπορούσε να γίνει ευκολότερα, ευφυέστερα και χωρίς αλλαγή στο IP, λειτουργώντας ως μία υπηρεσία υψηλότερου επιπέδου, πάνω από το IP, και έτσι έγινε. Έτσι το 1983 δημιουργήθηκε το DNS από τον Paul Mockapetris, καθώς και η πρώτη υλοποίηση server με το όνομα "Jeeves", που έτρεχε σε TOPS-20 λειτουργικό. Το DNS λοιπόν είναι ένα σύστημα που αναλαμβάνει την αντιστοίχηση IP διεύθυνσης και hostname (η hostname με hostname), προβλέποντας και τις απαιτήσεις για κάτι τέτοιο σε δίκτυα μεγάλου βεληνεκούς στα οποία τα domains και οι διευθύνσεις είναι πολυπληθή και μεταβάλλονται συχνά και οι πόροι μπορούν να φανούν ανεπαρκείς.


Τεχνικά

Το DNS είναι στην ουσία μία διανεμόμενη και αρθρωτή βάση δεδομένων. Αρθρωτή γιατί φιλοξενείται σε πολλούς και διασπαρμένους nodes (ή μονάδες αναφοράς), κανένας από τους οποίους δεν περιέχει ολόκληρη τη βάση, και διανεμόμενη γιατί οι πληροφορίες της μοιράζονται και αντιγράφονται αυτοματοποιημένα από τον ένα node στον άλλον. Η δομή του DNS είναι ιεραρχική και δενδρική, που σημαίνει ότι τα πάντα ξεκινάνε από ένα σημείο, τη ρίζα (το οποίο εκφράζουμε με μία τελεία ".") και κάτω από αυτό εκτείνεται ένα "δένδρο" από καταχωρήσεις κάθε μία από τις οποίες υπάγεται σε κάποια άλλη. Κάθε καταχώρηση ονομάζεται περιλαμβάνοντας όλες τις μητρικές καταχωρήσεις (καταχωρήσεις υψηλότερου επιπέδου) στα δεξιά του ονόματός της (γνωστού και ως hostname), χωρισμένες μεταξύ τους από μία τελεία, που είναι στην ουσία σημείο διακλάδωσης (branching point). Δηλαδή το domain www.microsoftsucks.com, παραπέμπει στην καταχώρηση "www" της καταχώρησης "microsoftsucks", που με τη σειρά του είναι καταχώρηση της "com", που τέλος με τη σειρά της είναι καταχώρηση του ".", της ρίζας. Όπως είναι προφανές, η ρίζα είναι το μοναδικό σημείο το οποίο αν κατέρρεε θα προκαλούσε και την ολική κατάρρευση όλων των διακλαδώσεων. Τη ρίζα του Internet DNS τη διαχειρίζεται η Internic. Η ρίζα, ως σημείο αρχής των πάντων πρέπει να ορίζεται πάντα, όποτε θέλουμε να εκφράσουμε τη πλήρη διαδρομή μίας καταχώρησης, απλά για λόγους ευχρηστίας και επειδή για την περίπτωση των clients πάντα θέλουμε, έχει επικρατήσει οι *resolvers μας να δέχονται από τους clients domains για αντιστοίχηση χωρίς την ρίζα στο τέλος, και να τα ερμηνεύουν ως πλήρους διαδρομής καταχωρήσεις με αρχή τη ρίζα. Εμείς επειδή θα ασχοληθούμε με τον server, θα την ορίζουμε πάντα.

*resolver είναι η εφαρμογή που αναλαμβάνει να επικοινωνήσει με έναν DNS server (να στείλει ένα query), συνήθως για λογαριασμό κάποιας άλλης εφαρμογής και να της παραδώσει την απάντηση. Κάθε λειτουργικό σύστημα με TCP/IP υποστήριξη τυπικά ενσωματώνει ένα resolver στο API του.

Συνεχίζοντας, ξαναγυρίζουμε στο παράδειγμα του δένδρου. Όπως κάθε κλαρί ενός δένδρου περιλαμβάνει φύλα αλλά και άλλα κλαριά, έτσι ένα domain μπορεί να υπάρχει απλά ως καταχώρηση σε κάποιο άλλο domain, ή μπορεί να αποτελεί παράλληλα γονέα και για άλλα domains. Στο DNS, στην πρώτη περίπτωση το ονομάζουμε RR (Resource Record) και στη δεύτερη Zone. Θα εξετάσουμε παρακάτω πως ορίζουμε κάθε ένα στο configuration του BIND, καθώς και ορισμένες επιμέρους κατηγοριοποιήσεις. Για την ώρα προχωράμε με κάποιες ακόμα ιδιότητες της λειτουργίας του DNS.

Για τη λειτουργία του DNS σε εκτενή δίκτυα όπως το Internet, χρειάζεται το σύστημα να δουλεύει αποκεντρωτικά (διαμοιρασμένος φόρτος εργασίας, μεγαλύτερη αξιοπιστία), αλλά να παραμείνει και έγκυρο. Αυτό κατορθώνεται με τον ορισμό των DNS Servers ως "Slave" (ή Secondary) και "Master" (ή Primary).

Master/Primary Servers

Ένας Master DNS server είναι αρμόδιος (authorative) τουλάχιστον μίας ζώνης, δηλαδή περιλαμβάνει τις ακριβείς πληροφορίες (όλα τα resource records) αυτής της ζώνης. Είναι ακόμα ο server που θα αναλαμβάνει την ανάθεση αρμοδιότητας (delegation of authority) για τα domains ενός βαθμού υψηλότερα από την ζώνη που ελέγχει, σε άλλους Master DNS servers. Πρακτικό παράδειγμα, έστω ότι έχουμε το domain "rootforge.com". Είναι ένα domain δευτέρου επιπέδου, για το οποίο έχει ανατεθεί αρμοδιότητα στο DNS της επιλογής μας, από έναν rootserver (κεντρικό server) που έχει την αρμοδιότητα για το TLD (Top Level Domain) "com". Ο server της επιλογής μας θα πρέπει να έχει μία ζώνη η οποία να περιέχει ακριβώς τις αντιστοιχίσεις (mappings) του "rootforge.com" και των subdomains αμέσως υψηλότερου βαθμού ("κάτι.rootforge.com) με τις IP διευθύνσεις ή με τα domains (ανάλογα το είδος του Resource Record). Για την περίπτωση που θέλαμε να έχουμε domains ακόμα υψηλότερου βαθμού (π.χ. "κάτι.nske.rootforge.com"), θα έπρεπε να κάνουμε 2 πράγματα:

Να περιλάβουμε στη ζώνη του rootforge.com ένα "NS" Resource Record για το nske.rootforge.com subdomain που να έχει τιμή το domain του DNS server ο οποίος θα είναι authorative (αρμόδιος) για το domain "nske.rootforge.com", κάνοντας έτσι ανάθεση αρμοδιότητας (authority delegation) σε αυτόν τον dns server.

Να φτιάξουμε μία ζώνη στον server που δηλώσαμε ως authorative για το nske.rootforge.com η οποία θα περιέχει όλα τα Resource Records για αυτό το domain.


Slave/Secondary Servers

Ένας Slave DNS server, είναι ένας server ο οποίος έχει ρυθμιστεί να συνδέεται σε τακτά διαστήματα σε έναν ή περισσότερους master servers και να μεταφέρει τοπικά τις πληροφορίες για τις ζώνες τους. Έτσι είναι και αυτός ένας authorative server, όμως η εγκυρότητα των πληροφοριών του εξαρτάται από το πόσο πρόσφατα τις έχει αντλήσει από τον authorative Master server. Οι Slave DNS servers υπάρχουν κατά κύριο λόγο για λόγους αξιοπιστίας, εάν δηλαδή καταρρεύσει ο Master να συνεχίσουν να εξυπηρετούνται οι αιτήσεις, αλλά και για να μοιράζεται το traffic. Για να λειτουργήσει έτσι, χρειάζεται στη ζώνη που πρόκειται να εξυπηρετηθεί, να περιλαμβάνεται και ο Slave, σε ένα NS RR. Η διαδικασία ενημέρωσης των ζωνών λέγεται Zone Transfer (μεταφορά ζώνης) και η συχνότητά της εξαρτάται από το configuration του Master Server.


Caching-Only Servers, recursive & iterative queries

Ένας server που λειτουργεί ως caching-only, είναι ένας server ο οποίος δεν έχει αρμοδιότητα για καμία ζώνη, αλλά αναλαμβάνει να επικοινωνήσει με τους authorative servers μίας ζώνης για την οποία ρωτήθηκε και να επιστρέψει την απάντηση. Παράλληλα την αποθηκεύει σε μία cache, στη μνήμη συνήθως (temporary cache), ώστε να την έχει έτοιμη τοπικά σε περίπτωση που του ξαναζητηθεί. Caching-only DNS servers είναι κατά κανόνα οι servers των ISPs που χρησιμοποιούνται από τους χρήστες τους για σερφάρισμα. Υπάρχουν 2 επίπεδα λειτουργίας: Εξυπηρέτηση Recursive και Iterative queries. Συνήθως, αν ένας DNS server δέχεται Recursive queries, τότε θα ακολουθήσει τα εξής τρία βήματα για να εξυπηρετήσει το query:


Θα ελέγξει την Cache του μήπως υπάρχει εκεί η απάντηση, αν όχι:


Θα στείλει ένα iterative query στον τοπικό resolver (ο οποίος χρησιμοποιεί τους DNS servers που αναφέρονται στο configuration του, πχ για τα περισσότερα Unices /etc/resolv.conf) και αν δεν πάρει απάντηση για την διεύθυνση του authorative server της ζητούμενης ζώνης ή κάποιου μητρικού του:


Θα καταφύγει στη λιγότερο επιθυμητή λύση (λιγότερο επιθυμητή γιατί συνεπάγεται τα περισσότερα queries, δηλαδή σε όλους τους parent authorative servers μέχρι και τον ζητούμενο), να ρωτήσει τους ίδιους τους rootservers, οι οποίοι θα τον παραπέμψουν στον authorative του μητρικού domain κ.ο.κ μέχρι να φτάσει σε κάποιο authorative του ζητούμενου domain. Αν αποτύχει να φτάσει εκεί, τότε θα επιστρέψει error.

Η τυπική διαδικασία για το dns resolution του rootforge.org. Η διαδοχή των σχημάτων αντιπροσωπεύει την σειρά των ενεργειών με τη φορά του ρολογιού, μέχρι να υπάρξει positive answer. Οι κόκκινες γραμμές αντιπροσωπεύουν το ερώτημα (query), οι μπλε προσδιοριστικές απαντήσεις που προσδιορίζουν τους authorative servers ή μητρικούς τους (οι οποίοι θα ερωτηθούν στη συνέχεια, σύμφωνα με τη διαδικασία του recursion) και οι πράσινες την ίδια την απάντηση στο ερώτημα. Ο ORG. TLD server σε ότι αφορά την κατανόηση του σχήματος, είναι απλά ένας μητρικός του domain μας server και μπορούμε να εννοήσουμε όσους τέτοιους θέλουμε (ανάλογα το επίπεδο του domain).

Ένας server που εξυπηρετεί μόνο non-recursive queries, τότε αν αποτύχει το πρώτο βήμα, θα στείλει με τη σειρά του ένα non-recursive query στον τοπικό resolver, ή στους rootservers και θα δώσει αυτή την προσεγγιστική απάντηση στον client (hint) ο οποίος θα αναλάβει ο ίδιος το recursion, δηλαδή να κάνει query έναν-έναν τους servers μέχρι να φτάσει στο επιθυμητό αποτέλεσμα. Αυτή η διαδικασία ονομάζεται και "walking the tree". Σε κάθε περίπτωση, το query και η απάντηση αποθηκεύονται στην cache για το χρονικό διάστημα που έχει ορίσει ο εκάστοτε Master server (TTL). Αυτό συμβαίνει ακόμα και αν η απάντηση είναι ένα error που δηλώνει την αποτυχία του server, οπότε ονομάζεται negative caching, μόνο που τότε το χρονικό διάστημα αποθήκευσης τις περισσότερες φορές καθορίζεται από τον ίδιο τον caching server.


Forwarding Servers

Ένας DNS server μπορεί να ρυθμιστεί να λειτουργεί προωθώντας τα queries σε άλλους servers, ως recursive queries, και απλά να παραλάβει την απάντηση και να την παραδώσει στον client. Και σε αυτή την περίπτωση βέβαια, ελέγχει συνήθως πρώτα την cache του αν υπάρχει ακριβής απάντηση και αντίστοιχα καταγράφει την απάντηση όταν του παραδοθεί. Ουσιαστικά ένας forwarding dns είναι ρυθμισμένος αν δεν έχει στην cache του την απάντηση να "αγγαρέψει" τους servers που του έχουμε ορίσει για απάντηση με τον ίδιο τρόπο που ο client "αγγάρεψε" αυτόν . Φυσικά ο server που θα αγγαρευτεί θα πρέπει είτε να είναι ρυθμισμένος να εξυπηρετεί recursive queries, είτε να είναι και ο ίδιος forwarding server. Οι DNS forwarding servers χρησιμοποιούνται σε αρκετά εξειδικευμένες περιπτώσεις, όπου λειτουργούν πίσω από περιοριστικά firewalls ή τίθεται θέμα ανεπάρκειας των διαθέσιμων πόρων.


*Μερικές σημειώσεις:

Όταν αναφερόμαστε σε "dns server" δεν εννοούμε αναγκαστικά ένα και μόνο μηχάνημα με ένα DNS service σηκωμένο, αλλά οποιοδήποτε αριθμό DNS servers το οποίο σε ότι μας ενδιαφέρει λειτουργεί ως μία DNS μονάδα. Θα μπορούσε (και έτσι είναι συνήθως σε μεγάλα κέντρα του δικτύου) να είναι ένας αριθμός μηχανημάτων σε ένα εσωτερικό δίκτυο πίσω από έναν router, τα οποία να μοιράζονται το traffic μεταξύ τους, πχ με "round robin" τεχνική (*Round Robin: οι servers σα να περιστρέφονται, αν υποθέσουμε ότι το μηχάνημα που αντιστοιχεί στον αριθμό "1" αναλαμβάνει πάντα να εξυπηρετήσει την τρέχουσα αίτηση, με την λήψη της αίτησης το κάθε μηχάνημα παίρνει x+1 δείκτη, όπου x ο τρέχον δείκτης, εκτός από το τελευταίο το οποίο παίρνει 1. Έτσι κατανέμονται όσο το δυνατόν περισσότερο ισοδύναμα οι πόροι.

Ένας DNS server δεν λειτουργεί κατ' ανάγκη ως ένα είδος DNS server (Primary, Slave, Recursive Caching, Iterative Caching, Forwarding, Stealth) αλλά μπορεί να λειτουργεί με οποιοδήποτε συνδυασμό των παραπάνω, ανάλογα την περίπτωση και το configuration του.

Reverse Mapping

Μία σημαντική DNS λειτουργία του Internet είναι το Reverse Mapping. Το reverse mapping έχει οριστεί να αναλαμβάνει την αντιστοίχηση IP διευθύνσεων σε canonical names (hostnames). Για να γίνει αυτό, χρειάστηκε να φτιαχτεί ένα TLD το οποίο ονομάστηκε "arpa." (το οποίο δε διαφέρει σε τίποτα από ένα TLD όπως το com. ή το org.). Μέσα του υπάρχουν άλλα υπο-domains, εμάς μας ενδιαφέρει το "IN-ADDR" γιατί αυτό αφορά στην κλάση του Internet. Στη συνέχεια, μέσα στο domain "in-addr.arpa.", υπάρχουν άλλα 255 domains, ένα για κάθε αρχικό IP address octet, με το όνομα του (π.χ. 69.in-addr.net). Εκεί μέσα υπάρχουν άλλα 255 domains κ.ο.κ, μέχρι να συμπληρωθούν και τα τέσσερα IP address octets. Το ότι παραθέτονται αντεστραμένα οφείλεται στο ότι ενώ στο format των IP διευθύνσεων το γενικό μέρος (δίκτυο) δηλώνεται στα αριστερά και στο τέλος μένει ο host, στo format του DNS το γενικό (domain) μπαίνει στα δεξιά και αριστερά του το ειδικό (host).
Έχουμε λοιπόν ένα standard name space "IN-ADDR.ARPA.", το οποίο περιλαμβάνει καταχωρήσεις για όλες τις IP διευθύνσεις. Το dns έχει προβλέψει την ύπαρξη ενός τύπου query ειδικά για reverse mapping resolution, ώστε το "IN-ADDR.ARPA." namespace να υπάρχει μόνο λειτουργικά και η διαδικασία να γίνεται απλά και διάφανα από τις εφαρμογές και τον χρήστη.
Τις IN-ADDR.ARPA καταχωρήσεις μπορούμε να τις κάνουμε map όπου θέλουμε, κανονικά όπως προβλέπεται από το RFC, θα πρέπει να αντιστοιχήσουμε την κάθε IP για την οποία ήμαστε υπεύθυνοι (μέσω PTR records) σε ένα πραγματικό hostname (που να είναι και το ίδιο mapped μέσω Address record με την IP του host). Αυτό κατά κανόνα είναι που κάνουν οι υπεύθυνοι ISPs οι οποίοι διαθέτουν ολόκληρα IP ranges (ούτως ή άλλως συμβατικά μπορεί να οριστεί αρμόδιος server για ένα IN-ADDR.ARPA. domain μόνο με ακρίβεια octet, δηλαδή στην καλύτερη μίας κλάσης C IP διευθύνσεων). Ωστόσο υπάρχει ένα κάπως πολύπλοκο hack ως λύση, το οποίο επιτρέπει το αποτελεσματικό authority delegation σε άλλον server οποιουδήποτε range. Το hack αυτό περιγράφεται στο RFC2317 και χρησιμοποιείται από τους περισσότερους ISPs πλέον. Ο καθένας που διαθέτει στατική IP μπορεί να ζητήσει από τον ISP του το authority delegation για το reverse mapping της IP του σε δικό του server, ώστε να την αντιστοιχήσει σε ό,τι θέλει, ή την αλλαγή του record στον server του ISP. Σε ελάχιστες περιπτώσεις μόνο θα υπάρξει άρνηση, κυρίως σε περιπτώσεις που χρησιμοποιούν το reverse DNS mapping ως αναγνωριστικό για δικές τους υπηρεσίες όπως στατιστικά traffic, access control κλπ. όπου θα ήταν μπελάς.
Στο internet μπορείτε να συναντήσετε πολλούς hosts οι οποίοι δε διαθέτουν reverse DNS record, και άλλους που δε διαθέτουν πραγματικό, αλλά ένα ανύπαρκτο domain. Στην πρώτη περίπτωση, ο host θα αντιμετωπίζει προβλήματα και καθυστερήσεις όταν λειτουργεί ως server για κάποια services (κυρίως mailservers) και τα emails που αποστέλλονται από αυτόν μπλοκάρονται από πολλούς ISPs με αυστηρό antispam policy.

BIND DNS Implementation

Ο BIND (Berkeley Internet Name Domain) είναι ιστορικά η δεύτερη υλοποίηση DNS server και η ευρύτερα διαδεδομένη μέχρι σήμερα. Γράφτηκε το 1985 από τον Kevin Dunlap για το BSD Unix και αποτελεί την πιο σωστή προσέγγιση στα DNS specifications. Πλέον συντηρείται από το Internet Systems Consortium με ελεύθερη άδεια χρήσης και η ανάπτυξή του προχωράει σύμφωνα με την αιχμή της τεχνογνωσίας σχετικά με το DNS.

Αυτοί είναι οι βασικότεροι τύποι Resource Records, υπάρχουν και άλλοι αλλά η χρήση τους είναι πιο περιορισμένη και εξειδικευμένη. Τα σημαντικότερα από αυτά είναι :

ΑAA – Address RR, παρόμοια με τα A Records μόνο που χρησιμοποιούνται για IPv6 διευθύνσεις.

CNAME – Canonical Names, δημιουργεί συντόμευση για ένα domain name σε ένα άλλο.

DNAME – Domain Name Aliases, δημιουργεί συντόμευση για ένα ολόκληρο domain σε ένα άλλο.

PTR – Domain Name Pointers, παρέχει τη δυνατότητα αντιστοίχησης domain names με άλλα domain names. Κατά κύριο λόγο χρησιμοποιείται για το Reverse DNS mapping των IP addresses σε canonical names, μέσω της in-addr.arpa διαμόρφωσης.


Πηγή : http://www.freestuff.gr/forums/viewtopic.php?t=30224