kubectl feelt bei der Numm-Sich, während den Tunnel leeft an d’privat Adress vun der API nach op e Ping äntwert. D’Route ass an der Rei; de Client freet en Resolver, dee nach ni vun der privater Zone vum Cluster héieren huet. Zwou Korrekture ginn am meeschten benotzt: den Resolver vum virtuelle Netz un all VPN-Client schécken, oder den Numm lokal mat engem hosts-Andrag oder engem bedingte Forwarder festhalen. Si léisen dat selwecht Symptom mat ënnerschiddlecher Responsabilitéit, a si ze verwiesselen ass de Grond, firwat Equippen all Kéier d’hosts-Fichiere editéieren, wann en Endpunkt nei opgebaut gëtt.

Opléisung an Erreechbarkeet feelen op verschiddene Schichten

Maacht d’Sich selwer, ier Dir eppes ännert. getent hosts op Linux oder nslookup op Windows seet Iech, ob de Client iwwerhaapt eng Äntwert kritt; en Timeout oder NXDOMAIN weist op den Resolver, während eng Äntwert mat der falscher Adress op en ale Bäitrag oder en ëffentleche Duerchgrëff weist.

Bestätegt dann wéi engem Server kubectl tatsächlech verbënnt. En kubeconfig-Kontext späichert eng URL, an eng VPN-Route schreift se net ëm: wann de Kontext en ëffentlechen Endpunkt nennt, kann DNS perfekt sinn an den Uerder trotzdem feelen.

getent hosts api.internal.example
kubectl config view --minify -o jsonpath='{.clusters[0].cluster.server}'
kubectl -v=8 get nodes 2>&1 | head -40

Déi drëtt Signal ass d’Form vum Feeler no der Sich. En Numm, deen op déi privat Adress opléist an duerno en TCP-Timeout kritt, ass e Problem vun der Firewall oder vun engem autoriséierten Netz. En Numm, deen op eng ëffentlech Adress opléist, bedeit datt d’Ufro aus der privater Zone entkomm ass. Halt déi dräi Resultater getrennt; all een schéckt Iech bei en anere Responsabelen.

Optioun A: den Resolver vum virtuelle Netz an den Tunnel schécken

Wann de VPN-Server am virtuelle Netz leeft, kënnen d’Clienten dee selwechte Resolver benotze wéi den Host vum Server. An OpenVPN Community schéckt de Server eng DNS-Optioun; Access Server weist déi selwecht Astellung an der Admin-Oberfläch, an d’Clienten mussen de Profil erëm eroflueden, well d’DNS-Direktiv dran reest.

# server.conf
push "dhcp-option DNS 10.0.0.4"
push "route 10.0.0.4 255.255.255.255"

D’Routelinn ass wichteg bei Split-Tunnel-Profiler. Eng Resolver-Adress ze schécken ass net datselwecht wéi se erreechbar ze maachen: wann nëmmen d’Cluster-Subnetz duerch den Tunnel geet, verléisst d’Ufro op 10.0.0.4 iwwer de lokalen LAN an stierft. Schéckt eng Host-Route fir den Resolver, oder huelt säi Subnetz an den Tunnel op.

D’Empfangssäit huet och eng Politik. En Resolver, deen aus dem Adressberäich vum Client erreechbar ass, kann Ufroen dovun nach ëmmer refuséieren, an eng privat Zone, déi mam virtuelle Netz verbonne ass, äntwert nëmme Clienten, déi iwwer den DNS-Wee vun deem Netz kommen. Wann d’Sich no dem Schécke timeout, kuckt d’Logge vum Resolver un, ier Dir de Client erëm ufasst.

Op dem Client, iwwerpréift wat ugewand gouf: resolvectl status op systemd-resolved Linux, scutil --dns op macOS, ipconfig /all op Windows. En DNS-Server, dee geschéckt gouf an ni erschéngt, bedeit datt de Profil net nei gelueden gouf.

Optioun B: hosts-Andräg a bedingt Weiderleeden

En hosts-Andrag ass déi klengst méiglech Korrektur an déi bréchegst. Hie verbënnt een Numm mat enger Adress op enger Maschinn, also funktionéiert en fir eng Demo a brécht, wann den privaten Endpunkt oder seng IP nei opgebaut gëtt. Hien hält och déi richteg Lück virum Rescht vum Team verstoppt.

En bedingte Forwarder skalaert besser, ouni DNS un all Client ze schécken. dnsmasq kann eng Zone un den VNet-Resolver schécken an alles anescht a Rou loossen: server=/cluster.internal/10.0.0.4. Windows DNS huet bedingt Forwarder, an Windows-Cliente kënnen eng NRPT-Reeg fir déi selwecht Deelung benotzen. De Forwarder brauch nach ëmmer eng Route zum VNet-Resolver.

Weiderleeden hält normal Browsen lokal, wat bei Split Tunnel zielt. Et gëtt Iech och eng Plaz fir Ufroe fir déi privat Zone ze loggen, an eng Plaz déi brécht, wann den Host vum Forwarder ëmzitt.

Wielt no Responsabilitéit, net no Komfort

Schéckt den Resolver, wann Dir de VPN-Profil kontrolléiert an wëllt, datt all privaten Numm funktionéiert, net nëmmen d’API. Wielt e Forwarder, wann d’Clienten hiren lokalen DNS fir alles anescht behale mussen, oder wann de VPN vun engem aneren Team wéi de Cluster verwalt gëtt.

hosts-Andräg sinn eng Diagnos, keen Deployment. Benotzt een, fir ze beweisen, datt d’API erreechbar ass, läscht en duerno a reparéiert de Wee vum Resolver; en ze loosse mécht eng Routing-Fro méi spéit zu enger Schatzsich. Wéi eng Optioun Dir och wielt, schreift d’Zone, d’Resolver-Adress an d’Route op, déi d’Ufro dréit.

Test den API-Endpunkt, net nëmmen den Numm

Soubal d’Sich geléngt, hëlt den Versiouns-Endpunkt vun der API mat der CA vum Cluster. curl --cacert ca.crt https://api.internal.example:6443/version trennt TLS- an Autorisatiounsfeeler vum DNS. En 403 bedeit, datt den Numm an d’Verbindung funktionéieren an d’Identitéit net.

Iwwerpréift och, ob de Adressberäich vum Client vun den autoriséierte Netzwierker oder der Firewall vum Cluster erlaabt ass. Privat Clustere akzeptéieren den API-Traffic dacks nëmmen aus dem VNet oder aus gepeerten Beräicher, also verbënnt en Tunnel, deen Adressen aus engem anere Pool vergëtt, op der Netzwierkschicht a gëtt bei der API verworf.

Notéiert véier Fakten, wann Dir eskaléiert: den Resolver, deen de Client benotzt huet, d’Adress, déi en zréckginn huet, d’Server-URL am gewielte kubeconfig-Kontext an déi éischt Operatioun, déi feelt. Dee Rekord seet dem nächsten Ingenieur, ob DNS, Routing oder Firewall-Politik geännert misse ginn, an en hält déi nächst hosts-Fichier-Ännerung op.

Fänkt mat der Sich un, wielt de Wee vum Resolver, dee passt, wiem d’Zone gehéiert, a verifizéiert dann den Endpunkt. Wann all dräi duerchkommen, ass dat rescht Problem Autorisatioun, net Numm-Opléisung.

Ähnlech Artikelen