Squid Split DNS: δρομολόγηση ιδιωτικών τομέων μέσω του σωστού resolver
Δρομολογήστε ιδιωτικούς και δημόσιους χώρους ονομάτων DNS συνειδητά αντί να δώσετε στο Squid μια αμφίσημη λίστα resolvers.
Η τοποθέτηση ενός εσωτερικού resolver πρώτου και ενός δημόσιου δεύτερου δεν λέει στο Squid ποια ονόματα ανήκουν σε κάθε χώρο ονομάτων.
Στο Squid 6 και 7, το dns_nameservers αντικαθιστά τη συνήθη λίστα resolvers με διευθύνσεις διακομιστών. Η σύνταξή του δεν έχει αντιστοίχιση ανά τομέα. Μια έγκυρη αρνητική απάντηση διαφέρει επίσης από έναν μη προσβάσιμο resolver, επομένως οι εναλλακτικές δεν είναι αξιόπιστος τρόπος αναζήτησης σε ασύμβατους χώρους ονομάτων.
Δρομολόγηση ερωτημάτων ανά τομέα
Ένας τοπικός DNS forwarder μπορεί να εκφράσει την πολιτική που λείπει. Σε υπάρχουσα διαμόρφωση dnsmasq, ένα ιδιωτικό επίθημα μπορεί να δρομολογηθεί ως εξής:
server=/internal.example/192.0.2.53
Αντικαταστήστε τον τομέα και τη διεύθυνση. Διαμορφώστε ένα εγκεκριμένο προεπιλεγμένο upstream για άλλα ονόματα, έναν κατάλληλο listener και περιορισμούς πρόσβασης. Στη συνέχεια, δείξτε το Squid σε αυτόν τον resolver με τη διαμόρφωση που υποστηρίζει η εγκατεστημένη έκδοση.
Εναλλακτικά, χρησιμοποιήστε μια οργανωτική υπηρεσία DNS που επιλύει σωστά και τους δύο χώρους ονομάτων. Αποφύγετε ένα δημόσιο fallback που εκθέτει ιδιωτικά ονόματα χωρίς να μπορεί να απαντήσει σε αυτά.
Αν ένας γονικός proxy εκτελεί την αναζήτηση προορισμού, αυτό το άλμα χρειάζεται τον ιδιωτικό χώρο ονομάτων. Ένας resolver στον τοπικό κεντρικό υπολογιστή Squid δεν θα διορθώσει την αναζήτηση του γονικού proxy.
Ελέγξτε και την αρνητική περίπτωση
Επιλέξτε ένα έγκυρο ιδιωτικό όνομα, ένα έγκυρο δημόσιο όνομα και ένα ανύπαρκτο ιδιωτικό όνομα. Για καθένα, προσδιορίστε το προβλεπόμενο upstream και αν η αναμενόμενη απάντηση είναι διεύθυνση ή αρνητική απόκριση. Η τελευταία περίπτωση αποκαλύπτει τυχαίο δημόσιο fallback μετά από εσωτερική αρνητική απάντηση.
Συμπεριλάβετε τις οικογένειες διευθύνσεων που απαιτεί ο πελάτης. Μια λειτουργική αναζήτηση A δεν αποδεικνύει ότι το AAAA ακολουθεί την πολιτική ή επιστρέφει προσβάσιμο προορισμό. Σημειώστε και την κατάσταση της cache: μια αποθηκευμένη απάντηση μπορεί να κρύψει ποιο upstream θα επέλεγε ένα νέο ερώτημα.