{"id":501791,"date":"2026-11-05T15:44:01","date_gmt":"2026-11-05T12:44:01","guid":{"rendered":"https:\/\/savepearlharbor.com\/?p=501791"},"modified":"2026-11-05T15:44:01","modified_gmt":"2026-11-05T12:44:01","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=501791","title":{"rendered":"HTTP 200, \u0430 \u0441\u0430\u0439\u0442 \u043d\u0435 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442\u0441\u044f: \u043a\u0430\u043a \u044f \u0438\u0441\u043a\u0430\u043b \u043f\u0440\u0438\u0447\u0438\u043d\u0443 \u0437\u0430\u0432\u0438\u0441\u0430\u043d\u0438\u044f HTTPS \u043d\u0430 Hetzner"},"content":{"rendered":"<div xmlns=\"http:\/\/www.w3.org\/1999\/xhtml\">\n<p>\u041f\u0440\u0438 \u0434\u0435\u043f\u043b\u043e\u0435 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u0432\u0435\u0431-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u044f \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441\u043e \u0441\u0442\u0440\u0430\u043d\u043d\u043e\u0439 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043e\u0439. \u0421\u0435\u0440\u0432\u0435\u0440 \u0440\u0430\u0431\u043e\u0442\u0430\u043b, \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u0431\u044b\u043b \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d, \u0447\u0435\u0440\u0435\u0437 \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0439 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0441\u0430\u0439\u0442 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u043b\u0441\u044f. \u0410 \u0441 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u043b\u0441\u044f.<\/p>\n<p>\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0447\u0435\u0440\u0435\u0437 <code>curl<\/code> \u043f\u043e\u043a\u0430\u0437\u0430\u043b\u0430, \u0447\u0442\u043e TLS-\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u043b\u043e\u0441\u044c \u0438 \u0441\u0435\u0440\u0432\u0435\u0440 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u043b <code>HTTP 200 OK<\/code>, \u043d\u043e \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0437\u0430\u0432\u0438\u0441\u0430\u043b\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0435\u0440\u0432\u044b\u0445 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u043a\u0438\u043b\u043e\u0431\u0430\u0439\u0442. \u041f\u0440\u0438\u0447\u0451\u043c \u0442\u0430\u043a\u043e\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u0447\u0435\u0440\u0435\u0437 <strong>\u0411\u0438\u043b\u0430\u0439\u043d, \u04222 \u0438 \u041c\u0435\u0433\u0430\u0424\u043e\u043d<\/strong>.<\/p>\n<p>\u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u044f \u043f\u043e\u0434\u043e\u0437\u0440\u0435\u0432\u0430\u043b \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f. \u0412 \u0438\u0442\u043e\u0433\u0435 \u0434\u043e\u0448\u0451\u043b \u0434\u043e <code>tcpdump<\/code>, \u0443\u0432\u0438\u0434\u0435\u043b \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 TCP-\u0441\u0435\u0433\u043c\u0435\u043d\u0442\u043e\u0432 \u0438 \u043f\u0435\u0440\u0435\u043d\u0451\u0441 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 \u0440\u043e\u0441\u0441\u0438\u0439\u0441\u043a\u0438\u0439 VPS. \u0420\u0430\u0441\u0441\u043a\u0430\u0436\u0443, \u0447\u0442\u043e \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0432\u044b\u044f\u0441\u043d\u0438\u0442\u044c \u0438 \u043f\u043e\u0447\u0435\u043c\u0443 \u044f \u043f\u043e\u0434\u043e\u0437\u0440\u0435\u0432\u0430\u044e DPI\/\u0422\u0421\u041f\u0423, \u0445\u043e\u0442\u044f \u0434\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0438\u0445 \u0443\u0447\u0430\u0441\u0442\u0438\u0435 \u043d\u0435 \u0441\u043c\u043e\u0433.<\/p>\n<blockquote>\n<p><strong>\u041e\u0431 \u043e\u0431\u0435\u0437\u043b\u0438\u0447\u0438\u0432\u0430\u043d\u0438\u0438.<\/strong> \u0414\u043e\u043c\u0435\u043d\u044b \u0438 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0435 IP-\u0430\u0434\u0440\u0435\u0441\u0430 \u0432 \u0441\u0442\u0430\u0442\u044c\u0435 \u0437\u0430\u043c\u0435\u043d\u0435\u043d\u044b \u043d\u0430 \u0430\u043b\u0438\u0430\u0441\u044b: <code>app-a.example<\/code>, <code>app-b.example<\/code>, <code>203.0.113.10<\/code> (\u0441\u0435\u0440\u0432\u0435\u0440) \u0438 <code>198.51.100.25<\/code> (\u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u043a\u043b\u0438\u0435\u043d\u0442). \u042d\u0442\u043e <a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc5737.html\" rel=\"noopener nofollow\">\u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0437\u0430\u0440\u0435\u0437\u0435\u0440\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438<\/a> \u0430\u0434\u0440\u0435\u0441\u0430 \u0438 <a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc2606.html\" rel=\"noopener nofollow\">\u0434\u043e\u043c\u0435\u043d\u044b<\/a>, \u0430 \u043d\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u0445\u043e\u0441\u0442\u044b. \u0412\u0441\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u043d\u043d\u044b\u0435 \u043d\u0438\u0436\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0441 \u043d\u0438\u043c\u0438 \u2014 <strong>\u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0440\u0435\u0430\u043b\u044c\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0445 \u043a\u043e\u043c\u0430\u043d\u0434<\/strong>, \u0430 \u043d\u0435 \u0433\u043e\u0442\u043e\u0432\u044b\u0435 \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043a\u043e\u043f\u0438\u043f\u0430\u0441\u0442\u044b. \u0427\u0438\u0441\u043b\u043e\u0432\u044b\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b <code>curl<\/code>, TCP <code>seq<\/code>\/<code>ack<\/code> \u0438 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u044b \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u044b \u0438\u0437 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430.<\/p>\n<\/blockquote>\n<h3>\u0427\u0442\u043e \u0431\u044b\u043b\u043e \u0440\u0430\u0437\u0432\u0451\u0440\u043d\u0443\u0442\u043e<\/h3>\n<p>\u041d\u0430 VPS Hetzner \u0432 \u0424\u0438\u043d\u043b\u044f\u043d\u0434\u0438\u0438 \u0431\u044b\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b Ubuntu 24.04, Docker \u0438 Caddy \u0432 \u0440\u043e\u043b\u0438 \u0432\u0445\u043e\u0434\u043d\u043e\u0433\u043e reverse proxy. \u041d\u0430 \u043e\u0434\u043d\u043e\u043c \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e\u043c IPv4 \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438 \u0434\u0432\u0430 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f:<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<p align=\"left\">\n<\/th>\n<th>\n<p align=\"left\">\u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 A<\/p>\n<\/th>\n<th>\n<p align=\"left\">\u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 B<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">\u0423\u0441\u043b\u043e\u0432\u043d\u044b\u0439 \u0434\u043e\u043c\u0435\u043d<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>app-a.example<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>app-b.example<\/code><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">\u0422\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438<\/p>\n<\/td>\n<td>\n<p align=\"left\">React, Next.js, TypeScript<\/p>\n<\/td>\n<td>\n<p align=\"left\">React 19, JavaScript (JSX), CSS<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">\u0412\u0435\u0431-\u0441\u043b\u043e\u0439<\/p>\n<\/td>\n<td>\n<p align=\"left\">Caddy \u2192 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f<\/p>\n<\/td>\n<td>\n<p align=\"left\">Caddy \u2192 Nginx 1.27 \u0432\u043d\u0443\u0442\u0440\u0438 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f (\u0440\u0430\u0437\u0434\u0430\u0451\u0442 SPA)<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">\u041f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 IP<\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>203.0.113.10<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\"><code>203.0.113.10<\/code><\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u0414\u043b\u044f \u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440 \u0441 Windows \u0438 <code>curl\/8.21.0<\/code> \u0441 TLS-\u0431\u044d\u043a\u0435\u043d\u0434\u043e\u043c Schannel. \u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u043d\u0430 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440 \u0440\u0430\u0437\u0434\u0430\u0432\u0430\u043b \u0441 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430. \u0422\u0430\u043a \u0431\u044b\u043b\u043e \u0443\u0434\u043e\u0431\u043d\u0435\u0435 \u0441\u043d\u0438\u043c\u0430\u0442\u044c \u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0442\u044c \u0432\u044b\u0432\u043e\u0434 \u043a\u043e\u043c\u0430\u043d\u0434, \u043e\u0441\u0442\u0430\u0432\u0430\u044f\u0441\u044c \u0432 \u0442\u043e\u0439 \u0436\u0435 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0439 \u0441\u0435\u0442\u0438.<\/p>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/extt\/2e\/5d\/5c\/2e5d5c895c4f7f5d01c3041dd614ad93.png\" alt=\"\u041b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0442\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u044f \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430: \u043a\u043b\u0438\u0435\u043d\u0442, \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u0430\u044f \u0441\u0435\u0442\u044c, Hetzner \u0438 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b\" sizes=\"(max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/extt\/2e\/5d\/5c\/2e5d5c895c4f7f5d01c3041dd614ad93.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/extt\/2e\/5d\/5c\/2e5d5c895c4f7f5d01c3041dd614ad93.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u041b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0442\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u044f \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430: \u043a\u043b\u0438\u0435\u043d\u0442, \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u0430\u044f \u0441\u0435\u0442\u044c, Hetzner \u0438 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b<\/figcaption><\/div>\n<\/figure>\n<p><em>\u041d\u0430 \u0441\u0445\u0435\u043c\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u044b \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a\u0438 \u043e\u0431\u043c\u0435\u043d\u0430. \u041d\u0430 \u043a\u0430\u043a\u043e\u043c \u0441\u0435\u0442\u0435\u0432\u043e\u043c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435 \u0442\u0435\u0440\u044f\u043b\u0438\u0441\u044c \u0434\u0430\u043d\u043d\u044b\u0435, \u0432\u044b\u044f\u0441\u043d\u0438\u0442\u044c \u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 DPI\/\u0422\u0421\u041f\u0423 \u0437\u0434\u0435\u0441\u044c \u043d\u0435 \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u044b.<\/em><\/p>\n<h4>\u041f\u0440\u0438 \u0447\u0451\u043c \u0437\u0434\u0435\u0441\u044c \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 \u0434\u043e\u043c\u0435\u043d\u0430?<\/h4>\n<p>\u0414\u043e\u043c\u0435\u043d\u0430\u043c\u0438 \u044f \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u043b \u0447\u0435\u0440\u0435\u0437 \u0440\u0430\u0437\u043d\u044b\u0435 \u043f\u043b\u043e\u0449\u0430\u0434\u043a\u0438: Selectel \u0438 Cloudflare. \u0423\u043f\u043e\u043c\u0438\u043d\u0430\u044e \u044d\u0442\u043e, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043f\u043e \u043d\u0435\u0437\u043d\u0430\u043d\u0438\u044e \u043f\u0440\u0438 \u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0435 \u043b\u0435\u0433\u043a\u043e \u043d\u0430\u0447\u0430\u0442\u044c \u043f\u043e\u0434\u043e\u0437\u0440\u0435\u0432\u0430\u0442\u044c \u0437\u0430\u0440\u0443\u0431\u0435\u0436\u043d\u044b\u0439 DNS \u0438\u043b\u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430.<\/p>\n<p>\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 \u0434\u043e\u043c\u0435\u043d\u0430 \u043d\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u0442 \u0447\u0435\u0440\u0435\u0437 \u0441\u0435\u0431\u044f HTTPS-\u0442\u0440\u0430\u0444\u0438\u043a. \u041e\u043d \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u0437\u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044e \u0434\u043e\u043c\u0435\u043d\u0430, \u0430 DNS \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043a\u043b\u0438\u0435\u043d\u0442\u0443 \u0443\u0437\u043d\u0430\u0442\u044c \u0430\u0434\u0440\u0435\u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u0430. \u041f\u043e\u0441\u043b\u0435 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0438\u043c\u0435\u043d\u0438 \u0431\u0440\u0430\u0443\u0437\u0435\u0440 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0441 IP \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f. \u0415\u0441\u043b\u0438 \u043e\u0431\u0430 \u0434\u043e\u043c\u0435\u043d\u0430 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0442 \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u043d\u0430 \u043e\u0434\u0438\u043d \u0438 \u0442\u043e\u0442 \u0436\u0435 IP, \u0441\u0430\u043c \u0444\u0430\u043a\u0442 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0432 \u0420\u043e\u0441\u0441\u0438\u0438 \u0438\u043b\u0438 \u0437\u0430 \u0440\u0443\u0431\u0435\u0436\u043e\u043c \u043d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0438\u0439 \u043c\u0430\u0440\u0448\u0440\u0443\u0442 \u043f\u0430\u043a\u0435\u0442\u043e\u0432.<\/p>\n<p>\u0423 \u043c\u0435\u043d\u044f Cloudflare \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0441\u044f \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 <strong>DNS only<\/strong>, \u0431\u0435\u0437 \u043f\u0440\u043e\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f (\u0441\u0435\u0440\u043e\u0435 \u043e\u0431\u043b\u0430\u043a\u043e). \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0448\u043b\u0438 \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043d\u0430 Hetzner, \u0430 \u043d\u0435 \u0447\u0435\u0440\u0435\u0437 \u0441\u0435\u0442\u044c Cloudflare. \u041e \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0435 \u0441 \u043f\u0440\u043e\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443 \u0431\u043b\u0438\u0436\u0435 \u043a \u043a\u043e\u043d\u0446\u0443.<\/p>\n<h3>\u041a\u0430\u043a \u043f\u0440\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430<\/h3>\n<p>\u041d\u0430 \u0441\u0442\u0430\u0440\u0442\u0435 \u0441\u0430\u0439\u0442 A \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u043b\u0441\u044f \u0441 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430 \u043f\u043e <strong>HTTP \u0438 \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u043f\u043e IP<\/strong>. \u041f\u043e\u0441\u043b\u0435 \u043f\u0440\u0438\u0432\u044f\u0437\u043a\u0438 \u0434\u043e\u043c\u0435\u043d\u0430 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 HTTPS \u0447\u0435\u0440\u0435\u0437 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u043e\u043d \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u043b \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0442\u044c\u0441\u044f. \u041f\u0440\u0438 \u044d\u0442\u043e\u043c \u0447\u0435\u0440\u0435\u0437 \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0439 Wi-Fi HTTPS \u0440\u0430\u0431\u043e\u0442\u0430\u043b.<\/p>\n<p>\u0412 \u044d\u0442\u0438\u0445 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430\u0445 \u0440\u0430\u0437\u043b\u0438\u0447\u0430\u043b\u0438\u0441\u044c \u0441\u0440\u0430\u0437\u0443 \u0434\u0432\u0435 \u0432\u0435\u0449\u0438: \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u043f\u043e IP \u0438\u043b\u0438 \u0434\u043e\u043c\u0435\u043d\u0443 \u0438 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b, HTTP \u0438\u043b\u0438 HTTPS. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432 \u0442\u043e\u0442 \u043c\u043e\u043c\u0435\u043d\u0442 \u043d\u0435\u043b\u044c\u0437\u044f \u0431\u044b\u043b\u043e \u0443\u0432\u0435\u0440\u0435\u043d\u043d\u043e \u0443\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0442\u044c, \u0447\u0442\u043e \u00ab\u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 \u0431\u043b\u043e\u043a\u0438\u0440\u0443\u0435\u0442 HTTPS\u00bb. \u041d\u0443\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0432\u044b\u044f\u0441\u043d\u0438\u0442\u044c, \u0434\u043e \u043a\u0430\u043a\u043e\u0439 \u0441\u0442\u0430\u0434\u0438\u0438 \u0432\u043e\u043e\u0431\u0449\u0435 \u0434\u043e\u0445\u043e\u0434\u0438\u0442 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435.<\/p>\n<p>\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u043d\u0430\u0447\u0430\u043b \u0441 \u0411\u0438\u043b\u0430\u0439\u043d\u0430.<\/p>\n<h3>TLS \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. HTTP 200 \u0442\u043e\u0436\u0435. \u0410 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u043d\u0435\u0442<\/h3>\n<p>\u041d\u0430 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0435, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0451\u043d\u043d\u043e\u043c \u043a \u0440\u0430\u0437\u0434\u0430\u0447\u0435 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430 \u0441 \u0411\u0438\u043b\u0430\u0439\u043d\u043e\u043c, \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b:<\/p>\n<pre><code class=\"bash\">curl -4 -vk --http1.1 --connect-timeout 10 --max-time 20 https:\/\/app-a.example\/<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper\"><\/span><\/a><\/div><\/pre>\n<p>\u0417\u0434\u0435\u0441\u044c <code>-4<\/code> \u043f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u0442 IPv4, <code>--http1.1<\/code> \u0444\u0438\u043a\u0441\u0438\u0440\u0443\u0435\u0442 \u0432\u0435\u0440\u0441\u0438\u044e HTTP \u0434\u043b\u044f \u0441\u043e\u043f\u043e\u0441\u0442\u0430\u0432\u0438\u043c\u043e\u0441\u0442\u0438 \u0442\u0435\u0441\u0442\u043e\u0432, \u0430 <code>-v<\/code> \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0434\u0435\u0442\u0430\u043b\u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f. <code>-k<\/code> \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442 <strong>\u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430<\/strong>, \u043d\u043e \u043d\u0435 TLS-\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435; \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0439 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u043e\u0439 \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0441\u0442\u0438 \u0446\u0435\u043f\u043e\u0447\u043a\u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u044d\u0442\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u043d\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f.<\/p>\n<p>\u0412 \u043b\u043e\u0433\u0435 \u0443\u0432\u0438\u0434\u0435\u043b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 (\u0430\u0434\u0440\u0435\u0441\u0430 \u0437\u0430\u043c\u0435\u043d\u0435\u043d\u044b):<\/p>\n<pre><code>* Host app-a.example:443 was resolved.* IPv4: 203.0.113.10* Trying 203.0.113.10:443...* ALPN: server accepted http\/1.1* Established connection to app-a.example (203.0.113.10 port 443)&gt; GET \/ HTTP\/1.1&gt; Host: app-a.example* Request completely sent off&lt; HTTP\/1.1 200 OK&lt; Content-Type: text\/html; charset=utf-8&lt; Via: 1.1 Caddy&lt; Transfer-Encoding: chunked...* Operation timed out after 20006 milliseconds with 2366 bytes receivedcurl: (28) Operation timed out after 20006 milliseconds with 2366 bytes received<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u0418\u0437 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043d\u043e\u0433\u043e \u0432\u044b\u0448\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e DNS \u0440\u0430\u0437\u0440\u0435\u0448\u0438\u043b\u0441\u044f, TCP-\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u043e\u0441\u044c, TLS \u043f\u0440\u043e\u0448\u0451\u043b, \u0437\u0430\u043f\u0440\u043e\u0441 \u0443\u0448\u0451\u043b, \u0430 \u0441\u0435\u0440\u0432\u0435\u0440 \u0432\u0435\u0440\u043d\u0443\u043b <code>200 OK<\/code>. \u041d\u043e \u0442\u0435\u043b\u043e \u043e\u0442\u0432\u0435\u0442\u0430 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u043e\u0441\u044c \u043d\u0430 <strong>2366 \u0431\u0430\u0439\u0442\u0430\u0445<\/strong>. \u0427\u0435\u0440\u0435\u0437 20 \u0441\u0435\u043a\u0443\u043d\u0434 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b \u0442\u0430\u0439\u043c-\u0430\u0443\u0442.<\/p>\n<p>\u042d\u0442\u043e \u0443\u0436\u0435 \u043d\u0435 \u043f\u043e\u0445\u043e\u0436\u0435 \u043d\u0430 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0439, \u043a\u043e\u0433\u0434\u0430 \u0444\u0438\u043b\u044c\u0442\u0440 \u0440\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0451\u0442 SNI \u0432 <code>ClientHello<\/code> \u0438 \u0441\u0440\u0430\u0437\u0443 \u0441\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0435\u0442 TLS-\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435. \u0417\u0434\u0435\u0441\u044c HTTPS-\u0441\u0435\u0441\u0441\u0438\u044f \u0443\u0441\u043f\u0435\u043b\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0441\u044f \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u0447\u0430\u0441\u0442\u044c HTTP-\u043e\u0442\u0432\u0435\u0442\u0430.<\/p>\n<h4>\u0421\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0441\u0442\u044c \u0438\u043b\u0438 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u0430\u044f \u0433\u0440\u0430\u043d\u0438\u0446\u0430?<\/h4>\n<p>\u041f\u043e\u0432\u0442\u043e\u0440\u0438\u043b \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0443, \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0432 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0434\u043e 10 \u041a\u0411\/\u0441 \u0438 \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432 \u0442\u0430\u0439\u043c-\u0430\u0443\u0442 \u0434\u043e 30 \u0441\u0435\u043a\u0443\u043d\u0434:<\/p>\n<pre><code class=\"bash\">curl -4 -vk --http1.1 --max-time 30 --limit-rate 10k -o NUL https:\/\/app-a.example\/<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043e\u043a\u0430\u0437\u0430\u043b\u0441\u044f \u0442\u0435\u043c \u0436\u0435:<\/p>\n<pre><code>curl: (28) Operation timed out after 30004 millisecondswith 2366 bytes received<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u0417\u0430\u0442\u0435\u043c \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043b \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0439 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 <code>\/icon.svg<\/code> \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c 230 \u0431\u0430\u0439\u0442. \u041e\u043d \u0446\u0435\u043b\u0438\u043a\u043e\u043c \u0441\u043a\u0430\u0447\u0430\u043b\u0441\u044f \u0438 \u0447\u0435\u0440\u0435\u0437 \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0439 Wi-Fi, \u0438 \u0447\u0435\u0440\u0435\u0437 \u0411\u0438\u043b\u0430\u0439\u043d. \u041d\u043e \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 CSS \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441\u043d\u043e\u0432\u0430 \u0437\u0430\u0432\u0438\u0441 \u043f\u043e\u0441\u043b\u0435 <strong>2366 \u0431\u0430\u0439\u0442<\/strong>.<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<p align=\"left\">\u0417\u0430\u043f\u0440\u043e\u0441<\/p>\n<\/th>\n<th>\n<p align=\"left\">\u0421\u0435\u0442\u044c<\/p>\n<\/th>\n<th>\n<p align=\"left\">\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u043e<\/p>\n<\/th>\n<th>\n<p align=\"left\">\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">HTML \u0433\u043b\u0430\u0432\u043d\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0411\u0438\u043b\u0430\u0439\u043d<\/p>\n<\/td>\n<td>\n<p align=\"left\">2366 \u0411<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0422\u0430\u0439\u043c-\u0430\u0443\u0442, 20 \u0441<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">HTML \u0441 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435\u043c \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0411\u0438\u043b\u0430\u0439\u043d<\/p>\n<\/td>\n<td>\n<p align=\"left\">2366 \u0411<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0422\u0430\u0439\u043c-\u0430\u0443\u0442, 30 \u0441<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\"><code>\/icon.svg<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0414\u043e\u043c\u0430\u0448\u043d\u0438\u0439 Wi-Fi<\/p>\n<\/td>\n<td>\n<p align=\"left\">230 \u0411<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0423\u0441\u043f\u0435\u0448\u043d\u043e, 0,15 \u0441<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\"><code>\/icon.svg<\/code><\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0411\u0438\u043b\u0430\u0439\u043d<\/p>\n<\/td>\n<td>\n<p align=\"left\">230 \u0411<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0423\u0441\u043f\u0435\u0448\u043d\u043e, 0,35 \u0441<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\">\u0421\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 CSS<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0411\u0438\u043b\u0430\u0439\u043d<\/p>\n<\/td>\n<td>\n<p align=\"left\">2366 \u0411<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0422\u0430\u0439\u043c-\u0430\u0443\u0442, 20 \u0441<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>Next.js \u0443\u043c\u0435\u0435\u0442 \u043e\u0442\u0434\u0430\u0432\u0430\u0442\u044c HTML \u043f\u043e\u0442\u043e\u043a\u043e\u0432\u043e, \u0438 \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0437\u0430\u043f\u043e\u0434\u043e\u0437\u0440\u0438\u0442\u044c \u0437\u0430\u0432\u0438\u0441\u0430\u043d\u0438\u0435 \u043f\u0440\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u043c \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433\u0435. \u041f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e CSS \u0432\u0435\u0440\u0441\u0438\u044f \u043e\u0431 \u043e\u0448\u0438\u0431\u043a\u0435 \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0432 SSR(Server-Side Rendering \u0438\u043b\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u044b\u0439 \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433) \u0441\u0442\u0430\u043b\u0430 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u043b\u0430\u0431\u0435\u0435. \u0414\u0430 \u0438 \u0447\u0435\u0440\u0435\u0437 wi-fi \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e.<\/p>\n<p>\u0421\u0447\u0438\u0442\u0430\u0442\u044c 2366 \u0431\u0430\u0439\u0442 \u0434\u043e\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u043c \u00ab\u043f\u043e\u0440\u043e\u0433\u043e\u043c DPI\u00bb \u043d\u0435\u043b\u044c\u0437\u044f. <code>curl<\/code> \u0441\u0447\u0438\u0442\u0430\u0435\u0442 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0435 \u0431\u0430\u0439\u0442\u044b HTTP-\u0442\u0435\u043b\u0430, \u0430 TCP \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u0442 \u0437\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 TLS-\u0437\u0430\u043f\u0438\u0441\u0438 \u0432\u043c\u0435\u0441\u0442\u0435 \u0441\u043e \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u044b\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u043c\u0438. \u042d\u0442\u0438 \u0432\u0435\u043b\u0438\u0447\u0438\u043d\u044b \u043d\u0435\u043b\u044c\u0437\u044f \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u043f\u0440\u0438\u0440\u0430\u0432\u043d\u044f\u0442\u044c \u043a \u0440\u0430\u0437\u043c\u0435\u0440\u0430\u043c \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432.<\/p>\n<h3>\u0417\u0430\u0447\u0435\u043c \u044f \u0432\u043e\u043e\u0431\u0449\u0435 \u043f\u043e\u043b\u0435\u0437 \u0432 MTU<\/h3>\n<p>\u041d\u0430 \u044d\u0442\u043e\u043c \u044d\u0442\u0430\u043f\u0435 \u0431\u044b\u043b\u043e \u0435\u0449\u0451 \u043e\u0434\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e\u0435 \u0441\u0435\u0442\u0435\u0432\u043e\u0435 \u043e\u0431\u044a\u044f\u0441\u043d\u0435\u043d\u0438\u0435, \u043d\u0435 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u043e\u0435 \u0441 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430\u043c\u0438: \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 <strong>Path MTU Discovery<\/strong>. \u041c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u043c\u0430\u0440\u0448\u0440\u0443\u0442 \u043c\u043e\u0436\u0435\u0442 \u0432\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u0442\u0443\u043d\u043d\u0435\u043b\u0438 \u0441 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0430\u043c\u0438. \u0415\u0441\u043b\u0438 \u0431\u043e\u043b\u044c\u0448\u0438\u0435 IP-\u043f\u0430\u043a\u0435\u0442\u044b \u043d\u0435 \u043f\u0440\u043e\u0445\u043e\u0434\u044f\u0442, \u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0434\u043b\u044f \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0433\u043e MTU, \u0442\u0435\u0440\u044f\u044e\u0442\u0441\u044f \u0438\u043b\u0438 \u0444\u0438\u043b\u044c\u0442\u0440\u0443\u044e\u0442\u0441\u044f, \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0435 \u043e\u0442\u0432\u0435\u0442\u044b \u043c\u043e\u0433\u0443\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c, \u0430 \u0431\u043e\u043b\u0435\u0435 \u043a\u0440\u0443\u043f\u043d\u044b\u0435 \u0437\u0430\u0432\u0438\u0441\u0430\u0442\u044c.<\/p>\n<p>\u042d\u0442\u043e \u043d\u0435 \u0431\u044b\u043b\u043e \u043c\u043e\u0435\u0439 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0435\u0439, \u043d\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0435\u0451 \u0441\u0442\u043e\u0438\u043b\u043e: \u043d\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u043e\u043c Wi-Fi \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0441\u043d\u0438\u0437\u0438\u043b MTU \u0441 <code>1500<\/code> \u0434\u043e <code>1200<\/code>. \u0422\u0430\u043a\u043e\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0432\u043b\u0438\u044f\u0442\u044c \u043d\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u044f\u0435\u043c\u044b\u0439 \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u043c TCP \u0440\u0430\u0437\u043c\u0435\u0440\u044b \u0441\u0435\u0433\u043c\u0435\u043d\u0442\u043e\u0432, \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c.<\/p>\n<pre><code>netsh interface ipv4 set subinterface \"\u0411\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u0430\u044f \u0441\u0435\u0442\u044c\" mtu=1200 store=active<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0441\u0435\u0440\u0432\u0435\u0440 \u043f\u043e-\u043f\u0440\u0435\u0436\u043d\u0435\u043c\u0443 \u043e\u0442\u0432\u0435\u0447\u0430\u043b <code>HTTP 200<\/code>, \u043d\u043e <code>curl<\/code> \u043f\u043e\u043b\u0443\u0447\u0438\u043b <strong>0 \u0431\u0430\u0439\u0442 \u0442\u0435\u043b\u0430<\/strong> \u0434\u043e \u0442\u0430\u0439\u043c-\u0430\u0443\u0442\u0430. \u0422\u043e \u0435\u0441\u0442\u044c \u0441\u043d\u0438\u0436\u0435\u043d\u0438\u0435 MTU \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u043d\u0435 \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u0430 \u043d\u0430 \u043e\u0434\u043d\u043e\u043c \u043f\u043e\u0432\u0442\u043e\u0440\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0441\u0442\u0430\u043b \u0445\u0443\u0436\u0435. \u0417\u0430\u0442\u0435\u043c \u0432\u0435\u0440\u043d\u0443\u043b \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 <code>1500<\/code>. \u0421\u043d\u0438\u0436\u0435\u043d\u0438\u0435 MTU \u043d\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u0435 \u043d\u0435 \u043f\u043e\u043c\u043e\u0433\u043b\u043e.<\/p>\n<h3>tcpdump: \u0441\u0435\u0440\u0432\u0435\u0440 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0435\u043d\u0438\u0435 \u043e\u0442\u0432\u0435\u0442\u0430<\/h3>\n<p>\u041f\u043e\u0441\u043b\u0435 \u0442\u0435\u0441\u0442\u043e\u0432 \u0441 <code>curl<\/code> \u043e\u0441\u0442\u0430\u0432\u0430\u043b\u043e\u0441\u044c \u043f\u043e\u043d\u044f\u0442\u044c: \u0441\u0435\u0440\u0432\u0435\u0440 \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u0451\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u043b\u0438 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0443, \u043d\u043e \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0439 \u043e\u0442 \u043a\u043b\u0438\u0435\u043d\u0442\u0430?<\/p>\n<p>\u041d\u0430 Ubuntu <code>tcpdump<\/code> \u0443\u0436\u0435 \u0431\u044b\u043b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d. \u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u044f \u0441\u043b\u0443\u0448\u0430\u043b \u0432\u0441\u0435 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u044b (<code>-i any<\/code>), \u043d\u043e Docker \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u043b \u0434\u0443\u0431\u043b\u0438 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u043d\u0430 <code>veth<\/code>, <code>bridge<\/code> \u0438 <code>eth0<\/code>, \u0430 \u0432 \u0432\u044b\u0432\u043e\u0434 \u043f\u043e\u043f\u0430\u0434\u0430\u043b\u0438 \u043f\u043e\u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0435 TCP-\u0441\u0435\u0441\u0441\u0438\u0438. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0434\u043b\u044f \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0432\u044b\u0431\u0440\u0430\u043b \u0432\u043d\u0435\u0448\u043d\u0438\u0439 <code>eth0<\/code> \u0438 \u043e\u0442\u0444\u0438\u043b\u044c\u0442\u0440\u043e\u0432\u0430\u043b \u0442\u0440\u0430\u0444\u0438\u043a \u043f\u043e \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e\u043c\u0443 IP \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f.<\/p>\n<p>\u041a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u0438\u0439 IP \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u043b \u0432 Windows:<\/p>\n<pre><code>curl -4 https:\/\/api.ipify.org<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u041d\u0430 Hetzner \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b \u0437\u0430\u0445\u0432\u0430\u0442 (IP \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u043d\u0438\u0436\u0435 \u0437\u0430\u043c\u0435\u043d\u0451\u043d):<\/p>\n<pre><code class=\"bash\">sudo tcpdump -ni eth0 -nn -tttt \\  'host 198.51.100.25 and tcp port 443' &gt; \/tmp\/beeline-debug.txt<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u0418 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u043f\u043e\u0432\u0442\u043e\u0440\u0438\u043b \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043d\u044b\u0439 \u0437\u0430\u043f\u0440\u043e\u0441 \u043a CSS \u0447\u0435\u0440\u0435\u0437 \u0411\u0438\u043b\u0430\u0439\u043d. \u041d\u0430 \u044d\u0442\u043e\u0442 \u0440\u0430\u0437 \u0432 \u0434\u0430\u043c\u043f\u0435 \u043d\u0430\u0448\u043b\u0430\u0441\u044c \u043d\u0443\u0436\u043d\u0430\u044f TCP-\u0441\u0435\u0441\u0441\u0438\u044f.<\/p>\n<h4>\u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u043e\u0431\u044b\u0447\u043d\u044b\u0439 TCP handshake<\/h4>\n<pre><code>15:03:04.959734  client.5259 &gt; server.443: Flags [S],  seq 943589031, options [mss 1400,...]15:03:04.959834  server.443 &gt; client.5259: Flags [S.], seq 1175333000, ack 94358903215:03:05.116286  client.5259 &gt; server.443: Flags [.], ack 1...15:03:05.518647  client.5259 &gt; server.443: Flags [P.], seq 283:425, ack 3814, length 142<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>TCP handshake \u043f\u0440\u043e\u0448\u0451\u043b \u0443\u0441\u043f\u0435\u0448\u043d\u043e, \u0438 \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u043e\u0431\u043c\u0435\u043d\u044f\u043b\u0438\u0441\u044c \u0434\u0430\u043d\u043d\u044b\u043c\u0438. \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 \u043e\u0442 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043b\u043e <code><strong>ack 3814<\/strong><\/code>. \u042d\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442: \u00ab\u0432\u0441\u0435 \u0431\u0430\u0439\u0442\u044b \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0433\u043e \u043f\u043e\u0442\u043e\u043a\u0430 \u0434\u043e 3814 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u044b; \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0431\u0430\u0439\u0442 3814\u00bb.<\/p>\n<h4>\u0417\u0430\u0442\u0435\u043c \u043f\u043e\u0448\u043b\u0438 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438<\/h4>\n<p>\u0421\u0435\u0440\u0432\u0435\u0440 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u043b \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435:<\/p>\n<pre><code>15:03:05.528389  server.443 &gt; client.5259: seq 3814:4268,   length 45415:03:05.529033  server.443 &gt; client.5259: seq 4268:6655,   length 238715:03:05.529093  server.443 &gt; client.5259: seq 6655:8422,   length 176715:03:05.529159  server.443 &gt; client.5259: seq 8422:11222,  length 280015:03:05.529184  server.443 &gt; client.5259: seq 11222:13167, length 1945<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>TCP \u0442\u0430\u043a \u0443\u0441\u0442\u0440\u043e\u0435\u043d, \u0447\u0442\u043e \u0441\u0435\u0440\u0432\u0435\u0440 \u043f\u044b\u0442\u0430\u0435\u0442\u0441\u044f \u0441\u0440\u0430\u0437\u0443 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e, \u0447\u0442\u043e \u0432\u0438\u0434\u043d\u043e \u0438\u0437 \u0434\u0430\u043c\u043f\u0430. \u041d\u043e \u043d\u043e\u0432\u044b\u0445 ACK \u0441 \u043f\u0440\u043e\u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0435\u043c \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0451\u043d\u043d\u043e\u0439 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0441\u0435\u0440\u0432\u0435\u0440 \u043d\u0435 \u0443\u0432\u0438\u0434\u0435\u043b. \u0415\u0441\u043b\u0438 \u0443\u043f\u0440\u043e\u0449\u0430\u0442\u044c, ACK \u044d\u0442\u043e \u043e\u0442\u0432\u0435\u0442 \u043e\u0442 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u043e\u0431 \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u0439 \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0435 \u043f\u0430\u043a\u0435\u0442\u0430. \u041f\u0440\u0438 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0438 ACK \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b TCP \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e\u0439 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432. \u041a\u0430\u043a \u0440\u0430\u0437 \u0432 \u0434\u0430\u043c\u043f\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437 \u043f\u043e\u0432\u0442\u043e\u0440\u044f\u043b\u0441\u044f \u043e\u0434\u0438\u043d \u0438 \u0442\u043e\u0442 \u0436\u0435 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d:<\/p>\n<pre><code>15:03:06.318645  server.443 &gt; client.5259: seq 3814:4268, length 45415:03:07.230702  server.443 &gt; client.5259: seq 3814:4268, length 45415:03:09.086610  server.443 &gt; client.5259: seq 3814:4268, length 45415:03:12.734545  server.443 &gt; client.5259: seq 3814:4268, length 45415:03:20.158662  server.443 &gt; client.5259: seq 3814:4268, length 454<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<figure class=\"\"><img decoding=\"async\" src=\"https:\/\/habrastorage.org\/r\/w1560\/extt\/5b\/21\/37\/5b2137c442b4c873044fe27cfa313cf2.png\" alt=\"\u0421\u0445\u0435\u043c\u0430 TCP-\u043e\u0431\u043c\u0435\u043d\u0430: \u0443\u0441\u043f\u0435\u0448\u043d\u044b\u0439 ACK 3814, \u0437\u0430\u0442\u0435\u043c \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u0430\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 \u043d\u0435\u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0451\u043d\u043d\u043e\u0433\u043e \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0430\" sizes=\"(max-width: 780px) 100vw, 50vw\" srcset=\"https:\/\/habrastorage.org\/r\/w780\/extt\/5b\/21\/37\/5b2137c442b4c873044fe27cfa313cf2.png 780w,&#10;       https:\/\/habrastorage.org\/r\/w1560\/extt\/5b\/21\/37\/5b2137c442b4c873044fe27cfa313cf2.png 781w\" loading=\"lazy\" decode=\"async\"\/><\/p>\n<div><figcaption>\u0421\u0445\u0435\u043c\u0430 TCP-\u043e\u0431\u043c\u0435\u043d\u0430: \u0443\u0441\u043f\u0435\u0448\u043d\u044b\u0439 ACK 3814, \u0437\u0430\u0442\u0435\u043c \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u0430\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 \u043d\u0435\u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0451\u043d\u043d\u043e\u0433\u043e \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0430<\/figcaption><\/div>\n<\/figure>\n<p>\u0414\u0430\u043c\u043f \u043f\u043e\u043a\u0430\u0437\u0430\u043b, \u0447\u0442\u043e \u0441\u0435\u0440\u0432\u0435\u0440 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u043b \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435, \u0430 \u0437\u0430\u0442\u0435\u043c \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u043b \u043d\u0435\u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0451\u043d\u043d\u044b\u0439 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d. \u0417\u043d\u0430\u043a \u0432\u043e\u043f\u0440\u043e\u0441\u0430 \u043d\u0430 \u0441\u0445\u0435\u043c\u0435 \u043d\u0435 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043d\u0430 \u043c\u0435\u0441\u0442\u043e, \u0433\u0434\u0435 \u043f\u0430\u043a\u0435\u0442 \u00ab\u0443\u0431\u0438\u043b\u043e \u0422\u0421\u041f\u0423\u00bb. \u0418\u0437 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0433\u043e \u0434\u0430\u043c\u043f\u0430 \u0432\u0438\u0434\u043d\u043e \u043b\u0438\u0448\u044c, \u0447\u0442\u043e \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0438\u0435 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f \u043d\u0435 \u043f\u0440\u0438\u0448\u043b\u0438. \u041f\u043e \u043d\u0435\u043c\u0443 \u043d\u0435\u043b\u044c\u0437\u044f \u0440\u0430\u0437\u043b\u0438\u0447\u0438\u0442\u044c \u043f\u043e\u0442\u0435\u0440\u044e \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e \u043f\u0443\u0442\u0438 \u043a \u043a\u043b\u0438\u0435\u043d\u0442\u0443, \u043f\u043e\u0442\u0435\u0440\u044e \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0433\u043e ACK \u0438\u043b\u0438 \u0438\u043d\u043e\u0435 \u0432\u043c\u0435\u0448\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430. \u041d\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c \u044f \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u043b.<\/p>\n<h3>\u0412\u0442\u043e\u0440\u043e\u0439 \u0441\u0430\u0439\u0442 \u0438 \u0442\u0440\u0438 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430<\/h3>\n<p>\u0427\u0442\u043e\u0431\u044b \u0442\u043e\u0447\u043d\u043e \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u044c \u043e\u0442 Next.js \u0438 \u043e\u0434\u043d\u043e\u0433\u043e \u0434\u043e\u043c\u0435\u043d\u0430, \u044f \u043f\u0435\u0440\u0435\u0448\u0451\u043b \u043a\u043e \u0432\u0442\u043e\u0440\u043e\u043c\u0443 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044e. \u041e\u043d\u043e \u0436\u0438\u0432\u0451\u0442 \u043d\u0430 <strong>\u0442\u043e\u043c \u0436\u0435 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e\u043c IP<\/strong>, \u043d\u043e \u0443 \u043d\u0435\u0433\u043e \u0434\u0440\u0443\u0433\u043e\u0439 \u0434\u043e\u043c\u0435\u043d \u0438 \u0434\u0440\u0443\u0433\u043e\u0439 \u0444\u0440\u043e\u043d\u0442\u0435\u043d\u0434: <strong>React 19 + JSX + CSS<\/strong>. \u042d\u0442\u043e \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0435 SPA(Single Page Application).<\/p>\n<p>\u041c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0439 HTML \u0437\u0430\u0433\u0440\u0443\u0437\u0438\u043b\u0441\u044f \u0446\u0435\u043b\u0438\u043a\u043e\u043c:<\/p>\n<pre><code>&lt; HTTP\/1.1 200 OK&lt; Content-Length: 579&lt; Server: nginx\/1.27.5&lt; Via: 1.1 Caddy100  579  100  579<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u0412 \u043e\u0442\u0432\u0435\u0442\u0435 \u0432\u0438\u0434\u043d\u044b \u043e\u0431\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0430: <code>Server: nginx\/1.27.5<\/code> \u0438 <code>Via: 1.1 Caddy<\/code>. Nginx \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442 \u0432\u043d\u0443\u0442\u0440\u0438 \u043e\u0431\u0440\u0430\u0437\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f, Caddy \u0432 \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u043c \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0435. \u0412 Docker Compose \u0443 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043e\u0442\u043a\u0440\u044b\u0442 \u0432\u043d\u0443\u0442\u0440\u0435\u043d\u043d\u0438\u0439 \u043f\u043e\u0440\u0442 <code>80<\/code>, \u0430 \u0443 Caddy \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043d\u044b <code>80<\/code> \u0438 <code>443<\/code>. \u041f\u0443\u0442\u044c \u0437\u0430\u043f\u0440\u043e\u0441\u0430: <strong>\u043a\u043b\u0438\u0435\u043d\u0442 \u2192 HTTPS \u2192 Caddy \u2192 HTTP \u0432\u043d\u0443\u0442\u0440\u0438 Docker \u2192 Nginx \u2192 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0444\u0430\u0439\u043b\u044b React SPA<\/strong>. \u0421\u0442\u0435\u043a \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f \u043e\u0442 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f, \u0430 \u0437\u0430\u0432\u0438\u0441\u0430\u043d\u0438\u0435 \u043e\u043a\u0430\u0437\u0430\u043b\u043e\u0441\u044c \u0442\u0430\u043a\u0438\u043c \u0436\u0435.<\/p>\n<p>\u0413\u043b\u0430\u0432\u043d\u044b\u0439 HTML \u0432\u0435\u0441\u0438\u043b \u0432\u0441\u0435\u0433\u043e <strong>579 \u0431\u0430\u0439\u0442<\/strong>. \u0414\u043b\u044f SPA \u044d\u0442\u043e \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e: \u0432 \u043d\u0451\u043c \u043f\u043e\u0447\u0442\u0438 \u043d\u0435\u0442 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0430, \u0442\u043e\u043b\u044c\u043a\u043e \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 <code>&lt;div id=\"root\"&gt;&lt;\/div&gt;<\/code> \u0438 \u0441\u0441\u044b\u043b\u043a\u0438 \u043d\u0430 JS\/CSS. \u0411\u0440\u0430\u0443\u0437\u0435\u0440\u0443 \u043d\u0443\u0436\u0435\u043d JavaScript, \u0447\u0442\u043e\u0431\u044b \u0432\u043e\u043e\u0431\u0449\u0435 \u043e\u0442\u043e\u0431\u0440\u0430\u0437\u0438\u0442\u044c \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0443. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0443\u0441\u043f\u0435\u0448\u043d\u0430\u044f \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u043e\u0433\u043e HTML \u043d\u0438\u0447\u0435\u0433\u043e \u043d\u0435 \u0433\u043e\u0432\u043e\u0440\u0438\u043b\u0430 \u043e \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u0438 \u0441\u0430\u043c\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f.<\/p>\n<p>\u041d\u0430\u0448\u0451\u043b \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 JS-\u0431\u0430\u043d\u0434\u043b \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c <strong>197 092 \u0431\u0430\u0439\u0442\u0430<\/strong> \u0438 \u0441\u043a\u0430\u0447\u0438\u0432\u0430\u043b \u0435\u0433\u043e \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 \u0447\u0435\u0440\u0435\u0437 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0435 \u0441\u0435\u0442\u0438. \u0418\u043c\u044f \u0444\u0430\u0439\u043b\u0430 \u043d\u0438\u0436\u0435 \u0442\u043e\u0436\u0435 \u0443\u0441\u043b\u043e\u0432\u043d\u043e\u0435, \u043f\u043e\u0441\u043a\u043e\u043b\u044c\u043a\u0443 \u0445\u044d\u0448 \u0441\u0431\u043e\u0440\u043a\u0438 \u043d\u0435 \u0432\u043b\u0438\u044f\u0435\u0442 \u043d\u0430 \u0441\u043c\u044b\u0441\u043b \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430:<\/p>\n<pre><code>curl -4 -k --http1.1 --max-time 20 -o NUL -w \"HTTP: %{http_code}, Bytes: %{size_download}, Time: %{time_total}\\n\" https:\/\/app-b.example\/assets\/index-EXAMPLE.js<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u043d\u0430 \u0440\u0430\u0437\u043d\u044b\u0445 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430\u0445:<\/p>\n<div>\n<div class=\"table\">\n<table>\n<tbody>\n<tr>\n<th>\n<p align=\"left\">\u041c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440<\/p>\n<\/th>\n<th>\n<p align=\"left\">HTTP<\/p>\n<\/th>\n<th>\n<p align=\"left\">\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u043e \u0438\u0437 197 092 \u0411<\/p>\n<\/th>\n<th>\n<p align=\"left\">\u0412\u0440\u0435\u043c\u044f<\/p>\n<\/th>\n<th>\n<p align=\"left\">\u0418\u0441\u0445\u043e\u0434<\/p>\n<\/th>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\"><strong>\u0411\u0438\u043b\u0430\u0439\u043d<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\">200<\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>3693 \u0411<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\">20,010 \u0441<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0422\u0430\u0439\u043c-\u0430\u0443\u0442<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\"><strong>\u04222<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\">200<\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>3693 \u0411<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\">20,005 \u0441<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0422\u0430\u0439\u043c-\u0430\u0443\u0442<\/p>\n<\/td>\n<\/tr>\n<tr>\n<td>\n<p align=\"left\"><strong>\u041c\u0435\u0433\u0430\u0424\u043e\u043d<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\">200<\/p>\n<\/td>\n<td>\n<p align=\"left\"><strong>3155 \u0411<\/strong><\/p>\n<\/td>\n<td>\n<p align=\"left\">20,013 \u0441<\/p>\n<\/td>\n<td>\n<p align=\"left\">\u0422\u0430\u0439\u043c-\u0430\u0443\u0442<\/p>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<\/div>\n<p>\u0425\u0430\u0440\u0430\u043a\u0442\u0435\u0440 \u043e\u0448\u0438\u0431\u043a\u0438 \u0432\u0435\u0437\u0434\u0435 \u043e\u0434\u0438\u043d \u0438 \u0442\u043e\u0442 \u0436\u0435:<\/p>\n<pre><code>curl: (28) Operation timed out after 20004 millisecondswith 3693 out of 197092 bytes receivedHTTP: 200, Bytes: 3693, Time: 20.005383<\/code><div class=\"code-explainer\"><a href=\"https:\/\/sourcecraft.dev\/\" class=\"tm-button code-explainer__link\" style=\"visibility: hidden;\"><span class=\"sc-logo-wrapper icon-only\"><\/span><\/a><\/div><\/pre>\n<p>\u042d\u0442\u043e \u0432\u044b\u0432\u043e\u0434 \u0438\u0437 \u0442\u0435\u0441\u0442\u0430 \u04222. \u0414\u043b\u044f \u0411\u0438\u043b\u0430\u0439\u043d\u0430 \u043e\u0431\u044a\u0451\u043c \u0431\u044b\u043b \u0442\u0430\u043a\u043e\u0439 \u0436\u0435, \u0430 \u0443 \u041c\u0435\u0433\u0430\u0424\u043e\u043d\u0430 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c 3155 \u0431\u0430\u0439\u0442.<\/p>\n<p>\u0412 \u043a\u0430\u0436\u0434\u043e\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0443\u0441\u043f\u0435\u0432\u0430\u043b\u043e \u0432\u0435\u0440\u043d\u0443\u0442\u044c <code>HTTP 200<\/code>, \u043d\u043e \u0437\u0430 20 \u0441\u0435\u043a\u0443\u043d\u0434 \u043d\u0435 \u043f\u0440\u0438\u0445\u043e\u0434\u0438\u043b\u043e \u0434\u0430\u0436\u0435 <strong>2% \u0444\u0430\u0439\u043b\u0430<\/strong>. \u0421\u043e\u0432\u043f\u0430\u0434\u0435\u043d\u0438\u0435 3693 \u0431\u0430\u0439\u0442 \u043d\u0430 \u0434\u0432\u0443\u0445 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430\u0445 \u0432\u044b\u0433\u043b\u044f\u0434\u0438\u0442 \u043f\u043e\u0434\u043e\u0437\u0440\u0438\u0442\u0435\u043b\u044c\u043d\u043e, \u043d\u043e \u043d\u0435 \u0433\u043e\u0432\u043e\u0440\u0438\u0442 \u043e \u00ab\u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0435 \u0444\u0438\u043b\u044c\u0442\u0440\u0430 \u043d\u0430 3693 \u0431\u0430\u0439\u0442\u0430\u00bb. \u0420\u0430\u0437\u043c\u0435\u0440 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u043e\u0433\u043e HTTP-\u0442\u0435\u043b\u0430 \u043c\u043e\u0436\u0435\u0442 \u0437\u0430\u0432\u0438\u0441\u0435\u0442\u044c \u043e\u0442 TLS-\u0431\u0443\u0444\u0435\u0440\u0438\u0437\u0430\u0446\u0438\u0438 \u0438 \u0441\u0435\u0433\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438.<\/p>\n<p>\u041e\u0442\u0434\u0435\u043b\u044c\u043d\u044b\u0435 <code>tcpdump<\/code> \u0434\u043b\u044f \u04222 \u0438 \u041c\u0435\u0433\u0430\u0424\u043e\u043d\u0430 \u044f \u0443\u0436\u0435 \u043d\u0435 \u0441\u043d\u0438\u043c\u0430\u043b. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0435 \u0432\u044b\u0448\u0435 \u043f\u043e\u0432\u0442\u043e\u0440\u044b <code>seq 3814:4268<\/code> \u043e\u0442\u043d\u043e\u0441\u044f\u0442\u0441\u044f <strong>\u0442\u043e\u043b\u044c\u043a\u043e \u043a \u043f\u0435\u0440\u0432\u043e\u043d\u0430\u0447\u0430\u043b\u044c\u043d\u043e\u043c\u0443 \u0442\u0435\u0441\u0442\u0443 \u0441 \u0411\u0438\u043b\u0430\u0439\u043d\u043e\u043c<\/strong>, \u0430 \u043d\u0435 \u043a\u043e \u0432\u0441\u0435\u043c \u0442\u0440\u0451\u043c \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u0430\u043c.<\/p>\n<h3>DPI\/\u0422\u0421\u041f\u0423: \u0432\u044b\u0432\u043e\u0434 \u0438\u043b\u0438 \u0432\u0441\u0451 \u0435\u0449\u0451 \u0433\u0438\u043f\u043e\u0442\u0435\u0437\u0430?<\/h3>\n<p>\u041f\u043e\u0441\u043b\u0435 \u044d\u0442\u0438\u0445 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0435\u0439 \u0434\u043b\u044f \u043c\u0435\u043d\u044f \u0441\u0442\u0430\u043b\u0430 \u0441\u0435\u043b\u0435\u043a\u0442\u0438\u0432\u043d\u0430\u044f \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u044f \u0437\u0430\u0440\u0443\u0431\u0435\u0436\u043d\u043e\u0433\u043e \u0442\u0440\u0430\u0444\u0438\u043a\u0430, \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e \u0441 \u0443\u0447\u0430\u0441\u0442\u0438\u0435\u043c DPI\/\u0422\u0421\u041f\u0423. \u0412 \u043f\u043e\u043b\u044c\u0437\u0443 \u044d\u0442\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 \u0433\u043e\u0432\u043e\u0440\u0438\u043b\u0438 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b \u043f\u0440\u043e\u0432\u0435\u0440\u043e\u043a:<\/p>\n<ul>\n<li>\n<p>\u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438 \u043f\u043e \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u043c\u0443 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044e, \u043d\u043e \u0438\u0441\u043f\u044b\u0442\u044b\u0432\u0430\u043b\u0438 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0432 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u0441\u0435\u0442\u044f\u0445.<\/p>\n<\/li>\n<li>\n<p>\u041c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0435 HTTPS-\u043e\u0442\u0432\u0435\u0442\u044b \u043f\u0440\u043e\u0445\u043e\u0434\u0438\u043b\u0438, \u0431\u043e\u043b\u044c\u0448\u0438\u0435 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0437\u0430\u0432\u0438\u0441\u0430\u043b\u0438.<\/p>\n<\/li>\n<li>\n<p>\u0421\u0431\u043e\u0439 \u043d\u0435 \u0437\u0430\u0432\u0438\u0441\u0435\u043b \u043e\u0442 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0433\u043e \u0444\u0440\u043e\u043d\u0442\u0435\u043d\u0434-\u0441\u0442\u0435\u043a\u0430: \u043f\u0440\u043e\u0432\u0435\u0440\u0435\u043d\u044b \u0434\u0432\u0430 \u0440\u0430\u0437\u043d\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 \u043e\u0434\u043d\u043e\u043c \u0437\u0430\u0440\u0443\u0431\u0435\u0436\u043d\u043e\u043c \u0441\u0435\u0440\u0432\u0435\u0440\u0435.<\/p>\n<\/li>\n<li>\n<p>\u0414\u043b\u044f \u043e\u0434\u043d\u043e\u0433\u043e \u0438\u0437 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439 <code>tcpdump<\/code> \u043f\u043e\u043a\u0430\u0437\u0430\u043b \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u044b\u0435 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 TCP-\u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e\u0441\u043b\u0435 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0438 \u043d\u043e\u0432\u044b\u0445 ACK.<\/p>\n<\/li>\n<li>\n<p>\u041d\u0430 \u0432\u0442\u043e\u0440\u043e\u043c \u0441\u0430\u0439\u0442\u0435 \u043e\u0434\u0438\u043d\u0430\u043a\u043e\u0432\u044b\u0439 \u0442\u0438\u043f \u0437\u0430\u0432\u0438\u0441\u0430\u043d\u0438\u044f \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0451\u043b\u0441\u044f \u0443 \u0442\u0440\u0451\u0445 \u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440\u043e\u0432.<\/p>\n<\/li>\n<\/ul>\n<p>HTTPS \u0448\u0438\u0444\u0440\u0443\u0435\u0442 \u0441\u043e\u0434\u0435\u0440\u0436\u0438\u043c\u043e\u0435 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u044f, \u043d\u043e \u043d\u0435 \u0441\u043a\u0440\u044b\u0432\u0430\u0435\u0442 \u0432\u0441\u044e \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u043d\u0451\u043c. IP-\u0430\u0434\u0440\u0435\u0441 \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u043e\u0441\u0442\u0430\u0451\u0442\u0441\u044f \u0432\u0438\u0434\u0438\u043c\u044b\u043c \u0441\u0435\u0442\u0435\u0432\u043e\u043c\u0443 \u043e\u0431\u043e\u0440\u0443\u0434\u043e\u0432\u0430\u043d\u0438\u044e. \u0410 \u043f\u0440\u0438 \u043e\u0431\u044b\u0447\u043d\u043e\u043c TLS \u0434\u043e\u043c\u0435\u043d\u043d\u043e\u0435 \u0438\u043c\u044f \u043c\u043e\u0436\u043d\u043e \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u0442\u044c \u0438\u0437 \u043f\u043e\u043b\u044f SNI \u0432 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u0438 <code>ClientHello<\/code>. \u042d\u0442\u043e \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u043c \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u0438 \u043f\u0440\u0438\u043c\u0435\u043d\u044f\u0442\u044c \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u044f \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e \u043a \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u043c \u0434\u043e\u043c\u0435\u043d\u0430\u043c, \u043d\u043e \u0438 \u043a IP-\u0430\u0434\u0440\u0435\u0441\u0430\u043c \u0438 \u043f\u043e\u0434\u0441\u0435\u0442\u044f\u043c.<\/p>\n<p>\u0418\u0441\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u0438 <a href=\"https:\/\/labs.ooni.io\/ru\/post\/2024-russia-report\/\" rel=\"noopener nofollow\">OONI<\/a> \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0438\u0440\u043e\u0432\u0430\u043b\u0438 \u0432\u043c\u0435\u0448\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u043e \u0432 TLS \u0432 \u0440\u043e\u0441\u0441\u0438\u0439\u0441\u043a\u0438\u0445 \u0441\u0435\u0442\u044f\u0445, \u0432 \u0447\u0430\u0441\u0442\u043d\u043e\u0441\u0442\u0438 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0443 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0439 \u043f\u043e\u0441\u043b\u0435 <code>ClientHello<\/code>. <strong>\u041d\u0430\u0448 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0439 \u043e\u0442\u043b\u0438\u0447\u0430\u0435\u0442\u0441\u044f<\/strong>: TLS \u0437\u0430\u0432\u0435\u0440\u0448\u0438\u043b\u0441\u044f \u0443\u0441\u043f\u0435\u0448\u043d\u043e, HTTP-\u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0438 \u0438 \u043d\u0430\u0447\u0430\u043b\u043e \u0442\u0435\u043b\u0430 \u043e\u0442\u0432\u0435\u0442\u0430 \u0434\u043e\u0448\u043b\u0438 \u0434\u043e \u043a\u043b\u0438\u0435\u043d\u0442\u0430. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u044f \u043d\u0435 \u0431\u0443\u0434\u0443 \u0443\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0442\u044c, \u0447\u0442\u043e \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0451\u043b \u0438\u043c\u0435\u043d\u043d\u043e \u043e\u043f\u0438\u0441\u0430\u043d\u043d\u0443\u044e OONI \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0443 \u043f\u043e SNI.<\/p>\n<p>\u0412 \u043c\u043e\u0451\u043c \u0441\u043b\u0443\u0447\u0430\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u043b\u0430\u0441\u044c \u043d\u0430 \u0434\u0432\u0443\u0445 \u0440\u0430\u0437\u043d\u044b\u0445 \u0434\u043e\u043c\u0435\u043d\u0430\u0445, \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0449\u0438\u0445 \u043d\u0430 \u043e\u0434\u0438\u043d IP-\u0430\u0434\u0440\u0435\u0441 Hetzner. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u043e\u0434\u043d\u043e\u0439 \u0438\u0437 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u0445 \u0433\u0438\u043f\u043e\u0442\u0435\u0437 \u0441\u0442\u0430\u043b\u0430 \u0444\u0438\u043b\u044c\u0442\u0440\u0430\u0446\u0438\u044f \u0442\u0440\u0430\u0444\u0438\u043a\u0430 \u043f\u043e \u0430\u0434\u0440\u0435\u0441\u0443 \u0438\u043b\u0438 \u043f\u043e\u0434\u0441\u0435\u0442\u0438 \u0437\u0430\u0440\u0443\u0431\u0435\u0436\u043d\u043e\u0433\u043e \u0445\u043e\u0441\u0442\u0438\u043d\u0433-\u043f\u0440\u043e\u0432\u0430\u0439\u0434\u0435\u0440\u0430.<\/p>\n<p>\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043f\u043e\u043a\u0430\u0437\u0430\u043b\u0438, \u0447\u0442\u043e \u043a\u0440\u0443\u043f\u043d\u044b\u0435 HTTPS-\u043e\u0442\u0432\u0435\u0442\u044b \u0441 \u0444\u0438\u043d\u0441\u043a\u043e\u0433\u043e VPS \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u043b\u0438\u0441\u044c \u0438\u0437 \u0442\u0440\u0451\u0445 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0445 \u0441\u0435\u0442\u0435\u0439. \u0412 \u043e\u0434\u043d\u043e\u043c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043d\u043e\u043c \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0438 \u0441\u0435\u0440\u0432\u0435\u0440 \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u043b \u043f\u043e\u043b\u0443\u0447\u0430\u0442\u044c \u043d\u043e\u0432\u044b\u0435 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f TCP \u0438 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u043b \u0434\u0430\u043d\u043d\u044b\u0435. \u041a\u0430\u043a\u043e\u0435 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u043e \u0432\u044b\u0437\u0432\u0430\u043b\u043e \u0441\u0431\u043e\u0439, \u0432\u044b\u044f\u0441\u043d\u0438\u0442\u044c \u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c.<\/p>\n<h3>\u041f\u043e\u0447\u0435\u043c\u0443 \u043d\u0435 \u043f\u043e\u043f\u0440\u043e\u0431\u043e\u0432\u0430\u043b Cloudflare CDN?<\/h3>\n<p>\u0422\u0430\u043a\u043e\u0439 \u0432\u0430\u0440\u0438\u0430\u043d\u0442 \u0431\u044b\u043b. \u042f \u043c\u043e\u0433 \u043f\u0435\u0440\u0435\u043a\u043b\u044e\u0447\u0438\u0442\u044c DNS-\u0437\u0430\u043f\u0438\u0441\u044c \u0432\u0442\u043e\u0440\u043e\u0433\u043e \u0434\u043e\u043c\u0435\u043d\u0430 \u0441 <strong>DNS only<\/strong> \u043d\u0430 <strong>Proxied<\/strong> (\u00ab\u043e\u0440\u0430\u043d\u0436\u0435\u0432\u043e\u0435 \u043e\u0431\u043b\u0430\u043a\u043e\u00bb). \u0422\u043e\u0433\u0434\u0430 \u043a\u043b\u0438\u0435\u043d\u0442 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0430\u043b\u0441\u044f \u0431\u044b \u043a \u043e\u0434\u043d\u043e\u043c\u0443 \u0438\u0437 \u0430\u0434\u0440\u0435\u0441\u043e\u0432 Cloudflare, \u0430 Cloudflare \u0443\u0436\u0435 \u043e\u0431\u0449\u0430\u043b\u0441\u044f \u0431\u044b \u0441 \u043c\u043e\u0438\u043c Hetzner. \u0414\u043b\u044f \u0447\u0430\u0441\u0442\u0438 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0445 \u0444\u0430\u0439\u043b\u043e\u0432 CDN \u043c\u043e\u0433 \u0431\u044b \u0435\u0449\u0451 \u0438 \u043e\u0442\u0434\u0430\u0432\u0430\u0442\u044c \u0437\u0430\u043a\u044d\u0448\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u043a\u043e\u043f\u0438\u0438 \u0431\u0435\u0437 \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u044f \u043a origin.<\/p>\n<p>\u042d\u0442\u043e \u043f\u043e\u0442\u0435\u043d\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u043e\u0431\u0445\u043e\u0434\u0438\u0442 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043d\u044b\u0439 \u043f\u0440\u044f\u043c\u043e\u0439 \u043c\u0430\u0440\u0448\u0440\u0443\u0442 \u043a \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u043c\u0443 IP\/\u043f\u043e\u0434\u0441\u0435\u0442\u0438 Hetzner, \u0442\u0430\u043a \u043a\u0430\u043a <strong>\u0442\u043e\u0447\u043a\u0430 \u0432\u0445\u043e\u0434\u0430 \u0438 \u043c\u0430\u0440\u0448\u0440\u0443\u0442 \u0434\u043b\u044f \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044f \u043c\u0435\u043d\u044f\u044e\u0442\u0441\u044f<\/strong>. \u0414\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u044c Cloudflare \u0438\u0437 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u043e\u0439 \u0440\u043e\u0441\u0441\u0438\u0439\u0441\u043a\u043e\u0439 \u0441\u0435\u0442\u0438 \u0442\u043e\u0436\u0435 \u043c\u043e\u0436\u0435\u0442 \u043e\u0442\u043b\u0438\u0447\u0430\u0442\u044c\u0441\u044f. \u0410 \u043b\u0438\u0448\u043d\u0438\u0439 \u043f\u0440\u043e\u043a\u0441\u0438\u0440\u0443\u044e\u0449\u0438\u0439 \u0443\u0447\u0430\u0441\u0442\u043e\u043a <strong>\u0441\u043f\u043e\u0441\u043e\u0431\u0435\u043d \u043a\u0430\u043a \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c, \u0442\u0430\u043a \u0438 \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0442\u044c \u0437\u0430\u0434\u0435\u0440\u0436\u043a\u0443<\/strong> \u0432 \u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e\u0441\u0442\u0438 \u043e\u0442 \u0440\u0430\u0441\u043f\u043e\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0443\u0437\u043b\u043e\u0432, \u043a\u044d\u0448\u0430 \u0438 \u043c\u0430\u0440\u0448\u0440\u0443\u0442\u0438\u0437\u0430\u0446\u0438\u0438.<\/p>\n<p>\u041a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u043e\u0433\u043e \u0442\u0435\u0441\u0442\u0430 \u0441 \u0432\u043a\u043b\u044e\u0447\u0451\u043d\u043d\u044b\u043c Cloudflare Proxy \u044f \u043d\u0435 \u043f\u0440\u043e\u0432\u043e\u0434\u0438\u043b, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u0441\u0440\u0430\u0432\u043d\u0438\u0442\u044c \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u043d\u0435 \u043c\u043e\u0433\u0443. \u0414\u043b\u044f \u0441\u0432\u043e\u0435\u0439 \u0437\u0430\u0434\u0430\u0447\u0438 \u044f \u0432\u044b\u0431\u0440\u0430\u043b \u043f\u0435\u0440\u0435\u043d\u043e\u0441.<\/p>\n<h3>\u0427\u0442\u043e \u0441\u0434\u0435\u043b\u0430\u043b \u0432 \u0438\u0442\u043e\u0433\u0435<\/h3>\n<p>\u042f \u043f\u0435\u0440\u0435\u043d\u0451\u0441 \u043e\u0431\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 VPS \u0432 \u0420\u043e\u0441\u0441\u0438\u0438. \u041d\u0430\u0437\u0432\u0430\u043d\u0438\u0435 \u043f\u0440\u043e\u0432\u0430\u0439\u0434\u0435\u0440\u0430 \u0437\u0434\u0435\u0441\u044c \u043d\u0435 \u043f\u0440\u0438\u043d\u0446\u0438\u043f\u0438\u0430\u043b\u044c\u043d\u043e: \u0441\u043c\u0435\u043d\u0438\u043b\u0438\u0441\u044c \u043f\u043b\u043e\u0449\u0430\u0434\u043a\u0430 \u0438 \u0441\u0435\u0442\u0435\u0432\u043e\u0439 \u043c\u0430\u0440\u0448\u0440\u0443\u0442 \u0434\u043b\u044f \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0430\u0443\u0434\u0438\u0442\u043e\u0440\u0438\u0438.<\/p>\n<p>\u041f\u043e\u0441\u043b\u0435 \u043f\u0435\u0440\u0435\u043d\u043e\u0441\u0430 \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043b \u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u044c \u0441\u0430\u0439\u0442\u043e\u0432 \u0447\u0435\u0440\u0435\u0437 <strong>\u0411\u0438\u043b\u0430\u0439\u043d, \u04222 \u0438 \u041c\u0435\u0433\u0430\u0424\u043e\u043d<\/strong>. \u041e\u0431\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441\u0442\u0430\u043b\u0438 \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u0432\u043e \u0432\u0441\u0435\u0445 \u0442\u0440\u0451\u0445 \u0441\u0435\u0442\u044f\u0445. \u041f\u043e\u0432\u0442\u043e\u0440\u044f\u0442\u044c \u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0443 \u0441 <code>tcpdump<\/code> \u043d\u0430 \u043d\u043e\u0432\u043e\u0439 \u043f\u043b\u043e\u0449\u0430\u0434\u043a\u0435 \u0443\u0436\u0435 \u043d\u0435 \u043f\u043e\u043d\u0430\u0434\u043e\u0431\u0438\u043b\u043e\u0441\u044c, \u0442\u0430\u043a \u043a\u0430\u043a \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u043b\u0430 \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u044c\u0441\u044f.<\/p>\n<h4>\u0427\u0442\u043e \u0437\u0430\u0431\u0435\u0440\u0443 \u0441 \u0441\u043e\u0431\u043e\u0439 \u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0434\u0435\u043f\u043b\u043e\u0438<\/h4>\n<p>\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u00ab\u0441 \u043c\u043e\u0435\u0433\u043e \u0434\u043e\u043c\u0430\u0448\u043d\u0435\u0433\u043e Wi-Fi \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u0435\u0442\u0441\u044f\u00bb \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0441\u043b\u0430\u0431\u0430\u044f. \u041e\u0441\u043e\u0431\u0435\u043d\u043d\u043e \u0435\u0441\u043b\u0438 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 \u043d\u0430\u0445\u043e\u0434\u044f\u0442\u0441\u044f \u0432 \u0420\u043e\u0441\u0441\u0438\u0438, \u0430 \u0441\u0435\u0440\u0432\u0435\u0440 \u0437\u0430 \u0433\u0440\u0430\u043d\u0438\u0446\u0435\u0439. \u0422\u0435\u043f\u0435\u0440\u044c \u043f\u043e\u0441\u043b\u0435 \u0440\u0435\u043b\u0438\u0437\u0430 \u0431\u0443\u0434\u0443 \u043f\u0440\u043e\u0432\u0435\u0440\u044f\u0442\u044c \u0441\u0430\u0439\u0442 \u0447\u0435\u0440\u0435\u0437 \u0440\u0435\u0430\u043b\u044c\u043d\u0443\u044e \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u0443\u044e \u0441\u0435\u0442\u044c.<\/p>\n<p>\u0411\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u043f\u043e\u043c\u043e\u0433 \u0432\u043e\u043f\u0440\u043e\u0441: <strong>\u00ab\u043a\u0430\u043a\u0438\u0435 \u0438\u043c\u0435\u043d\u043d\u043e TCP-\u0431\u0430\u0439\u0442\u044b \u0441\u0435\u0440\u0432\u0435\u0440 \u043e\u0442\u043f\u0440\u0430\u0432\u0438\u043b \u0438 \u043a\u0430\u043a\u0438\u0435 \u0438\u0437 \u043d\u0438\u0445 \u043a\u043b\u0438\u0435\u043d\u0442 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0434\u0438\u043b?\u00bb<\/strong>. \u041e\u0442\u0432\u0435\u0442 \u043d\u0430 \u044d\u0442\u043e\u0442 \u0432\u043e\u043f\u0440\u043e\u0441 \u043f\u043e\u043c\u043e\u0433 \u0443\u0441\u0442\u0440\u0430\u043d\u0438\u0442\u044c \u043f\u043e\u0434\u043e\u0437\u0440\u0435\u043d\u0438\u044f \u0432 \u0430\u0434\u0440\u0435\u0441 React, Next.js \u0438 Caddy. \u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u043f\u0435\u0440\u0435\u0448\u043b\u0438 \u043d\u0430 \u0441\u0442\u043e\u0440\u043e\u043d\u0443 \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0438 \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e \u0441\u0435\u0442\u0438.<\/p>\n<p>\u0418\u0442\u043e\u0433 \u0434\u043b\u044f \u043c\u043e\u0438\u0445 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u043e\u0432 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439. \u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 \u0441\u0435\u0440\u0432\u0435\u0440\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438 \u0438\u0441\u043f\u0440\u0430\u0432\u043d\u043e, \u0434\u0430\u0436\u0435 \u043d\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u043b <code>HTTP 200<\/code>. \u041d\u043e \u043e\u0442\u0432\u0435\u0442 \u043d\u0435 \u0434\u043e\u0445\u043e\u0434\u0438\u043b \u0446\u0435\u043b\u0438\u043a\u043e\u043c \u0438\u0437-\u0437\u0430 \u0442\u043e\u0433\u043e, \u0447\u0442\u043e \u043a\u043b\u0438\u0435\u043d\u0442 \u043f\u0440\u0435\u043a\u0440\u0430\u0449\u0430\u043b \u043e\u0442\u0432\u0435\u0447\u0430\u0442\u044c \u0441\u0435\u0440\u0432\u0435\u0440\u0443 \u043f\u0440\u0438 \u0434\u043e\u0441\u0442\u0438\u0436\u0435\u043d\u0438\u0438 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u043b\u0438\u043c\u0438\u0442\u0430 \u043f\u043e \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u043c \u0434\u0430\u043d\u043d\u044b\u043c. \u0421\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e \u0438\u0437-\u0437\u0430 \u0432\u043c\u0435\u0448\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0430 DPI\/\u0422\u0421\u041f\u0423.<\/p>\n<hr\/>\n<p><strong>\u0418\u0441\u0442\u043e\u0447\u043d\u0438\u043a\u0438 \u0438 \u0442\u0435\u0445\u043d\u0438\u0447\u0435\u0441\u043a\u0438\u0435 \u0441\u043f\u0440\u0430\u0432\u043a\u0438:<\/strong> <a href=\"https:\/\/labs.ooni.io\/ru\/post\/2024-russia-report\/\" rel=\"noopener nofollow\">OONI: \u043e \u0432\u043c\u0435\u0448\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u0435 \u0432 TLS \u0432 \u0420\u043e\u0441\u0441\u0438\u0438<\/a>, <a href=\"https:\/\/www.rfc-editor.org\/rfc\/rfc9293.html\" rel=\"noopener nofollow\">RFC 9293: TCP<\/a>, <a href=\"https:\/\/docs.kernel.org\/networking\/segmentation-offloads.html\" rel=\"noopener nofollow\">Linux Segmentation Offloads<\/a>, <a href=\"https:\/\/developers.cloudflare.com\/dns\/proxy-status\/\" rel=\"noopener nofollow\">Cloudflare: DNS only \u0438 Proxied<\/a>.<\/p>\n<\/div>\n<p>\u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"https:\/\/habr.com\/ru\/articles\/1103982\/\">https:\/\/habr.com\/ru\/articles\/1103982\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u041f\u0440\u0438 \u0434\u0435\u043f\u043b\u043e\u0435 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0433\u043e \u0432\u0435\u0431-\u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u044f \u0441\u0442\u043e\u043b\u043a\u043d\u0443\u043b\u0441\u044f \u0441\u043e \u0441\u0442\u0440\u0430\u043d\u043d\u043e\u0439 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043e\u0439. \u0421\u0435\u0440\u0432\u0435\u0440 \u0440\u0430\u0431\u043e\u0442\u0430\u043b, \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442 \u0431\u044b\u043b \u043d\u0430\u0441\u0442\u0440\u043e\u0435\u043d, \u0447\u0435\u0440\u0435\u0437 \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0439 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u0441\u0430\u0439\u0442 \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u043b\u0441\u044f. \u0410 \u0441 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u0440\u0430\u043a\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u043d\u0435 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u043b\u0441\u044f.\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0430 \u0447\u0435\u0440\u0435\u0437 curl \u043f\u043e\u043a\u0430\u0437\u0430\u043b\u0430, \u0447\u0442\u043e TLS-\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u043b\u043e\u0441\u044c \u0438 \u0441\u0435\u0440\u0432\u0435\u0440 \u0432\u043e\u0437\u0432\u0440\u0430\u0449\u0430\u043b HTTP 200 OK, \u043d\u043e \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0430 \u0437\u0430\u0432\u0438\u0441\u0430\u043b\u0430 \u043f\u043e\u0441\u043b\u0435 \u043f\u0435\u0440\u0432\u044b\u0445 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u0438\u0445 \u043a\u0438\u043b\u043e\u0431\u0430\u0439\u0442. \u041f\u0440\u0438\u0447\u0451\u043c \u0442\u0430\u043a\u043e\u0435 \u043f\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0432\u043e\u0441\u043f\u0440\u043e\u0438\u0437\u0432\u0435\u0441\u0442\u0438 \u0447\u0435\u0440\u0435\u0437 \u0411\u0438\u043b\u0430\u0439\u043d, \u04222 \u0438 \u041c\u0435\u0433\u0430\u0424\u043e\u043d.\u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u044f \u043f\u043e\u0434\u043e\u0437\u0440\u0435\u0432\u0430\u043b \u043a\u043e\u043d\u0444\u0438\u0433\u0443\u0440\u0430\u0446\u0438\u044e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f. \u0412 \u0438\u0442\u043e\u0433\u0435 \u0434\u043e\u0448\u0451\u043b \u0434\u043e tcpdump, \u0443\u0432\u0438\u0434\u0435\u043b \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438 TCP-\u0441\u0435\u0433\u043c\u0435\u043d\u0442\u043e\u0432 \u0438 \u043f\u0435\u0440\u0435\u043d\u0451\u0441 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043d\u0430 \u0440\u043e\u0441\u0441\u0438\u0439\u0441\u043a\u0438\u0439 VPS. \u0420\u0430\u0441\u0441\u043a\u0430\u0436\u0443, \u0447\u0442\u043e \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u0432\u044b\u044f\u0441\u043d\u0438\u0442\u044c \u0438 \u043f\u043e\u0447\u0435\u043c\u0443 \u044f \u043f\u043e\u0434\u043e\u0437\u0440\u0435\u0432\u0430\u044e DPI\/\u0422\u0421\u041f\u0423, \u0445\u043e\u0442\u044f \u0434\u043e\u043a\u0430\u0437\u0430\u0442\u044c \u0438\u0445 \u0443\u0447\u0430\u0441\u0442\u0438\u0435 \u043d\u0435 \u0441\u043c\u043e\u0433.\u041e\u0431 \u043e\u0431\u0435\u0437\u043b\u0438\u0447\u0438\u0432\u0430\u043d\u0438\u0438. \u0414\u043e\u043c\u0435\u043d\u044b \u0438 \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0435 IP-\u0430\u0434\u0440\u0435\u0441\u0430 \u0432 \u0441\u0442\u0430\u0442\u044c\u0435 \u0437\u0430\u043c\u0435\u043d\u0435\u043d\u044b \u043d\u0430 \u0430\u043b\u0438\u0430\u0441\u044b: app-a.example, app-b.example, 203.0.113.10 (\u0441\u0435\u0440\u0432\u0435\u0440) \u0438 198.51.100.25 (\u043c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u043a\u043b\u0438\u0435\u043d\u0442). \u042d\u0442\u043e \u0441\u043f\u0435\u0446\u0438\u0430\u043b\u044c\u043d\u043e \u0437\u0430\u0440\u0435\u0437\u0435\u0440\u0432\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0434\u043b\u044f \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438 \u0430\u0434\u0440\u0435\u0441\u0430 \u0438 \u0434\u043e\u043c\u0435\u043d\u044b, \u0430 \u043d\u0435 \u0434\u0435\u0439\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0435 \u0445\u043e\u0441\u0442\u044b. \u0412\u0441\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0451\u043d\u043d\u044b\u0435 \u043d\u0438\u0436\u0435 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0441 \u043d\u0438\u043c\u0438 \u2014 \u0438\u043b\u043b\u044e\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0440\u0435\u0430\u043b\u044c\u043d\u043e \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u043d\u044b\u0445 \u043a\u043e\u043c\u0430\u043d\u0434, \u0430 \u043d\u0435 \u0433\u043e\u0442\u043e\u0432\u044b\u0435 \u0434\u043b\u044f \u0437\u0430\u043f\u0443\u0441\u043a\u0430 \u043a\u043e\u043f\u0438\u043f\u0430\u0441\u0442\u044b. \u0427\u0438\u0441\u043b\u043e\u0432\u044b\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u044b curl, TCP seq\/ack \u0438 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u044b\u0435 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u044b \u0441\u043e\u0445\u0440\u0430\u043d\u0435\u043d\u044b \u0438\u0437 \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430.\u0427\u0442\u043e \u0431\u044b\u043b\u043e \u0440\u0430\u0437\u0432\u0451\u0440\u043d\u0443\u0442\u043e\u041d\u0430 VPS Hetzner \u0432 \u0424\u0438\u043d\u043b\u044f\u043d\u0434\u0438\u0438 \u0431\u044b\u043b\u0438 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u044b Ubuntu 24.04, Docker \u0438 Caddy \u0432 \u0440\u043e\u043b\u0438 \u0432\u0445\u043e\u0434\u043d\u043e\u0433\u043e reverse proxy. \u041d\u0430 \u043e\u0434\u043d\u043e\u043c \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e\u043c IPv4 \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u0438 \u0434\u0432\u0430 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u044b\u0445 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f:\u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 A\u041f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 B\u0423\u0441\u043b\u043e\u0432\u043d\u044b\u0439 \u0434\u043e\u043c\u0435\u043dapp-a.exampleapp-b.example\u0422\u0435\u0445\u043d\u043e\u043b\u043e\u0433\u0438\u0438React, Next.js, TypeScriptReact 19, JavaScript (JSX), CSS\u0412\u0435\u0431-\u0441\u043b\u043e\u0439Caddy \u2192 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044fCaddy \u2192 Nginx 1.27 \u0432\u043d\u0443\u0442\u0440\u0438 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u0430 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f (\u0440\u0430\u0437\u0434\u0430\u0451\u0442 SPA)\u041f\u0443\u0431\u043b\u0438\u0447\u043d\u044b\u0439 IP203.0.113.10203.0.113.10\u0414\u043b\u044f \u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0438 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440 \u0441 Windows \u0438 curl\/8.21.0 \u0441 TLS-\u0431\u044d\u043a\u0435\u043d\u0434\u043e\u043c Schannel. \u0418\u043d\u0442\u0435\u0440\u043d\u0435\u0442 \u043d\u0430 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440 \u0440\u0430\u0437\u0434\u0430\u0432\u0430\u043b \u0441 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430. \u0422\u0430\u043a \u0431\u044b\u043b\u043e \u0443\u0434\u043e\u0431\u043d\u0435\u0435 \u0441\u043d\u0438\u043c\u0430\u0442\u044c \u0438 \u0441\u043e\u0445\u0440\u0430\u043d\u044f\u0442\u044c \u0432\u044b\u0432\u043e\u0434 \u043a\u043e\u043c\u0430\u043d\u0434, \u043e\u0441\u0442\u0430\u0432\u0430\u044f\u0441\u044c \u0432 \u0442\u043e\u0439 \u0436\u0435 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0439 \u0441\u0435\u0442\u0438.\u041b\u043e\u0433\u0438\u0447\u0435\u0441\u043a\u0430\u044f \u0442\u043e\u043f\u043e\u043b\u043e\u0433\u0438\u044f \u044d\u043a\u0441\u043f\u0435\u0440\u0438\u043c\u0435\u043d\u0442\u0430: \u043a\u043b\u0438\u0435\u043d\u0442, \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u0430\u044f \u0441\u0435\u0442\u044c, Hetzner \u0438 \u043a\u043e\u043d\u0442\u0435\u0439\u043d\u0435\u0440\u044b\u041d\u0430 \u0441\u0445\u0435\u043c\u0435 \u043f\u043e\u043a\u0430\u0437\u0430\u043d\u044b \u0443\u0447\u0430\u0441\u0442\u043d\u0438\u043a\u0438 \u043e\u0431\u043c\u0435\u043d\u0430. \u041d\u0430 \u043a\u0430\u043a\u043e\u043c \u0441\u0435\u0442\u0435\u0432\u043e\u043c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435 \u0442\u0435\u0440\u044f\u043b\u0438\u0441\u044c \u0434\u0430\u043d\u043d\u044b\u0435, \u0432\u044b\u044f\u0441\u043d\u0438\u0442\u044c \u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 DPI\/\u0422\u0421\u041f\u0423 \u0437\u0434\u0435\u0441\u044c \u043d\u0435 \u043e\u0431\u043e\u0437\u043d\u0430\u0447\u0435\u043d\u044b.\u041f\u0440\u0438 \u0447\u0451\u043c \u0437\u0434\u0435\u0441\u044c \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 \u0434\u043e\u043c\u0435\u043d\u0430?\u0414\u043e\u043c\u0435\u043d\u0430\u043c\u0438 \u044f \u0443\u043f\u0440\u0430\u0432\u043b\u044f\u043b \u0447\u0435\u0440\u0435\u0437 \u0440\u0430\u0437\u043d\u044b\u0435 \u043f\u043b\u043e\u0449\u0430\u0434\u043a\u0438: Selectel \u0438 Cloudflare. \u0423\u043f\u043e\u043c\u0438\u043d\u0430\u044e \u044d\u0442\u043e, \u043f\u043e\u0442\u043e\u043c\u0443 \u0447\u0442\u043e \u043f\u043e \u043d\u0435\u0437\u043d\u0430\u043d\u0438\u044e \u043f\u0440\u0438 \u0434\u0438\u0430\u0433\u043d\u043e\u0441\u0442\u0438\u043a\u0435 \u043b\u0435\u0433\u043a\u043e \u043d\u0430\u0447\u0430\u0442\u044c \u043f\u043e\u0434\u043e\u0437\u0440\u0435\u0432\u0430\u0442\u044c \u0437\u0430\u0440\u0443\u0431\u0435\u0436\u043d\u044b\u0439 DNS \u0438\u043b\u0438 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430.\u0420\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440 \u0434\u043e\u043c\u0435\u043d\u0430 \u043d\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u0442 \u0447\u0435\u0440\u0435\u0437 \u0441\u0435\u0431\u044f HTTPS-\u0442\u0440\u0430\u0444\u0438\u043a. \u041e\u043d \u043e\u0442\u0432\u0435\u0447\u0430\u0435\u0442 \u0437\u0430 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u044e \u0434\u043e\u043c\u0435\u043d\u0430, \u0430 DNS \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u043a\u043b\u0438\u0435\u043d\u0442\u0443 \u0443\u0437\u043d\u0430\u0442\u044c \u0430\u0434\u0440\u0435\u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u0430. \u041f\u043e\u0441\u043b\u0435 \u0440\u0430\u0437\u0440\u0435\u0448\u0435\u043d\u0438\u044f \u0438\u043c\u0435\u043d\u0438 \u0431\u0440\u0430\u0443\u0437\u0435\u0440 \u0443\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0435\u0442 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0441 IP \u043d\u0430\u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f. \u0415\u0441\u043b\u0438 \u043e\u0431\u0430 \u0434\u043e\u043c\u0435\u043d\u0430 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0442 \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u043d\u0430 \u043e\u0434\u0438\u043d \u0438 \u0442\u043e\u0442 \u0436\u0435 IP, \u0441\u0430\u043c \u0444\u0430\u043a\u0442 \u0440\u0435\u0433\u0438\u0441\u0442\u0440\u0430\u0446\u0438\u0438 \u0432 \u0420\u043e\u0441\u0441\u0438\u0438 \u0438\u043b\u0438 \u0437\u0430 \u0440\u0443\u0431\u0435\u0436\u043e\u043c \u043d\u0435 \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u044f\u0435\u0442 \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0438\u0439 \u043c\u0430\u0440\u0448\u0440\u0443\u0442 \u043f\u0430\u043a\u0435\u0442\u043e\u0432.\u0423 \u043c\u0435\u043d\u044f Cloudflare \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0441\u044f \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 DNS only, \u0431\u0435\u0437 \u043f\u0440\u043e\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f (\u0441\u0435\u0440\u043e\u0435 \u043e\u0431\u043b\u0430\u043a\u043e). \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0437\u0430\u043f\u0440\u043e\u0441\u044b \u0448\u043b\u0438 \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043d\u0430 Hetzner, \u0430 \u043d\u0435 \u0447\u0435\u0440\u0435\u0437 \u0441\u0435\u0442\u044c Cloudflare. \u041e \u0432\u0430\u0440\u0438\u0430\u043d\u0442\u0435 \u0441 \u043f\u0440\u043e\u043a\u0441\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u0435\u043c \u0440\u0430\u0441\u0441\u043a\u0430\u0436\u0443 \u0431\u043b\u0438\u0436\u0435 \u043a \u043a\u043e\u043d\u0446\u0443.\u041a\u0430\u043a \u043f\u0440\u043e\u044f\u0432\u0438\u043b\u0430\u0441\u044c \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430\u041d\u0430 \u0441\u0442\u0430\u0440\u0442\u0435 \u0441\u0430\u0439\u0442 A \u043e\u0442\u043a\u0440\u044b\u0432\u0430\u043b\u0441\u044f \u0441 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430 \u043f\u043e HTTP \u0438 \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u043f\u043e IP. \u041f\u043e\u0441\u043b\u0435 \u043f\u0440\u0438\u0432\u044f\u0437\u043a\u0438 \u0434\u043e\u043c\u0435\u043d\u0430 \u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0438 HTTPS \u0447\u0435\u0440\u0435\u0437 \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u0443\u044e \u0441\u0435\u0442\u044c \u043e\u043d \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u043b \u043d\u043e\u0440\u043c\u0430\u043b\u044c\u043d\u043e \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0442\u044c\u0441\u044f. \u041f\u0440\u0438 \u044d\u0442\u043e\u043c \u0447\u0435\u0440\u0435\u0437 \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0439 Wi-Fi HTTPS \u0440\u0430\u0431\u043e\u0442\u0430\u043b.\u0412 \u044d\u0442\u0438\u0445 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0430\u0445 \u0440\u0430\u0437\u043b\u0438\u0447\u0430\u043b\u0438\u0441\u044c \u0441\u0440\u0430\u0437\u0443 \u0434\u0432\u0435 \u0432\u0435\u0449\u0438: \u043e\u0431\u0440\u0430\u0449\u0435\u043d\u0438\u0435 \u043f\u043e IP \u0438\u043b\u0438 \u0434\u043e\u043c\u0435\u043d\u0443 \u0438 \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b, HTTP \u0438\u043b\u0438 HTTPS. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0432 \u0442\u043e\u0442 \u043c\u043e\u043c\u0435\u043d\u0442 \u043d\u0435\u043b\u044c\u0437\u044f \u0431\u044b\u043b\u043e \u0443\u0432\u0435\u0440\u0435\u043d\u043d\u043e \u0443\u0442\u0432\u0435\u0440\u0436\u0434\u0430\u0442\u044c, \u0447\u0442\u043e \u00ab\u043e\u043f\u0435\u0440\u0430\u0442\u043e\u0440 \u0431\u043b\u043e\u043a\u0438\u0440\u0443\u0435\u0442 HTTPS\u00bb. \u041d\u0443\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0432\u044b\u044f\u0441\u043d\u0438\u0442\u044c, \u0434\u043e \u043a\u0430\u043a\u043e\u0439 \u0441\u0442\u0430\u0434\u0438\u0438 \u0432\u043e\u043e\u0431\u0449\u0435 \u0434\u043e\u0445\u043e\u0434\u0438\u0442 \u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435.\u041f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u043d\u0430\u0447\u0430\u043b \u0441 \u0411\u0438\u043b\u0430\u0439\u043d\u0430.TLS \u0440\u0430\u0431\u043e\u0442\u0430\u0435\u0442. HTTP 200 \u0442\u043e\u0436\u0435. \u0410 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b \u043d\u0435\u0442\u041d\u0430 \u043a\u043e\u043c\u043f\u044c\u044e\u0442\u0435\u0440\u0435, \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0451\u043d\u043d\u043e\u043c \u043a \u0440\u0430\u0437\u0434\u0430\u0447\u0435 \u0442\u0435\u043b\u0435\u0444\u043e\u043d\u0430 \u0441 \u0411\u0438\u043b\u0430\u0439\u043d\u043e\u043c, \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b:curl -4 -vk &#8212;http1.1 &#8212;connect-timeout 10 &#8212;max-time 20 https:\/\/app-a.example\/\u0417\u0434\u0435\u0441\u044c -4 \u043f\u0440\u0438\u043d\u0443\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0432\u044b\u0431\u0438\u0440\u0430\u0435\u0442 IPv4, &#8212;http1.1 \u0444\u0438\u043a\u0441\u0438\u0440\u0443\u0435\u0442 \u0432\u0435\u0440\u0441\u0438\u044e HTTP \u0434\u043b\u044f \u0441\u043e\u043f\u043e\u0441\u0442\u0430\u0432\u0438\u043c\u043e\u0441\u0442\u0438 \u0442\u0435\u0441\u0442\u043e\u0432, \u0430 -v \u043f\u043e\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u0434\u0435\u0442\u0430\u043b\u0438 \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f. -k \u043e\u0442\u043a\u043b\u044e\u0447\u0430\u0435\u0442 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0443 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u0430, \u043d\u043e \u043d\u0435 TLS-\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u0438\u0435; \u043e\u0442\u0434\u0435\u043b\u044c\u043d\u043e\u0439 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u043e\u0439 \u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u043e\u0441\u0442\u0438 \u0446\u0435\u043f\u043e\u0447\u043a\u0438 \u0441\u0435\u0440\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0432 \u044d\u0442\u0430 \u043a\u043e\u043c\u0430\u043d\u0434\u0430 \u043d\u0435 \u044f\u0432\u043b\u044f\u0435\u0442\u0441\u044f.\u0412 \u043b\u043e\u0433\u0435 \u0443\u0432\u0438\u0434\u0435\u043b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0435 (\u0430\u0434\u0440\u0435\u0441\u0430 \u0437\u0430\u043c\u0435\u043d\u0435\u043d\u044b):* Host app-a.example:443 was resolved.* IPv4: 203.0.113.10* Trying 203.0.113.10:443&#8230;* ALPN: server accepted http\/1.1* Established connection to app-a.example (203.0.113.10 port 443)&gt; GET \/ HTTP\/1.1&gt; Host: app-a.example* Request completely sent off&lt; HTTP\/1.1 200 OK&lt; Content-Type: text\/html; charset=utf-8&lt; Via: 1.1 Caddy&lt; Transfer-Encoding: chunked&#8230;* Operation timed out after 20006 milliseconds with 2366 bytes receivedcurl: (28) Operation timed out after 20006 milliseconds with 2366 bytes received\u0418\u0437 \u043f\u0440\u0438\u0432\u0435\u0434\u0435\u043d\u043d\u043e\u0433\u043e \u0432\u044b\u0448\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432\u0438\u0434\u043d\u043e, \u0447\u0442\u043e DNS \u0440\u0430\u0437\u0440\u0435\u0448\u0438\u043b\u0441\u044f, TCP-\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u043e\u0441\u044c, TLS \u043f\u0440\u043e\u0448\u0451\u043b, \u0437\u0430\u043f\u0440\u043e\u0441 \u0443\u0448\u0451\u043b, \u0430 \u0441\u0435\u0440\u0432\u0435\u0440 \u0432\u0435\u0440\u043d\u0443\u043b 200 OK. \u041d\u043e \u0442\u0435\u043b\u043e \u043e\u0442\u0432\u0435\u0442\u0430 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043b\u043e\u0441\u044c \u043d\u0430 2366 \u0431\u0430\u0439\u0442\u0430\u0445. \u0427\u0435\u0440\u0435\u0437 20 \u0441\u0435\u043a\u0443\u043d\u0434 \u0441\u0440\u0430\u0431\u043e\u0442\u0430\u043b \u0442\u0430\u0439\u043c-\u0430\u0443\u0442.\u042d\u0442\u043e \u0443\u0436\u0435 \u043d\u0435 \u043f\u043e\u0445\u043e\u0436\u0435 \u043d\u0430 \u043a\u043b\u0430\u0441\u0441\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u0439, \u043a\u043e\u0433\u0434\u0430 \u0444\u0438\u043b\u044c\u0442\u0440 \u0440\u0430\u0441\u043f\u043e\u0437\u043d\u0430\u0451\u0442 SNI \u0432 ClientHello \u0438 \u0441\u0440\u0430\u0437\u0443 \u0441\u0431\u0440\u0430\u0441\u044b\u0432\u0430\u0435\u0442 TLS-\u0441\u043e\u0435\u0434\u0438\u043d\u0435\u043d\u0438\u0435. \u0417\u0434\u0435\u0441\u044c HTTPS-\u0441\u0435\u0441\u0441\u0438\u044f \u0443\u0441\u043f\u0435\u043b\u0430 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u0442\u044c\u0441\u044f \u0438 \u043f\u0435\u0440\u0435\u0434\u0430\u0442\u044c \u0447\u0430\u0441\u0442\u044c HTTP-\u043e\u0442\u0432\u0435\u0442\u0430.\u0421\u043b\u0443\u0447\u0430\u0439\u043d\u043e\u0441\u0442\u044c \u0438\u043b\u0438 \u0443\u0441\u0442\u043e\u0439\u0447\u0438\u0432\u0430\u044f \u0433\u0440\u0430\u043d\u0438\u0446\u0430?\u041f\u043e\u0432\u0442\u043e\u0440\u0438\u043b \u0437\u0430\u0433\u0440\u0443\u0437\u043a\u0443, \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0438\u0432 \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u044c \u0434\u043e 10 \u041a\u0411\/\u0441 \u0438 \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0432 \u0442\u0430\u0439\u043c-\u0430\u0443\u0442 \u0434\u043e 30 \u0441\u0435\u043a\u0443\u043d\u0434:curl -4 -vk &#8212;http1.1 &#8212;max-time 30 &#8212;limit-rate 10k -o NUL https:\/\/app-a.example\/\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u043e\u043a\u0430\u0437\u0430\u043b\u0441\u044f \u0442\u0435\u043c \u0436\u0435:curl: (28) Operation timed out after 30004 millisecondswith 2366 bytes received\u0417\u0430\u0442\u0435\u043c \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u043b \u043c\u0430\u043b\u0435\u043d\u044c\u043a\u0438\u0439 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \/icon.svg \u0440\u0430\u0437\u043c\u0435\u0440\u043e\u043c 230 \u0431\u0430\u0439\u0442. \u041e\u043d \u0446\u0435\u043b\u0438\u043a\u043e\u043c \u0441\u043a\u0430\u0447\u0430\u043b\u0441\u044f \u0438 \u0447\u0435\u0440\u0435\u0437 \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0439 Wi-Fi, \u0438 \u0447\u0435\u0440\u0435\u0437 \u0411\u0438\u043b\u0430\u0439\u043d. \u041d\u043e \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 CSS \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441\u043d\u043e\u0432\u0430 \u0437\u0430\u0432\u0438\u0441 \u043f\u043e\u0441\u043b\u0435 2366 \u0431\u0430\u0439\u0442.\u0417\u0430\u043f\u0440\u043e\u0441\u0421\u0435\u0442\u044c\u041f\u043e\u043b\u0443\u0447\u0435\u043d\u043e\u0420\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442HTML \u0433\u043b\u0430\u0432\u043d\u043e\u0439 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u044b\u0411\u0438\u043b\u0430\u0439\u043d2366 \u0411\u0422\u0430\u0439\u043c-\u0430\u0443\u0442, 20 \u0441HTML \u0441 \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u0438\u0435\u043c \u0441\u043a\u043e\u0440\u043e\u0441\u0442\u0438\u0411\u0438\u043b\u0430\u0439\u043d2366 \u0411\u0422\u0430\u0439\u043c-\u0430\u0443\u0442, 30 \u0441\/icon.svg\u0414\u043e\u043c\u0430\u0448\u043d\u0438\u0439 Wi-Fi230 \u0411\u0423\u0441\u043f\u0435\u0448\u043d\u043e, 0,15 \u0441\/icon.svg\u0411\u0438\u043b\u0430\u0439\u043d230 \u0411\u0423\u0441\u043f\u0435\u0448\u043d\u043e, 0,35 \u0441\u0421\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 CSS\u0411\u0438\u043b\u0430\u0439\u043d2366 \u0411\u0422\u0430\u0439\u043c-\u0430\u0443\u0442, 20 \u0441Next.js \u0443\u043c\u0435\u0435\u0442 \u043e\u0442\u0434\u0430\u0432\u0430\u0442\u044c HTML \u043f\u043e\u0442\u043e\u043a\u043e\u0432\u043e, \u0438 \u0441\u043d\u0430\u0447\u0430\u043b\u0430 \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0437\u0430\u043f\u043e\u0434\u043e\u0437\u0440\u0438\u0442\u044c \u0437\u0430\u0432\u0438\u0441\u0430\u043d\u0438\u0435 \u043f\u0440\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u043c \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433\u0435. \u041f\u043e\u0441\u043b\u0435 \u043f\u0440\u043e\u0432\u0435\u0440\u043a\u0438 \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u043e\u0433\u043e CSS \u0432\u0435\u0440\u0441\u0438\u044f \u043e\u0431 \u043e\u0448\u0438\u0431\u043a\u0435 \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0432 SSR(Server-Side Rendering \u0438\u043b\u0438 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u044b\u0439 \u0440\u0435\u043d\u0434\u0435\u0440\u0438\u043d\u0433) \u0441\u0442\u0430\u043b\u0430 \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e \u0441\u043b\u0430\u0431\u0435\u0435. \u0414\u0430 \u0438 \u0447\u0435\u0440\u0435\u0437 wi-fi \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435 \u0440\u0430\u0431\u043e\u0442\u0430\u043b\u043e.\u0421\u0447\u0438\u0442\u0430\u0442\u044c 2366 \u0431\u0430\u0439\u0442 \u0434\u043e\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u043c \u00ab\u043f\u043e\u0440\u043e\u0433\u043e\u043c DPI\u00bb \u043d\u0435\u043b\u044c\u0437\u044f. curl \u0441\u0447\u0438\u0442\u0430\u0435\u0442 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u043d\u044b\u0435 \u0431\u0430\u0439\u0442\u044b HTTP-\u0442\u0435\u043b\u0430, \u0430 TCP \u043f\u0435\u0440\u0435\u0434\u0430\u0451\u0442 \u0437\u0430\u0448\u0438\u0444\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 TLS-\u0437\u0430\u043f\u0438\u0441\u0438 \u0432\u043c\u0435\u0441\u0442\u0435 \u0441\u043e \u0441\u043b\u0443\u0436\u0435\u0431\u043d\u044b\u043c\u0438 \u0434\u0430\u043d\u043d\u044b\u043c\u0438. \u042d\u0442\u0438 \u0432\u0435\u043b\u0438\u0447\u0438\u043d\u044b \u043d\u0435\u043b\u044c\u0437\u044f \u043d\u0430\u043f\u0440\u044f\u043c\u0443\u044e \u043f\u0440\u0438\u0440\u0430\u0432\u043d\u044f\u0442\u044c \u043a \u0440\u0430\u0437\u043c\u0435\u0440\u0430\u043c \u0441\u0435\u0442\u0435\u0432\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432.\u0417\u0430\u0447\u0435\u043c \u044f \u0432\u043e\u043e\u0431\u0449\u0435 \u043f\u043e\u043b\u0435\u0437 \u0432 MTU\u041d\u0430 \u044d\u0442\u043e\u043c \u044d\u0442\u0430\u043f\u0435 \u0431\u044b\u043b\u043e \u0435\u0449\u0451 \u043e\u0434\u043d\u043e \u043f\u0440\u043e\u0441\u0442\u043e\u0435 \u0441\u0435\u0442\u0435\u0432\u043e\u0435 \u043e\u0431\u044a\u044f\u0441\u043d\u0435\u043d\u0438\u0435, \u043d\u0435 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u043e\u0435 \u0441 \u0431\u043b\u043e\u043a\u0438\u0440\u043e\u0432\u043a\u0430\u043c\u0438: \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0430 Path MTU Discovery. \u041c\u043e\u0431\u0438\u043b\u044c\u043d\u044b\u0439 \u043c\u0430\u0440\u0448\u0440\u0443\u0442 \u043c\u043e\u0436\u0435\u0442 \u0432\u043a\u043b\u044e\u0447\u0430\u0442\u044c \u0442\u0443\u043d\u043d\u0435\u043b\u0438 \u0441 \u0434\u043e\u043f\u043e\u043b\u043d\u0438\u0442\u0435\u043b\u044c\u043d\u044b\u043c\u0438 \u0437\u0430\u0433\u043e\u043b\u043e\u0432\u043a\u0430\u043c\u0438. \u0415\u0441\u043b\u0438 \u0431\u043e\u043b\u044c\u0448\u0438\u0435 IP-\u043f\u0430\u043a\u0435\u0442\u044b \u043d\u0435 \u043f\u0440\u043e\u0445\u043e\u0434\u044f\u0442, \u0430 \u0441\u043e\u043e\u0431\u0449\u0435\u043d\u0438\u044f, \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0434\u043b\u044f \u043e\u0431\u043d\u0430\u0440\u0443\u0436\u0435\u043d\u0438\u044f \u0434\u043e\u043f\u0443\u0441\u0442\u0438\u043c\u043e\u0433\u043e MTU, \u0442\u0435\u0440\u044f\u044e\u0442\u0441\u044f \u0438\u043b\u0438 \u0444\u0438\u043b\u044c\u0442\u0440\u0443\u044e\u0442\u0441\u044f, \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0438\u0435 \u043e\u0442\u0432\u0435\u0442\u044b \u043c\u043e\u0433\u0443\u0442 \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c, \u0430 \u0431\u043e\u043b\u0435\u0435 \u043a\u0440\u0443\u043f\u043d\u044b\u0435 \u0437\u0430\u0432\u0438\u0441\u0430\u0442\u044c.\u042d\u0442\u043e \u043d\u0435 \u0431\u044b\u043b\u043e \u043c\u043e\u0435\u0439 \u043e\u0441\u043d\u043e\u0432\u043d\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0435\u0439, \u043d\u043e \u043f\u0440\u043e\u0432\u0435\u0440\u0438\u0442\u044c \u0435\u0451 \u0441\u0442\u043e\u0438\u043b\u043e: \u043d\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u043e\u043c Wi-Fi \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u0435 \u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u0441\u043d\u0438\u0437\u0438\u043b MTU \u0441 1500 \u0434\u043e 1200. \u0422\u0430\u043a\u043e\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u0435 \u043c\u043e\u0436\u0435\u0442 \u043f\u043e\u0432\u043b\u0438\u044f\u0442\u044c \u043d\u0430 \u043e\u0431\u044a\u044f\u0432\u043b\u044f\u0435\u043c\u044b\u0439 \u043a\u043b\u0438\u0435\u043d\u0442\u043e\u043c TCP \u0440\u0430\u0437\u043c\u0435\u0440\u044b \u0441\u0435\u0433\u043c\u0435\u043d\u0442\u043e\u0432, \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u043c\u044b\u0445 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c.netsh interface ipv4 set subinterface &#171;\u0411\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u0430\u044f \u0441\u0435\u0442\u044c&#187; mtu=1200 store=active\u041f\u043e\u0441\u043b\u0435 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u0441\u0435\u0440\u0432\u0435\u0440 \u043f\u043e-\u043f\u0440\u0435\u0436\u043d\u0435\u043c\u0443 \u043e\u0442\u0432\u0435\u0447\u0430\u043b HTTP 200, \u043d\u043e curl \u043f\u043e\u043b\u0443\u0447\u0438\u043b 0 \u0431\u0430\u0439\u0442 \u0442\u0435\u043b\u0430 \u0434\u043e \u0442\u0430\u0439\u043c-\u0430\u0443\u0442\u0430. \u0422\u043e \u0435\u0441\u0442\u044c \u0441\u043d\u0438\u0436\u0435\u043d\u0438\u0435 MTU \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u043d\u0435 \u0438\u0441\u043f\u0440\u0430\u0432\u0438\u043b\u043e, \u0430 \u043d\u0430 \u043e\u0434\u043d\u043e\u043c \u043f\u043e\u0432\u0442\u043e\u0440\u0435 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0441\u0442\u0430\u043b \u0445\u0443\u0436\u0435. \u0417\u0430\u0442\u0435\u043c \u0432\u0435\u0440\u043d\u0443\u043b \u0438\u0441\u0445\u043e\u0434\u043d\u043e\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u0435 1500. \u0421\u043d\u0438\u0436\u0435\u043d\u0438\u0435 MTU \u043d\u0430 \u043a\u043b\u0438\u0435\u043d\u0442\u0435 \u043d\u0435 \u043f\u043e\u043c\u043e\u0433\u043b\u043e.tcpdump: \u0441\u0435\u0440\u0432\u0435\u0440 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0435\u0442 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0435\u043d\u0438\u0435 \u043e\u0442\u0432\u0435\u0442\u0430\u041f\u043e\u0441\u043b\u0435 \u0442\u0435\u0441\u0442\u043e\u0432 \u0441 curl \u043e\u0441\u0442\u0430\u0432\u0430\u043b\u043e\u0441\u044c \u043f\u043e\u043d\u044f\u0442\u044c: \u0441\u0435\u0440\u0432\u0435\u0440 \u043f\u0435\u0440\u0435\u0441\u0442\u0430\u0451\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u0438\u043b\u0438 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u0435\u0442 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0443, \u043d\u043e \u043d\u0435 \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u0442 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0439 \u043e\u0442 \u043a\u043b\u0438\u0435\u043d\u0442\u0430?\u041d\u0430 Ubuntu tcpdump \u0443\u0436\u0435 \u0431\u044b\u043b \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d. \u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u044f \u0441\u043b\u0443\u0448\u0430\u043b \u0432\u0441\u0435 \u0438\u043d\u0442\u0435\u0440\u0444\u0435\u0439\u0441\u044b (-i any), \u043d\u043e Docker \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u043b \u0434\u0443\u0431\u043b\u0438 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u043d\u0430 veth, bridge \u0438 eth0, \u0430 \u0432 \u0432\u044b\u0432\u043e\u0434 \u043f\u043e\u043f\u0430\u0434\u0430\u043b\u0438 \u043f\u043e\u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0435 TCP-\u0441\u0435\u0441\u0441\u0438\u0438. \u041f\u043e\u044d\u0442\u043e\u043c\u0443 \u0434\u043b\u044f \u0430\u043d\u0430\u043b\u0438\u0437\u0430 \u0432\u044b\u0431\u0440\u0430\u043b \u0432\u043d\u0435\u0448\u043d\u0438\u0439 eth0 \u0438 \u043e\u0442\u0444\u0438\u043b\u044c\u0442\u0440\u043e\u0432\u0430\u043b \u0442\u0440\u0430\u0444\u0438\u043a \u043f\u043e \u043f\u0443\u0431\u043b\u0438\u0447\u043d\u043e\u043c\u0443 IP \u043c\u043e\u0431\u0438\u043b\u044c\u043d\u043e\u0433\u043e \u043f\u043e\u0434\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u044f.\u041a\u043b\u0438\u0435\u043d\u0442\u0441\u043a\u0438\u0439 IP \u043e\u043f\u0440\u0435\u0434\u0435\u043b\u0438\u043b \u0432 Windows:curl -4 https:\/\/api.ipify.org\u041d\u0430 Hetzner \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u043b \u0437\u0430\u0445\u0432\u0430\u0442 (IP \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u043d\u0438\u0436\u0435 \u0437\u0430\u043c\u0435\u043d\u0451\u043d):sudo tcpdump -ni eth0 -nn -tttt \\  &#8216;host 198.51.100.25 and tcp port 443&#8217; &gt; \/tmp\/beeline-debug.txt\u0418 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e \u043f\u043e\u0432\u0442\u043e\u0440\u0438\u043b \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u043d\u044b\u0439 \u0437\u0430\u043f\u0440\u043e\u0441 \u043a CSS \u0447\u0435\u0440\u0435\u0437 \u0411\u0438\u043b\u0430\u0439\u043d. \u041d\u0430 \u044d\u0442\u043e\u0442 \u0440\u0430\u0437 \u0432 \u0434\u0430\u043c\u043f\u0435 \u043d\u0430\u0448\u043b\u0430\u0441\u044c \u043d\u0443\u0436\u043d\u0430\u044f TCP-\u0441\u0435\u0441\u0441\u0438\u044f.\u0421\u043d\u0430\u0447\u0430\u043b\u0430 \u043e\u0431\u044b\u0447\u043d\u044b\u0439 TCP handshake15:03:04.959734  client.5259 &gt; server.443: Flags [S],  seq 943589031, options [mss 1400,&#8230;]15:03:04.959834  server.443 &gt; client.5259: Flags [S.], seq 1175333000, ack 94358903215:03:05.116286  client.5259 &gt; server.443: Flags [.], ack 1&#8230;15:03:05.518647  client.5259 &gt; server.443: Flags [P.], seq 283:425, ack 3814, length 142TCP handshake \u043f\u0440\u043e\u0448\u0451\u043b \u0443\u0441\u043f\u0435\u0448\u043d\u043e, \u0438 \u0441\u0442\u043e\u0440\u043e\u043d\u044b \u043e\u0431\u043c\u0435\u043d\u044f\u043b\u0438\u0441\u044c \u0434\u0430\u043d\u043d\u044b\u043c\u0438. \u041f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0435 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u0435 \u043e\u0442 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u0441\u043e\u0434\u0435\u0440\u0436\u0430\u043b\u043e ack 3814. \u042d\u0442\u043e \u043e\u0437\u043d\u0430\u0447\u0430\u0435\u0442: \u00ab\u0432\u0441\u0435 \u0431\u0430\u0439\u0442\u044b \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0433\u043e \u043f\u043e\u0442\u043e\u043a\u0430 \u0434\u043e 3814 \u043f\u043e\u043b\u0443\u0447\u0435\u043d\u044b; \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u043c \u043e\u0436\u0438\u0434\u0430\u0435\u0442\u0441\u044f \u0431\u0430\u0439\u0442 3814\u00bb.\u0417\u0430\u0442\u0435\u043c \u043f\u043e\u0448\u043b\u0438 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u044b\u0435 \u043f\u0435\u0440\u0435\u0434\u0430\u0447\u0438\u0421\u0435\u0440\u0432\u0435\u0440 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0438\u043b \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435:15:03:05.528389  server.443 &gt; client.5259: seq 3814:4268,   length 45415:03:05.529033  server.443 &gt; client.5259: seq 4268:6655,   length 238715:03:05.529093  server.443 &gt; client.5259: seq 6655:8422,   length 176715:03:05.529159  server.443 &gt; client.5259: seq 8422:11222,  length 280015:03:05.529184  server.443 &gt; client.5259: seq 11222:13167, length 1945TCP \u0442\u0430\u043a \u0443\u0441\u0442\u0440\u043e\u0435\u043d, \u0447\u0442\u043e \u0441\u0435\u0440\u0432\u0435\u0440 \u043f\u044b\u0442\u0430\u0435\u0442\u0441\u044f \u0441\u0440\u0430\u0437\u0443 \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u0442\u044c \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0434\u0430\u043d\u043d\u044b\u0445 \u043e\u0434\u043d\u043e\u0432\u0440\u0435\u043c\u0435\u043d\u043d\u043e, \u0447\u0442\u043e \u0432\u0438\u0434\u043d\u043e \u0438\u0437 \u0434\u0430\u043c\u043f\u0430. \u041d\u043e \u043d\u043e\u0432\u044b\u0445 ACK \u0441 \u043f\u0440\u043e\u0434\u0432\u0438\u0436\u0435\u043d\u0438\u0435\u043c \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0451\u043d\u043d\u043e\u0439 \u043f\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0441\u0435\u0440\u0432\u0435\u0440 \u043d\u0435 \u0443\u0432\u0438\u0434\u0435\u043b. \u0415\u0441\u043b\u0438 \u0443\u043f\u0440\u043e\u0449\u0430\u0442\u044c, ACK \u044d\u0442\u043e \u043e\u0442\u0432\u0435\u0442 \u043e\u0442 \u043a\u043b\u0438\u0435\u043d\u0442\u0430 \u043e\u0431 \u0443\u0441\u043f\u0435\u0448\u043d\u043e\u0439 \u0434\u043e\u0441\u0442\u0430\u0432\u043a\u0435 \u043f\u0430\u043a\u0435\u0442\u0430. \u041f\u0440\u0438 \u043e\u0442\u0441\u0443\u0442\u0441\u0442\u0432\u0438\u0438 ACK \u043f\u0440\u043e\u0442\u043e\u043a\u043e\u043b TCP \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u0442 \u043f\u043e\u043b\u0438\u0442\u0438\u043a\u0443 \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e\u0439 \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0438 \u043d\u0435\u0434\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u043d\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432. \u041a\u0430\u043a \u0440\u0430\u0437 \u0432 \u0434\u0430\u043c\u043f\u0435 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0440\u0430\u0437 \u043f\u043e\u0432\u0442\u043e\u0440\u044f\u043b\u0441\u044f \u043e\u0434\u0438\u043d \u0438 \u0442\u043e\u0442 \u0436\u0435 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d:15:03:06.318645  server.443 &gt; client.5259: seq 3814:4268, length 45415:03:07.230702  server.443 &gt; client.5259: seq 3814:4268, length 45415:03:09.086610  server.443 &gt; client.5259: seq 3814:4268, length 45415:03:12.734545  server.443 &gt; client.5259: seq 3814:4268, length 45415:03:20.158662  server.443 &gt; client.5259: seq 3814:4268, length 454\u0421\u0445\u0435\u043c\u0430 TCP-\u043e\u0431\u043c\u0435\u043d\u0430: \u0443\u0441\u043f\u0435\u0448\u043d\u044b\u0439 ACK 3814, \u0437\u0430\u0442\u0435\u043c \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u0430\u044f \u043e\u0442\u043f\u0440\u0430\u0432\u043a\u0430 \u043d\u0435\u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0451\u043d\u043d\u043e\u0433\u043e \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d\u0430\u0414\u0430\u043c\u043f \u043f\u043e\u043a\u0430\u0437\u0430\u043b, \u0447\u0442\u043e \u0441\u0435\u0440\u0432\u0435\u0440 \u043f\u0440\u043e\u0434\u043e\u043b\u0436\u0430\u043b \u043e\u0442\u043f\u0440\u0430\u0432\u043b\u044f\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435, \u0430 \u0437\u0430\u0442\u0435\u043c \u043f\u043e\u0432\u0442\u043e\u0440\u043d\u043e \u043f\u0435\u0440\u0435\u0434\u0430\u0432\u0430\u043b \u043d\u0435\u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0451\u043d\u043d\u044b\u0439 \u0434\u0438\u0430\u043f\u0430\u0437\u043e\u043d. \u0417\u043d\u0430\u043a \u0432\u043e\u043f\u0440\u043e\u0441\u0430 \u043d\u0430 \u0441\u0445\u0435\u043c\u0435 \u043d\u0435 \u0443\u043a\u0430\u0437\u044b\u0432\u0430\u0435\u0442 \u043d\u0430 \u043c\u0435\u0441\u0442\u043e, \u0433\u0434\u0435 \u043f\u0430\u043a\u0435\u0442 \u00ab\u0443\u0431\u0438\u043b\u043e \u0422\u0421\u041f\u0423\u00bb. \u0418\u0437 \u0441\u0435\u0440\u0432\u0435\u0440\u043d\u043e\u0433\u043e \u0434\u0430\u043c\u043f\u0430 \u0432\u0438\u0434\u043d\u043e \u043b\u0438\u0448\u044c, \u0447\u0442\u043e \u0434\u0430\u043b\u044c\u043d\u0435\u0439\u0448\u0438\u0435 \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f \u043d\u0435 \u043f\u0440\u0438\u0448\u043b\u0438. \u041f\u043e \u043d\u0435\u043c\u0443 \u043d\u0435\u043b\u044c\u0437\u044f \u0440\u0430\u0437\u043b\u0438\u0447\u0438\u0442\u044c \u043f\u043e\u0442\u0435\u0440\u044e \u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u043e \u043f\u0443\u0442\u0438 \u043a \u043a\u043b\u0438\u0435\u043d\u0442\u0443, \u043f\u043e\u0442\u0435\u0440\u044e \u043e\u0431\u0440\u0430\u0442\u043d\u043e\u0433\u043e ACK \u0438\u043b\u0438 \u0438\u043d\u043e\u0435 \u0432\u043c\u0435\u0448\u0430\u0442\u0435\u043b\u044c\u0441\u0442\u0432\u043e \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u0447\u043d\u043e\u0433\u043e \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430. \u041d\u043e \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0443 \u0441 \u0441\u0435\u0440\u0432\u0435\u0440\u043e\u043c \u044f \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u043b.\u0412\u0442\u043e\u0440\u043e\u0439 &#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-501791","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/501791","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=501791"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/501791\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=501791"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=501791"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=501791"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}