Поэтому я не могу подключиться к определенным веб-сайтам. Лишь немногие, большинство в порядке. Тот, кого я действительно волную, это paypal.com.
Я сделал обычные вещи. Посмотрим:
- Очищена история просмотров
- Пробовал разные браузеры
- Деинсталлирован и загружен / установлен свежий браузер
- Система восстановлена до появления проблемы
- Установлены все системные патчи
- Проверил мой etc / hosts
- Очищен кеш DNS
- Проверен брандмауэр
- Включен и выключен антивирус
- Включил и выключил блокировку рекламы
- пинговать сайты
- Подключение напрямую к точке доступа провайдера без использования маршрутизатора
В конце концов, я решил посмотреть, что керл говорит в деталях
== Info: About to connect() to www.paypal.com port 443 (#0)
== Info: Trying 66.211.169.2... == Info: connected
== Info: SSLv3, TLS handshake, Client hello (1):
=> Send SSL data, 110 bytes (0x6e)
0000: 01 00 00 6a 03 01 4f 6c aa 8c 57 2b 3d 1e 74 64 ...j..Ol..W+=.td
0010: c1 27 25 a5 3a 12 7f 3f 41 0a 17 15 2e c9 67 7c .'%.:.?A.....g|
0020: b3 e1 f6 9a db a9 00 00 2a 00 39 00 38 00 35 00 ........*.9.8.5.
0030: 16 00 13 00 0a 00 33 00 32 00 2f 00 07 00 05 00 ......3.2./.....
0040: 04 00 15 00 12 00 09 00 14 00 11 00 08 00 06 00 ................
0050: 03 00 ff 01 00 00 17 00 00 00 13 00 11 00 00 0e ................
0060: 77 77 77 2e 70 61 79 70 61 6c 2e 63 6f 6d www.paypal.com
(hangs here for ever)
Мне кажется, что PayPal отказывается отвечать на первое рукопожатие SSL.
Я не знаю много о SSL, но сравнение с выводом с сайта, который работает для меня, кажется, делает это очевидным
== Info: About to connect() to www.cibc.com port 443 (#0)
== Info: Trying 159.231.80.200... == Info: connected
== Info: SSLv3, TLS handshake, Client hello (1):
=> Send SSL data, 108 bytes (0x6c)
0000: 01 00 00 68 03 01 4f 6c ad 6a 1f 67 d5 84 c4 4b ...h..Ol.j.g...K
0010: 0d 49 ae d6 b9 5b c3 63 f9 48 aa 18 da 43 d1 32 .I...[.c.H...C.2
0020: 47 ae 17 e5 cd e9 00 00 2a 00 39 00 38 00 35 00 G.......*.9.8.5.
0030: 16 00 13 00 0a 00 33 00 32 00 2f 00 07 00 05 00 ......3.2./.....
0040: 04 00 15 00 12 00 09 00 14 00 11 00 08 00 06 00 ................
0050: 03 00 ff 01 00 00 15 00 00 00 11 00 0f 00 00 0c ................
0060: 77 77 77 2e 63 69 62 63 2e 63 6f 6d www.cibc.com
== Info: SSLv3, TLS handshake, Server hello (2):
<= Recv SSL data, 74 bytes (0x4a)
0000: 02 00 00 46 03 01 00 00 58 cf 26 e2 e1 65 db 11 ...F....X.&..e..
0010: bc 6f 26 7b 3b 6d eb 14 5f ad 47 dd 86 ea 4d a3 .o&{;m.._.G...M.
0020: fb 9f b7 2a 54 3e 20 5f 6b 04 5a 12 38 64 5d 18 ...*T> _k.Z.8d].
0030: 65 9e e9 cd 61 eb 91 c1 16 25 61 30 bb 08 2a 78 e...a....%a0..*x
0040: b8 ee b8 7e f2 65 6a 00 04 00 ...~.ej...
== Info: SSLv3, TLS handshake, CERT (11):
... and so on - working nicely eventually get some nice HTML
Теперь я застрял. Это продолжается уже пять дней, поэтому я уверен, что проблема не в PayPal. Но что в моей системе может мешать SSL-квитированию, выполняемому curl с этим конкретным сайтом?
Затем я установил WireShark для захвата пакетов, которыми обмениваются с paypal.com
No. Time Source Destination Protocol Length Info
123 118.847059 192.168.100.3 66.211.169.14 TCP 66 59884 > https [SYN] Seq=0 Win=8192 Len=0 MSS=1460 WS=4 SACK_PERM=1
124 118.982913 66.211.169.14 192.168.100.3 TCP 66 https > 59884 [SYN, ACK] Seq=0 Ack=1 Win=4380 Len=0 MSS=1440 WS=1 SACK_PERM=1
125 118.982981 192.168.100.3 66.211.169.14 TCP 54 59884 > https [ACK] Seq=1 Ack=1 Win=66240 Len=0
126 118.983728 192.168.100.3 66.211.169.14 SSL 240 Client Hello
129 119.373787 192.168.100.3 66.211.169.14 SSL 240 [TCP Retransmission] Client Hello
132 119.560671 66.211.169.14 192.168.100.3 SSL 153 [TCP Previous segment lost] Continuation Data
133 119.560714 192.168.100.3 66.211.169.14 TCP 66 [TCP Dup ACK 129#1] 59884 > https [ACK] Seq=187 Ack=1 Win=66240 Len=0 SLE=4381 SRE=4480
Очень интересно!
Приветствие клиента передается повторно менее чем через 0,5 с. Зачем? Может ли это быть смущающим? Могу ли я как-то это контролировать?
Ответ получен от PayPal, но он считается «потерянным предыдущим фрагментом», что может показаться моей проблемой. Как это решить ???
Похоже, что это может быть проблема сети. Это происходит с двумя машинами, подключенными к этому провайдеру. Однако, когда я подключаю одну из машин, показывающих проблему в этой сети, к Интернету в доме друзей, у которого есть другой провайдер, проблема исчезает!
(Примечание: как я подключаюсь к интернету (AFAIK). Я подключаю порт Ethernet на моем компьютере к маленькому черному ящику, который называется «точка беспроводного доступа». Это, в свою очередь, связано с тем, что похоже на прочный кабель Ethernet, подключенный к микроволновой печи на моей крыше, которая подключается через серию микроволновых антенн к Интернету. )
Что мне сказать провайдеру? Они не будут верить, что их сеть мешает SSL-квитированию с определенных сайтов, но не с других.
Вот ссылка на захват Wireshark SSL-рукопожатия