NAS Synology cu două porturi LAN: de ce eșuează handshake-ul VPN
O eroare de handshake înseamnă adesea că nu a ajuns niciun pachet. Găsiți adresa legată, reparați redirecționarea, urmăriți o captură, apoi verificați certificatele și transportul.
Laptopul raportează o eroare de handshake TLS, care sună ca o problemă de certificat și de obicei nu este. Pe un NAS cu două porturi Ethernet, cea mai frecventă cauză este o redirecționare a routerului îndreptată spre adresa pe care pachetul nu ascultă, iar mesajul clientului este identic în ambele cazuri. Pachetul nu răspunde pe al doilea port doar pentru că ambele cabluri sunt conectate. Înainte ca cineva să reemită un certificat, demonstrați că un pachet ajunge măcar la NAS.
Ce raportează clientul și ce s-a întâmplat de fapt
Eroarea de handshake de la un client OpenVPN este o etichetă generică. Acoperă o nepotrivire de certificat, o nepotrivire de transport, un ascultător pe alt port și o redirecționare care nu a livrat nimic. De aceea mesajul este inutil ca punct de plecare și util doar ca confirmare. Tratați-l ca pe afirmația că sesiunea nu s-a stabilit, și nimic mai specific.
Portul și adresa legată sunt cele două fapte care decid dacă un pachet ajunge vreodată.
Notați-le pe amândouă înainte de a schimba ceva, pentru că o corecție plauzibilă aplicată la nivelul greșit este felul în care o problemă de cincisprezece minute devine o după-amiază întreagă. Înregistrați interfața, adresa de pe ea, portul și transportul. Aceste patru valori sunt întregul drum de intrare, iar secțiunea următoare explică unde trăiește fiecare.
Găsiți adresa pe care ascultă pachetul
DSM numerotează porturile Ethernet și fiecare are propria adresă. Pagina VPN Server numește interfața folosită de serviciul OpenVPN, iar panoul de rețea arată adresa configurată pe acea interfață. Citiți-le în această ordine, de la serviciu spre exterior, ca să descrieți ce ascultă, nu ce presupuneți că ar trebui să folosească.
Serviciul leagă o singură adresă. Faptul că ambele porturi sunt conectate și active nu face serviciul să răspundă pe al doilea. O adresă statică pe o interfață lângă o adresă DHCP pe cealaltă vă dă două valori asemănătoare, ușor de încurcat dintr-o privire, mai ales când diferă doar în ultimul octet. Copiați adresa din panou în loc să o tastați din memorie. Apoi confirmați pe NAS ce este legat cu adevărat de port.
sudo ss -lunp | grep 1194Dacă acea ieșire numește o adresă la care nu vă așteptați, redirecționarea este îndreptată spre interfața greșită și tot restul aici este contabilitate. Corectați regula înainte de a citi mai departe, altfel veți ajunge să depanați un certificat din cauza unui pachet care nu a părăsit niciodată routerul.
Reparați redirecționarea, apoi urmăriți contorul
Editați regula de redirecționare existentă în loc să adăugați o a doua pentru același port extern. Două reguli pot coexista în tabelul unui router și doar una câștigă vreodată, ceea ce transformă o sesiune de depanare într-o dispută despre care este cea reală. Îndreptați adresa internă spre valoarea citită de pe NAS și lăsați portul intern să corespundă cu ceea ce ascultă serviciul.
Dacă DSM obține acea adresă prin DHCP, creați mai întâi o rezervare. O modificare a închirierii rupe în tăcere o redirecționare care funcționa ieri.
sudo tcpdump -i any -n udp port 1194Începeți captura înainte ca clientul să încerce conectarea și citiți adresa sursă în tot ce apare. Absolut nimic înseamnă că ceva pe drum a aruncat-o: redirecționarea, paravanul DSM sau interfața spre care era îndreptată, iar certificatele nu pot fi cauza cât timp acest lucru se menține. Ceva care vine de la adresa publică a clientului fără răspuns înseamnă că NAS a primit cererea și a ales să nu răspundă. Sunt constatări diferite, iar doar a doua vă trimite înapoi la setările pachetului însuși.
Abia atunci priviți certificatele și transportul
După ce pachetele ajung, reexportați profilul după orice modificare de certificat, deoarece fișierul vechi poartă încă autoritatea cu care a fost creat. Un profil editat manual pentru alt transport lasă clientul să aștepte un ascultător care nu există și raportează aceeași eroare generică precum tot restul. Comparați transportul din profil cu transportul pe care pachetul este configurat să îl deservească. Două profiluri pentru două transporturi sunt un proiect legitim, iar un profil editat pentru ambele nu este.
Testați din afara propriei rețele ca ultim pas, deoarece o conexiune din interiorul LAN-ului poate reuși pe un drum care nu atinge niciodată redirecționarea.
Păstrați profilul exportat, adresa interfeței și regula de redirecționare împreună într-o notă. Când o adresă se schimbă, acea notă este diferența dintre o reparație și o repetare. Nimic pe acest drum nu a cerut reinstalarea unui pachet, ceea ce merită reținut înainte ca următoarea repornire să fie învinuită.