Η προσθήκη μιας εγγραφής SRV στη ζώνη σας δεν μαθαίνει σε κανέναν πελάτη VPN να την αναζητά. Ο πελάτης πρέπει να γνωρίζει την ετικέτα, να αποφασίσει να στείλει το ερώτημα και να ενεργήσει ανάλογα με το τι επιστρέφει, και το DNS δεν μπορεί να παρέχει τα δύο πρώτα από αυτά. Γι’ αυτό τα περισσότερα αποτυχημένα σχέδια SRV είναι προβλήματα πελάτη με στολή DNS. Διαβάστε πρώτα τη συμπεριφορά ανακάλυψης του πελάτη και μετά δημοσιεύστε μόνο την ετικέτα που πραγματικά αναζητά.

Μια εγγραφή που κανείς δεν αναζητά δεν μπορεί να βοηθήσει κανέναν

Το SRV δημοσιεύει τη θέση μιας υπηρεσίας· δεν την ανακοινώνει. Τίποτα δεν σπρώχνει μια εγγραφή προς έναν πελάτη, και κανένας επιλυτής δεν προσφέρει ένα όνομα που δεν ζητήθηκε ποτέ. Η αναζήτηση ξεκινά όταν η εφαρμογή αποφασίσει να την κάνει, άρα η ετικέτα πρέπει να προέρχεται από την τεκμηρίωση του προϊόντος ή από την παρατήρηση του λογισμικού στο δίκτυο. Όπου ο πελάτης δεν έχει βήμα ανακάλυψης, μια εγγραφή αλλάζει τη ζώνη και τίποτε άλλο.

Γι’ αυτό ένα προϊόν σε ένα δίκτυο μπορεί να αρχίσει να λειτουργεί ενώ ένα άλλο δεν επηρεάζεται από την ίδια αλλαγή. Η μεταβλητή είναι το λογισμικό, και ο διακομιστής DNS κάνει ακριβώς ό,τι του ειπώθηκε. Διαβάστε τη ζώνη ξανά μετά την επεξεργασία, γιατί μια λανθασμένη ετικέτα κρύβεται εύκολα ανάμεσα σε εγγραφές που όλες μοιάζουν ίδιες.

Διαβάστε τα πεδία πριν τα γράψετε

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

Κανένα από αυτά τα πεδία δεν μεταφέρει διαπιστευτήρια, πολιτική πιστοποιητικών ή έκδοση εφαρμογής, και ένας πελάτης που αγνοεί το βάρος συνδέεται ακόμη, απλώς χωρίς την επιδιωκόμενη ισορροπία. Ο στόχος χρειάζεται δικές του εγγραφές διεύθυνσης και θα πρέπει να είναι κανονικό όνομα και όχι ψευδώνυμο. Η δημοσίευση μιας εγγραφής που δείχνει σε κεντρικό υπολογιστή χωρίς ακροατή δημιουργεί σφάλμα σύνδεσης που διαβάζεται σαν βλάβη DNS, και αυτό είναι το πιο ακριβό είδος παραπλάνησης. Δημοσιεύστε ολόκληρη την αλυσίδα ή τίποτα από αυτήν.

Βρείτε την ετικέτα που στέλνει πραγματικά ο πελάτης

Καθορίστε την ετικέτα από στοιχεία και όχι από εικασία για το όνομα του προϊόντος. Είτε η τεκμηρίωση αναφέρει το όνομα της υπηρεσίας, είτε μια καταγραφή δείχνει το ερώτημα να φεύγει από τον πελάτη όταν ξεκινά. Και οι δύο διαδρομές καταλήγουν στο ίδιο σημείο: ένα ακριβές όνομα και τύπος για δοκιμή απέναντι στον επιλυτή.

dig +short SRV _vpn._tcp.gw.example
dig +short A edge2.gw.example
tcpdump -ni any udp port 53

Συγκρίνετε την απάντηση με την εγγραφή που δημοσιεύσατε, χαρακτήρα προς χαρακτήρα, γιατί οι κάτω παύλες και η τελεία στο τέλος είναι μέρος του ονόματος. Μια κενή απάντηση σε ένα ερώτημα που στάλθηκε πραγματικά δείχνει τη ζώνη, ενώ η παντελής απουσία ερωτήματος δείχνει τον πελάτη, και αυτά τα ευρήματα σας στέλνουν σε διαφορετικές ομάδες. Μια πραγματική απάντηση μοιάζει με τη γραμμή παρακάτω, όπου η προτεραιότητα 20 χάνει από κάθε εγγραφή χαμηλότερης προτεραιότητας και ο πελάτης καλεί τη θύρα 8443 στον ονομαζόμενο στόχο.

_vpn._tcp.gw.example. 600 IN SRV 20 10 8443 edge2.gw.example.

Ο στόχος πρέπει επίσης να υπάρχει

Ένας στόχος που επιλύεται δεν είναι το ίδιο με μια υπηρεσία που απαντά. Ελέγξτε τις εγγραφές διεύθυνσης για τον στόχο και μετά ελέγξτε ότι κάτι ακούει στη δημοσιευμένη θύρα και πρωτόκολλο. Μια εγγραφή TCP που δείχνει σε ακροατή μόνο UDP είναι αναντιστοιχία που καμία επεξεργασία ζώνης δεν διορθώνει. Κρατήστε το TTL σύντομο όσο ο στόχος είναι ρευστός και επιμηκύνετέ το όταν το όνομα πάψει να κινείται.

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

Η ανακάλυψη δεν είναι ταυτοποίηση

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

Για έναν πελάτη χωρίς υποστήριξη ανακάλυψης, διανείμετε το προφίλ ή τη διεύθυνση URL της πύλης που δέχεται, και καταγράψτε ποιο προϊόν χρησιμοποιεί ποια μέθοδο. Αυτή η σημείωση εμποδίζει τον επόμενο διαχειριστή να προσθέσει μια εγγραφή και να περιμένει να λειτουργεί παντού. Η προδιαγραφή SRV περιγράφει την επιλογή μεταξύ στόχων, και το να τη διαβάζει κανείς ως μηχανισμό εξουσιοδότησης είναι ο τρόπος με τον οποίο μια χρήσιμη εγγραφή γίνεται υπόθεση ασφαλείας. Δημοσιεύστε με πρόθεση, ονομάστε την ετικέτα στην τεκμηρίωσή σας και αντιμετωπίστε τον πελάτη ως το συστατικό που αποφασίζει αν όλα αυτά έχουν σημασία.

Σχετικά άρθρα