Firwat net.ipv4.conf.default.forwarding tun0 a Rou léisst
default.forwarding sät just nei Interface'en, net en aktiven Tunnel. Vergläicht ip_forward, d'Schabloun an d'Interface am Namespace, deem et gehéiert.
Dir hutt net.ipv4.conf.default.forwarding=1 gesat, de VPN nei gestart, an den Tunnel verwërft nach ëmmer Paketen, déi de Gateway sollte routen. D'Astellung gesäit an der Datei richteg aus, an d'Interface mellt nach ëmmer, datt d'Weiderleedung ausgeschalt ass. Näischt ass futti: Dir hutt de Wäert geännert, deen zukünfteg Interface'en ierwen, net deen, deen den aktiven Tunnel benotzt.
Gitt dat op deem Host duerch, deem den Tunnel gehéiert, an deem Netzwierk-Namespace, wou den Tunnel tatsächlech existéiert. E Container oder en Netzwierk-Namespace kann d'Interface halen, während den Host aner Zuelen weist.
Liest déi dräi Wäerter zesummen
Fänkt un, de gatewaywäiten Schalter, d'Schabloun fir nei Interface'en an d'Interface, déi Iech wichteg ass, ze vergläichen. Ersetzt tun0 duerch déi richteg Entrées-Interface, a liest och d'Réck-Interface, well d'Weiderleedung op deem Punkt bewäert gëtt, wou de Pak ukommt.
sysctl net.ipv4.ip_forward
sysctl net.ipv4.conf.default.forwarding
sysctl net.ipv4.conf.tun0.forwardingEn heefegt Resultat ass ip_forward = 0, default.forwarding = 1 an tun0.forwarding = 0. Déi éischt zwou si sech net eens iwwer d'Roll vum Host, an déi drëtt weist, wat d'Interface tatsächlech mécht. Déi Kombinatioun passt zu engem Host, deen ni als Router konfiguréiert gouf, mee just e Schablounewäert kritt huet. Déi dräi Zuelen widersprieche sech net; si beäntweren dräi verschidde Froen. D'Schablounewäert ze schreiwen entscheet och net d'Roll vum Host.
Firwat de globale Schalter deen ass, dee sech beweegt
net.ipv4.ip_forward ass d'Steierung fir de ganze Gateway. En z'änneren aktualiséiert d'Weiderleedungsastellungen pro Interface als Deel vun der selwechter Operatioun, dofir kann eng eenzeg Schreifweis en existéierenden Tunnel ufänken ze weiderleeden. default.forwarding sät just Interface'en, déi duerno initialiséiert ginn, sou datt en Tunnel, deen et scho gouf, de Wäert behält, mat deem en gebuer gouf.
D'Kernel-Dokumentatioun markéiert ip_forward als speziell aus engem verwandte Grond: en z'änneren setzt eng Rei aner IPv4-Parameter op d'Standardwäerter fir Host oder Router zréck. Dat mécht en zu engem stumpen Instrument. En eemol als Deel vun der Etabléierung vun der Gateway-Roll ze setzen ass gutt; en ëmmer nees als Debug-Trick ëmzeschalten kann eng Konfiguratioun stëll iwwerschreiwen, fir déi Dir Zäit opgewannt hutt.
Wäerter pro Interface gëtt et och aus engem Grond. En absichtlech verwaltete Gateway kann d'Weiderleedung op enger Interface ausgeschalt loossen, déi ni sollt routen, och wärend den Host soss anzwousch weiderleet. Dofir ass et wichteg, déi aktiv Interface ze liesen, an dofir ass de globale Wäert eleng net déi ganz Äntwert. Liest sou eng Ausnam als bewosst Entscheedung, a schreift op, firwat déi Interface anescht ass. Soss wäert den nächsten Ingenieur se hëllefsbereet "reparéieren".
Maacht d'Astellung dauerhaft op der richteger Plaz
Eng erfollegräich eenzel sysctl -w beweist, datt de Kernel de Wäert akzeptéiert. Se iwwerlieft keen Neistart, an se iwwerlieft keen Netzwierkmanager, deen beim Neiverbannen seng eege Iddi vun der Interface-Konfiguratioun nees uwendt. Setzt d'Gateway-Roll an d'sysctl-Konfiguratiounsdatei oder an den Netzwierkmanager, deem den Host gehéiert, an startet dann de Service nei, deen se uwendt.
D'Reiefolleg ass bei Tunnelen wichteg. Wann de Manager d'Interface beim Booten erstallt an d'Weiderleedung duerno uwendt, kann d'Interface den ale Standard ierwen. En Neistart vum Service, deen den Tunnel nei erstallt, ass och en Erstellungsereegnis, an dat ass liicht ze iwwersinn, wann d'Unit gesond ausgesäit. Iwwerpréift d'Reiefolleg, net just den endgültegen Inhalt vun der Datei.
Liest déi selwecht dräi Wäerter nach eng Kéier, nodeems de VPN sech nees verbonnen huet, an eng weider Kéier no engem Neistart. En nei erstallten Tunnel ass eng nei Interface, an eng nei Interface hëlt den Standard, deen zum Zäitpunkt vun der Erstellung gëllt. Wann d'Zuelen iwwer déi Ereignisser ännere, gëtt d'Konfiguratioun vun eppes ugewannt, dat Dir nach net identifizéiert hutt.
Reparéiert dat net mat deem falschen Instrument
Wéi d'Weiderleedung futti ausgesinn huet, ass d'Versuchung, d'Firewall ze leeden oder Masquerading derbäizesetzen. Keent vun deenen zwee adresséiert de Weiderleedungsschalter. Weiderleedungszustand, d'Erlaabnes weiderzeleeden, eng Route fir den Destinatioun an en Zeréckwee sinn véier getrennt Ufuerderungen, an nëmmen déi éischt ass de sysctl.
Test och mat dem richtegen Floss. Eng Ufro um Gateway selwer übt iwwerhaapt keng Weiderleedung aus; dat ass lokal generéierte Verkéier. D'Fro ass, ob e Pak, dee vun engem VPN-Client oder engem LAN-Host kënnt, akzeptéiert a weider gerout gëtt, dofir muss den Test hannert dem Gateway entstoen.
Hält den IPv6-Fall getrennt
Hei ass alles IPv4. IPv6-Weiderleedung, Router-Annoncen an d'Verhalen vun accept_ra hunn hir eege Steierungen, an en ipv4-Wee an eng ipv6-Astellung ze kopéieren erstellt eng Datei, déi plausibel ausgesäit an näischt Nëtzleches mécht. En Dual-Stack-Gateway brauch béid Sätz bewosst konfiguréiert.
Eng lescht Iwwerpréifung: nodeems d'Wäerter iwwerenee stëmmen, bestätegt, datt d'Route vum Tunnel fir den Destinatioun gewielt gëtt an datt den Äntwertwee existéiert. Weiderleedung ageschalt op enger Interface ouni Route ass nach ëmmer e schwaarzt Lach, an dee Feeler gesäit vun der Client-Säit identesch aus.