Tunelul funcționa în rețeaua biroului și se blochează acasă, iar jurnalul arată că primul schimb se încheie înainte să se întâmple orice altceva. Acest model indică schimbul de autentificare, nu acreditările: un lanț de certificate face acel mesaj mult mai mare decât cel anterior, iar o cale care nu suportă datagrame mari îl va arunca în liniște. Sunt implicate două mecanisme de fragmentare diferite, iar să știi pe care îl privești decide corecția.

Două mecanisme de fragmentare, un singur simptom

IKEv2 are propria extensie de fragmentare, definită în RFC 7383, care împarte mesajele IKE protejate în mesaje IKE mai mici. Partenerii negociază această capacitate, iar mesajul este reasamblat de implementarea IKE, nu de stratul IP.

Fragmentarea IP obișnuită este un mecanism diferit, cu un mod de eșec diferit. Un router între parteneri fragmentează un datagram mare sau îl aruncă și returnează un mesaj ICMP care poate să nu ajungă niciodată la expeditor. Unele rețele aruncă fragmentele în liniște, iar unele dispozitive intermediare tratează primul fragment, dar nu restul. Din perspectiva aplicației, toate cele trei cazuri arată la fel.

Traversarea NAT adaugă o a treia variabilă, pentru că ESP este atunci împachetat în UDP și pachetul exterior devine mai mare, deși arată ca trafic UDP obișnuit pe portul 4500. O cale care lasă UDP să treacă bine poate eșua totuși pe un datagram care nu mai încape.

Citiți schimbul care a eșuat

Căutați tranziția, nu eroarea. Un jurnal care arată primul schimb trimis și răspuns, urmat de nimic, vă spune că mesajul următor nu s-a încheiat niciodată. Creșteți temporar nivelul jurnalului și comparați dimensiunile raportate pe ambii parteneri.

Ce doriți să stabiliți este dacă respondenții au văzut cererea. Dacă inițiatorul a trimis ceva și respondentul nu are nicio înregistrare despre asta, problema este livrarea. Dacă respondentul a analizat o cerere și a respins-o, problema este certificatul însuși, iar fragmentarea este o distragere. Această distincție valorează mai mult decât o pagină de mesaje de expirare.

Schimbați calea, nu certificatul

Testați același client, același certificat și aceeași configurație dintr-o altă rețea. Un hotspot mobil este de obicei a doua cale cea mai ieftină și este cu adevărat diferit de legătura biroului, nu doar nominal.

Dacă strângerea de mână se încheie pe a doua cale, lanțul de certificate este în regulă și prima cale este variabila. Dacă eșuează identic pe ambele, opriți testarea rețelelor și priviți mesajele în sine. Acea singură comparație elimină aproximativ jumătate din explicațiile posibile.

Măsurați schimbul înainte de a edita ceva

Obțineți dimensiunea lanțului și dimensiunea căii. Ambele numere limitează ce poate trimite strângerea de mână, iar ambele sunt ieftin de măsurat:

openssl crl2pkcs7 -nocrl -certfile chain.pem | openssl pkcs7 -print_certs -noout | grep -c subject
ls -l chain.pem
ping -M do -s 1400 198.51.100.7
ip -s link show eth0 | sed -n '1,6p'

Primele două dau numărul de certificate și dimensiunea fișierului, ceea ce este un indicator rezonabil pentru cât de mare va fi mesajul de autentificare. Sonda ping raportează dacă un datagram de acea dimensiune supraviețuiește pe cale, iar contoarele interfeței arată dacă fragmentele au fost aruncate la capătul dumneavoastră. În Windows, sonda echivalentă este un ping cu indicatorul do-not-fragment și o dimensiune explicită a încărcăturii utile.

Repetați sonda în jos până când reușește. Cea mai mare dimensiune care trece este bugetul de lucru pentru acea cale și este mai utilă decât orice valoare implicită publicată.

Reparați stratul care este cu adevărat stricat

Dacă calea aruncă datagrame mari, activați fragmentarea IKE pe ambii parteneri și confirmați că extensia a fost negociată, nu doar oferită. Dacă calea tratează prost fragmentele la nivel IP, corecția aparține acolo sau MTU-ului interfeței exterioare, nu depozitului de certificate.

Dacă lanțul este inutil de lung, scurtați-l la certificatele intermediare de care un partener are cu adevărat nevoie. Eliminarea unei rădăcini în care clientul are deja încredere este întreținere rezonabilă; eliminarea unuia intermediar nu este, iar dezactivarea verificării pentru a micșora un mesaj schimbă o problemă de livrare pe una de securitate.

Notați ce mecanism ați schimbat și cum a arătat strângerea de mână după aceea. Următoarea apariție este de obicei într-o altă rețea cu același simptom, iar nota este cea care transformă două ore în zece minute.

Articole similare