IP-Weiderleedung op engem bestehende GCE VPN-Gateway aktivéieren
canIpForward ass eng aktualiséierbar Eigenschaft, kee Grond fir d'VM nei ze bauen. Exportéiert d'Ressource, ännert eng Zeil, validéiert a gitt se dann mat engem refresh un.
D'VM gouf ouni IP-Weiderleedung ugeluecht, si leeft schonn d'VPN-Software, an den Instinkt ass, si aus der Schabloun mat gesate Fändel nei ze bauen. Dee Neibau ass iwwerflësseg. Compute Engine weist canIpForward als aktualiséierbar Eigenschaft aus, an den dokumentéierte Wee fir d'Aktualiséierung applizéiert se mat engem refresh anstatt engem Neistart. Wat de Fändel tatsächlech kontrolléiert ass schmuel: ouni hien verwërft d'Plattform Paketen, déi op der Instanz ukommen, awer net un d'Instanz hir eege Adress adresséiert sinn. En Gateway, deen den Trafik vun aneren Maschinne weiderleedt, mécht genee dat, also muss de Fändel an sinn. Alles duerno ass Gastkonfiguratioun a Routing, déi de Fändel net beréiert.
Wat de Fändel erlaabt, an wat net
Wann d'Weiderleedung ausgeschalt ass, behandelt d'Plattform d'Instanz als Endpunkt. Pakete mat der Instanz hirer eegener Adress als Zil ginn ausgeliwwert; Paketen, déi d'Instanz am Numm vun engem aneren weidergeini soll, ginn net ausgeliwwert.
Wann d'Weiderleedung ageschalt ass, kann d'Instanz als nächsten Hop fir eng VPC-Route agéieren, an dat ass d'Roll, déi eng VPN-Appliance brauch. De Fändel seet näischt iwwer Firewallen, Gastrouting, Tunnelskonfiguratioun oder Réckweeër, an en true-Wäert op engem futti Gateway ass nach ëmmer en futti Gateway.
Liest déi aktuell Eigenschaft
Iwwerpréift d'Astellung ier Dir eppes ännert, mat engem nëmme-Liesen describe géint déi virgesinn Instanz, Projet a Zone:
gcloud compute instances describe VM_NAME --project PROJECT_ID --zone ZONE --format='value(canIpForward)'
En false-Wäert ass nëmme wichteg, wann dës VM den nächsten Hop soll sinn. Wann jo, muss de Rescht vum Wee nach ëmmer separat gepréift ginn, well d'Eigenschaft eng Zeil an enger méi laanger Kette ass.
Aktualiséiert déi bestehend Instanz
D'Prozedur vum Google fir d'Aktualiséierung vun Instanz-Eigenschaften exportéiert déi aktuell Ressource, ännert d'Eigenschaft an iwwerreecht d'Resultat. Dat ass en anere Workflow wéi de Fändel --can-ip-forward bei der Kreatioun, an et ass deen, deen op enger lafender VM funktionéiert.
Exportéiert d'Definitioun fir d'éischt an eng lokal Datei, a behält eng onverännert Kopie fir de Verglach:
gcloud compute instances export VM_NAME --project PROJECT_ID --zone ZONE --destination=instance.yaml
An där exportéierter Datei setzt Dir d'Eigenschaft a ännert soss näischt:
canIpForward: true
Behält déi ganz Ressource, inklusiv hirem Fangerofdrock. D'Datei duerch en eenzeilegt YAML-Dokument ersetzen, oder onverbonne Ännerungen um Maschinnentyp, der Disk oder dem Interface an déiselwecht Soumissioun packen, ass de Wee, wéi eng Eigenschaftsännerung zu engem Ausfall gëtt.
Frot de Mechanismus fir d'Aktualiséierung, d'Datei ze validéieren an ze mellen, wat se erfuerdere géif, ier eng effektiv Ännerung erlaabt gëtt:
gcloud compute instances update-from-file VM_NAME --project PROJECT_ID --zone ZONE --source=instance.yaml --most-disruptive-allowed-action=NO_EFFECT
Dee Validéierungslaf aktivéiert d'Weiderleedung net. Liest d'Äntwert op ongülteg Eigenschaften an op d'Aktioun, déi se als néideg bezeechent. Fir dës isoléiert Ännerung ass déi dokumentéiert Aktioun REFRESH. Wann d'Resultat en Neistart freet, enthält d'Datei méi wéi d'Eigenschaft, déi Dir wollt änneren, also iwwerpréift se amplaz den Neistart ze ginn.
Gitt déi iwwerpréift Datei mat der refresh-Grenz un:
gcloud compute instances update-from-file VM_NAME --project PROJECT_ID --zone ZONE --source=instance.yaml --most-disruptive-allowed-action=REFRESH
Préift, ob d'Operatioun fäerdeg ass, a fëllt den describe-Befehl nach eng Kéier aus. Wann de Fangerofdrock net méi iwwereneestëmmt, huet een aneren d'Instanz geännert, wärend Dir editéiert hutt, also exportéiert eng frësch Kopie an iwwerpréift d'Ännerung nach eng Kéier, amplaz är al Datei duerchzedrécken.
De Gast muss de Paket nach ëmmer route
Eng Cloud-Berechtegung mécht d'Appliance net zu engem Router. Bestätegt, datt eng VPC-Route dës VM als nächsten Hop fir de Zilprefix auswielt, an datt de Gast tëschent dem Tunnel an dem richtege Interface route mat senger eegener Weiderleedungspolitik ageschalt.
D'Firewallpolitik muss de bannenzen Flux wéi och de baussenzege Lauschterer erlaben. Nëmmen de VPN-Port opzemaache beschreift den verschlësselten Transport a seet näischt iwwer den Applikatiounsaustausch dobannen.
Schlussendlech brauch d'Zil en Réckwee zum Client-Pool, oder d'Design muss d'Quellen bewosst iwwersetzen. Wann d'Zil iwwersetzten Trafik gesäit, préift déi iwwersat Quell; wann d'Design de Pool behält, préift dee Pool an der Réckroute an den Zugriffsregelen. NAT dobäizesetzen, ier Dir entscheet, wéi en Design Dir wëllt, verstoppt eng fehlend Route an ännert d'Politik, déi d'Zil gesäit.
Op engem Linux-Gateway ass d'Weiderleedung am Kernel Deel vun der Gastkonfiguratioun. Eng pfSense-Appliance huet hir eege Entspriechung, an e Linux-sysctl-Befehl dran ze kopéieren ass net de passenden Schrëtt.
Verifizéiert vum Client, deen Zougang brauch
Test vun engem VPN-Client op eng eenzeg Zilservice, net vum Gateway selwer. Eng Verbindung, déi um Gateway ugefaang gëtt, benotzt eng aner Quell a übt ni d'Weiderleedungsregelen aus, déi Dir just ageschalt hutt.
Halt d'Eigenschaft an deem fest, wat d'Appliance verwalt. Eng manuell korrigéiert VM funktionéiert, bis hiren nächsten Ersatz déi ursprénglech Astellung roueg erëmbréngt, an dee Feeler wäert wéi eng Regressioun an der VPN-Software ausgesinn.
Uerdnung vun der Aarbecht: liest d'Eigenschaft, exportéiert an ännert eng Zeil, validéiert mat NO_EFFECT, gitt se mat REFRESH un, bestätegt, datt de Gast weiderleedt, a test dann vun engem Client.