Μόλις σηκωθεί το τούνελ, το τελευταίο βήμα είναι συνήθως ένα όνομα που δουλεύει αντί για μια διεύθυνση που επικολλάτε σε έναν σελιδοδείκτη. Μια εγγραφή κεντρικού υπολογιστή στο dnsmasq μαζί με μια διεύθυνση resolver που ο πελάτης μπορεί να φτάσει το κάνουν αυτό με δύο αρχεία και χωρίς multicast. Η απόφαση που πραγματικά θέλει σκέψη είναι στενότερη: στέλνει ο πελάτης όλο το DNS μέσω του οικιακού resolver ή μόνο τα ονόματα κάτω από το home.arpa; Όλα τα παρακάτω προϋποθέτουν εγκεκριμένη εγκατάσταση WireGuard με πελάτη Linux και resolver εργαστηρίου που ο οικιακός διαχειριστής ήδη διαχειρίζεται.

Τρεις τρόποι να δώσετε στον πελάτη έναν resolver

ApproachScopeCost
DNS = in the wg-quick interfacethe client's general DNS while the tunnel is upevery name in the house now depends on the tunnel
Platform split-DNS for home.arpaonly that suffixmore configuration per client platform
Manual dig @resolverone query at a timefine for testing, useless for applications

Για φορητό υπολογιστή που μπαίνει περιστασιακά στο τούνελ, το split-DNS είναι η καλύτερη προεπιλογή: κρατά τα συνηθισμένα ονόματα του διαδικτύου στον resolver που το μηχάνημα εμπιστεύεται ήδη. Για μηχάνημα που υπάρχει για να φτάνει οικιακές υπηρεσίες, το σπρώξιμο του resolver είναι απλούστερο και το κόστος εμβέλειας δεν μετράει.

Δημοσιεύστε την εγγραφή στον resolver που κατέχει τη ζώνη

Κρατήστε τους ρόλους χωριστούς πριν γράψετε ρυθμίσεις: η διεύθυνση του πελάτη VPN, ο resolver και η υπηρεσία είναι τρεις διαφορετικοί κεντρικοί υπολογιστές με τρεις διαφορετικές δουλειές. Σε αυτό το εργαστήριο είναι 10.77.0.2 για τον πελάτη, 192.168.50.53 για το dnsmasq και 192.168.50.20 για το NAS, με το τούνελ να δρομολογεί το οικιακό LAN.

listen-address=127.0.0.1,192.168.50.53
bind-interfaces
local=/home.arpa/
host-record=nas.home.arpa,192.168.50.20

Η γραμμή host-record παρέχει τη διεύθυνση και η γραμμή local= κρατά τις άγνωστες ερωτήσεις home.arpa μέσα σε αυτόν τον resolver αντί να τις προωθεί πιο πάνω. Διαβάστε πρώτα την υπάρχουσα διαμόρφωση και συμβιβάστε ό,τι ορίζει ήδη διακομιστή, διεπαφή ή τον ίδιο τοπικό τομέα· η στοίβαξη ενός τμήματος πάνω σε ένα αντιφατικό δίνει έναν resolver που φορτώνει χαρούμενα και απαντά λάθος. Το εγχειρίδιο του dnsmasq ορίζει και τις δύο οδηγίες και τους ελέγχους ακρόασης.

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

Δρομολογήστε τον resolver, όχι μόνο την ιστοσελίδα

Το AllowedIPs του WireGuard καθορίζει ποιοι προορισμοί μπαίνουν στο τούνελ. Αν η διεύθυνση του resolver πέφτει έξω από αυτό, το ερώτημα φεύγει από την κανονική διαδρομή και δεν φτάνει ποτέ στο dnsmasq, παρόλο που το ίδιο το NAS είναι προσβάσιμο. Συμπεριλάβετε τη διεύθυνση του resolver ή το πρόθεμα LAN που την περιέχει, και ελέγξτε την πολιτική προώθησης της πύλης στην άλλη πλευρά.

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

Ελέγξτε την απάντηση πριν από την εφαρμογή

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

dig @192.168.50.53 nas.home.arpa. A
dig +tcp @192.168.50.53 nas.home.arpa. A
getent ahostsv4 nas.home.arpa
curl -sS --max-time 5 http://nas.home.arpa/ -o /dev/null -w '%{http_code}\n'

Αξίζει να τρέξετε το ερώτημα TCP γιατί μια κομμένη απάντηση UDP αναγκάζει επανάληψη, και μια πολιτική που ρίχνει το TCP 53 παράγει αποτυχίες που φαίνονται διακοπτόμενες. Το βήμα getent δείχνει τι κάνει στην πραγματικότητα η διαμόρφωση resolver του μηχανήματος, που δεν είναι πάντα αυτό που σπρώξατε.

Αποφασίστε τι συμβαίνει όταν το τούνελ είναι κάτω

Αν το γενικό DNS του πελάτη δείχνει στο 192.168.50.53, κάθε επίλυση ονόματος σταματά να δουλεύει όταν το τούνελ δεν είναι πάνω. Αυτό είναι αποδεκτό σε μηχάνημα που είναι χρήσιμο μόνο με το τούνελ, και απαράδεκτο σε φορητό που χρησιμοποιεί και Wi-Fi καφετέριας. Το split-DNS αποφεύγει το ερώτημα εντελώς, γιατί μόνο οι αναζητήσεις home.arpa εξαρτώνται από τον οικιακό resolver.

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

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