VPN verbreekt met hetzelfde interval? Stem de timer af
Een onderbreking met een vast interval is een vingerafdruk. Vergelijk de tunnelsleutelvernieuwing, de NAT-idletimer, de DHCP-lease en de accountlimiet voordat u iets wijzigt.
Een tunnel die elke vijftien minuten sterft, of elk uur op dezelfde minuut, vertelt u dat een of andere timer is verlopen, niet dat het netwerk onstabiel is. De nuttige stap is het interval opschrijven en het vergelijken met de vier timers die dit patroon veroorzaken. Time-outs wijzigen vóór die vergelijking verplaatst de fout meestal zonder hem te verklaren, waardoor het volgende optreden moeilijker leesbaar is dan het eerste. De meting kost tien minuten en vervangt een week giswerk.
Maak van het interval een getal
Verzamel vijf of zes gevallen en bereken de tussenruimte, niet de ruimte vanaf het begin van de dag. Een onderbreking om 09:12, 10:12 en 11:12 is een uurgrens; een onderbreking om 09:12, 09:27 en 09:42 is vijftien minuten vanaf de laatste geslaagde verbinding. Rond het resultaat af op de meest waarschijnlijke timer, niet op de dichtstbijzijnde minuut.
Noteer twee momenten per gebeurtenis: wanneer het verkeer voor het laatst bewoog en wanneer de client de verbinding meldde. Ze verschillen wanneer een tunnel stil sterft en de client het pas bij de volgende verzending merkt, en dat verschil scheidt een idle-time-out van een harde fout. Een client die laat merkt, blaast het idle-venster op dat u meet.
Let op of de herverbinding automatisch is. Een client die binnen enkele seconden opnieuw verbindt, houdt het interval zichtbaar in het log en buiten het gebruikersrapport, waardoor deze fouten vaak als incidenteel worden beschreven in plaats van periodiek. Het verbergt de gebeurtenis ook voor de persoon die de laptop gebruikt.
Vier timers die op elkaar lijken
Bijna elke terugkerende tunnelstoring komt van een van deze: een protocol-sleutelvernieuwing, een verlopen idle-mapping, een DHCP- of interfacegebeurtenis, of een accountbeleid. Ze verschillen in of er verkeer liep en in wat het log bij de grens zegt.
De onderstaande signaturen zijn de moeite waard om te leren, omdat ze u drie verklaringen laten verwerpen op basis van één logregel:
| Timer | Typical trigger | What the log shows at the boundary |
|---|---|---|
| Protocol rekey | Traffic present, fixed interval | Negotiation lines, sometimes a failure |
| NAT or firewall idle | No traffic for minutes | Silence, then a timeout on send |
| DHCP lease or link change | Half the lease, or a radio event | Address or interface churn |
| Account session limit | Wall-clock hours since login | Clean disconnect, server-side reason |
De eerste rij is een beveiligingsmechanisme dat zijn werk doet, en de tweede is een tussenapparaat dat de toestand vergeet. Ze verwarren leidt ertoe dat u de vernieuwing verzwakt of achter een firewallregel aan jaagt die nooit betrokken was.
Bezet tegenover inactief vertelt u welke helft
Voer een gecontroleerde vergelijking uit met doorlopend verkeer, zoals een lange stream naar een host binnen de tunnel, en kijk of het interval verandert. Als de onderbreking verdwijnt terwijl er gegevens stromen, is de timer gebaseerd op inactiviteit.
Als hij doorlopend verkeer overleeft, hoort de oorzaak bij vernieuwing, lease of beleid. Die ene test verwijdert de helft van de kandidaten in ongeveer een uur observatie, en hij kost niets anders dan aandacht.
Houd het toegangsnetwerk ongewijzigd tijdens de test. Wisselen tussen Wi-Fi en Ethernet halverwege de vergelijking introduceert precies de interfacegebeurtenis die u van een timer probeert te onderscheiden.
Stem de logregel af op de grens
Lees de client- en serverlogs rond het vastgelegde moment, niet het hele bestand. Een vernieuwing toont onderhandeling; een idle-verloop toont niets tot het volgende pakket; een leasewijziging toont adreswerk; een beleidslimiet toont meestal een schone administratieve verbreking.
Deze opdrachten halen het relevante venster uit elke bron:
grep -iE "reneg|TLS Error|Inactivity" /var/log/openvpn.log | tail -20
journalctl -u NetworkManager --since "-90 min" | grep -iE "dhcp|link"
wg showAls de drie bronnen het eens zijn over de tijdstempel, kent u de eigenaar van de timer. Als alleen het clientlog iets bevat, beëindigt de server waarschijnlijk niet de sessie.
Repareer de fase, niet het pictogram
Elke eigenaar heeft één ondersteunde reparatie. Een vernieuwingsfout vereist compatibele voorstellen aan beide uiteinden. Een idle-verloop vereist een keepalive of een kortere idle-verwachting, binnen wat het pad toestaat. Een leasegebeurtenis vereist dat de interface- of energie-instellingen worden gecorrigeerd. Een accountlimiet is een beleidsbeslissing, geen bug.
Vernieuwing of authenticatie uitschakelen om het pictogram groen te houden, ruilt een zichtbare onderbreking voor een onzichtbare zwakte, en laat u niet kunnen zeggen wanneer de tunnel voor het laatst nieuwe sleutels onderhandelde. Test daarna de oorspronkelijke duur opnieuw en bewaar de tijdstempels, zodat de volgende gebeurtenis met deze kan worden vergeleken in plaats van opnieuw te beginnen.