Główna przyczyna błędów „curl: (56) SSL read: errno -5961”

9

Oceniałem niektóre błędy protokołu SSL i zauważyłem, że kiedy skorzystałem curlz jednej z wadliwych stron, dostałem curl: (56) SSL read: errno -5961; jednak moje zapytania google dotyczące tego błędu nie pokazały przyczyny niepowodzenia openssl.

Pytanie : Co to znaczy, że zawijanie się nie powiedzie curl: (56) SSL read: errno -5961?


Podaję pełną curlponiżej ...

[mpenning@mpenning-lnx ~]$ curl -vk https://192.0.2.168/
* About to connect() to 192.0.2.168 port 443 (#0)
*   Trying 192.0.2.168... connected
* Connected to 192.0.2.168 (192.0.2.168) port 443 (#0)
* Initializing NSS with certpath: sql:/etc/pki/nssdb
* warning: ignoring value of ssl.verifyhost
* skipping SSL peer certificate verification
* SSL connection using TLS_RSA_WITH_AES_256_CBC_SHA
* Server certificate:
*       subject: CN=foo-console,L=New York,OU=IT Infrastructure,O=Sesame Street
*       start date: Aug 21 23:36:51 2013 GMT
*       expire date: Aug 21 23:36:51 2015 GMT
*       common name: foo-console
*       issuer: CN=foo-console,L=New York,OU=IT Infrastructure,O=Sesame Street
> GET / HTTP/1.1
> User-Agent: curl/7.19.7 (x86_64-redhat-linux-gnu) libcurl/7.19.7 NSS/3.14.0.0 zlib/1.2.3 libidn/1.18 libssh2/1.4.2
> Host: 192.0.2.168
> Accept: */*
>
< HTTP/1.1 200 OK
* SSL read: errno -5961
* Closing connection #0
curl: (56) SSL read: errno -5961
[mpenning@mpenning-lnx ~]$

UWAGA :

Odpowiadam na własne pytanie, mając nadzieję na pomoc przyszłym pracownikom Google.

Mike Pennington
źródło

Odpowiedzi:

7

Główną przyczyną tego problemu jest niedopasowanie warstwy 2 MTU, co spowodowało, że gniazdo openssl przekroczyło limit czasu podczas transakcji zwijania. Pakiety pełnych rozmiarów MTU (tj. 1500 bajtów danych IP) nie powiodły się, ponieważ jedna strona tunelu warstwy 2 nie przepuściła ich.

Inne osoby widzące ten błąd mogą nie mieć niedopasowania MTU, ale może to być wszystko, co powoduje przekroczenie limitu czasu sesji SSL przez całą drogę curl.

Mike Pennington
źródło
Czy mogę wiedzieć, jak rozwiązać problem? Dziękuję Ci.
@ jngshl, zauważyłem, że wystąpiło niedopasowanie MTU (które odkryłem za pomocą tracepathpolecenia ). Potem po prostu dopasowałem MTU w całym Vlan.
Mike Pennington