ESNI เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเด™เตเด™เดณเตเดŸเต† เดชเตŠเดคเต เดตเต†เดฌเตเดธเตˆเดฑเตเดฑเต เดŽเด™เตเด™เดจเต† เดธเด‚เดฐเด•เตเดทเดฟเด•เตเด•เดพเด‚

เดนเดฒเต‹ เดนเดฌเตผ, เดŽเตปเตเดฑเต† เดชเต‡เดฐเต เด‡เดฒเตเดฏ, เดžเดพเตป เดŽเด•เตโ€Œเดธเตโ€Œเดจเต†เดธเดฟเดฒเต† เดชเตเดฒเดพเดฑเตเดฑเตโ€Œเดซเต‹เด‚ เดŸเต€เดฎเดฟเตฝ เดœเต‹เดฒเดฟ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดžเด™เตเด™เดณเตเดŸเต† เด‰เตฝเดชเตเดชเดจเตเดจ เดตเดฟเด•เดธเดจ เดŸเต€เดฎเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจ เดชเตเดฐเดงเดพเดจ เด‡เตปเดซเตเดฐเดพเดธเตเดŸเตเดฐเด•เตเดšเตผ เด˜เดŸเด•เด™เตเด™เตพ เดžเด™เตเด™เตพ เดตเดฟเด•เดธเดฟเดชเตเดชเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต.

เดˆ เดฒเต‡เด–เดจเดคเตเดคเดฟเตฝ, เดชเตŠเดคเต เดตเต†เดฌเตโ€Œเดธเตˆเดฑเตเดฑเตเด•เดณเตเดŸเต† เด‡เตปเดซเตเดฐเดพเดธเตเดŸเตเดฐเด•เตเดšเดฑเดฟเตฝ เดŽเตปเด•เตเดฐเดฟเดชเตเดฑเตเดฑเดกเต เดŽเดธเตเดŽเตปเด (เด‡เดŽเดธเตเดŽเตปเด) เดธเดพเด™เตเด•เต‡เดคเดฟเด•เดตเดฟเดฆเตเดฏ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเดฟเตปเตเดฑเต† เด…เดจเตเดญเดตเด‚ เดชเด™เตเด•เดฟเดŸเดพเตป เดžเดพเตป เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเต.

ESNI เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเด™เตเด™เดณเตเดŸเต† เดชเตŠเดคเต เดตเต†เดฌเตเดธเตˆเดฑเตเดฑเต เดŽเด™เตเด™เดจเต† เดธเด‚เดฐเด•เตเดทเดฟเด•เตเด•เดพเด‚

เดˆ เดธเดพเด™เตเด•เต‡เดคเดฟเด•เดตเดฟเดฆเตเดฏเดฏเตเดŸเต† เด‰เดชเดฏเต‹เด—เด‚ เด’เดฐเต เดชเตŠเดคเต เดตเต†เดฌเตโ€Œเดธเตˆเดฑเตเดฑเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ เดธเตเดฐเด•เตเดทเดฏเตเดŸเต† เดจเดฟเดฒเดตเดพเดฐเด‚ เดตเตผเดฆเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเด•เดฏเตเด‚ เด•เดฎเตเดชเดจเดฟ เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจ เด†เดจเตเดคเดฐเดฟเด• เดธเตเดฐเด•เตเดทเดพ เดฎเดพเดจเดฆเดฃเตเดกเด™เตเด™เตพ เดชเดพเดฒเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเด‚.

เด’เดจเตเดจเดพเดฎเดคเดพเดฏเดฟ, เดธเดพเด™เตเด•เต‡เดคเดฟเด•เดตเดฟเดฆเตเดฏ เดธเตเดฑเตเดฑเดพเตปเดกเต‡เตผเดกเต เดšเต†เดฏเตเดคเดฟเดŸเตเดŸเดฟเดฒเตเดฒเต†เดจเตเดจเตเด‚ เด…เดคเต เด‡เดชเตเดชเต‹เดดเตเด‚ เดกเตเดฐเดพเดซเตเดฑเตเดฑเดฟเดฒเดพเดฃเต†เดจเตเดจเตเด‚ เดžเดพเตป เดšเต‚เดฃเตเดŸเดฟเด•เตเด•เดพเดฃเดฟเด•เตเด•เดพเตป เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเต, เดŽเดจเตเดจเดพเตฝ เด•เตเดฒเต—เดกเตเดซเตเดฒเต†เดฏเดฑเตเด‚ เดฎเต‹เดธเดฟเดฒเตเดฒเดฏเตเด‚ เด‡เดคเดฟเดจเด•เด‚ เด…เดคเดฟเดจเต† เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เตเดจเตเดจเต (เด‡เตป เดกเตเดฐเดพเดซเตเดฑเตเดฑเต01). เด‡เดคเดพเดฃเต เด‡เดคเตเดคเดฐเดฎเตŠเดฐเต เดชเดฐเต€เด•เตเดทเดฃเดคเตเดคเดฟเดจเต เดžเด™เตเด™เดณเต† เดชเตเดฐเต‡เดฐเดฟเดชเตเดชเดฟเดšเตเดšเดคเต.

เด’เดฐเต เดธเดฟเดฆเตเดงเดพเดจเตเดคเด‚

ESNI TLS เดนเดพเตปเดกเตโ€Œเดทเต‡เด•เตเด•เต "เด•เตเดฒเดฏเตปเตเดฑเต เดนเดฒเต‹" เดธเดจเตเดฆเต‡เดถเดคเตเดคเดฟเตฝ SNI เดŽเตปเด•เตเดฐเดฟเดชเตเดทเตป เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจ TLS 1.3 เดชเตเดฐเต‹เดŸเตเดŸเต‹เด•เตเด•เต‹เดณเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เด’เดฐเต เดตเดฟเดชเตเดฒเต€เด•เดฐเดฃเดฎเดพเดฃเต. ESNI เดชเดฟเดจเตเดคเตเดฃเดฏเต‹เดŸเต† เด•เตเดฒเดฏเตปเตเดฑเต เดนเดฒเต‹ เดŽเด™เตเด™เดจเต† เด•เดพเดฃเดชเตเดชเต†เดŸเตเดจเตเดจเตเดตเต†เดจเตเดจเดคเต เด‡เดคเดพ (เดธเดพเดงเดพเดฐเดฃ SNI-เด•เตเด•เต เดชเด•เดฐเด‚ ESNI เด†เดฃเต เดจเดฎเตเดฎเตพ เด•เดพเดฃเตเดจเตเดจเดคเต):

ESNI เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเด™เตเด™เดณเตเดŸเต† เดชเตŠเดคเต เดตเต†เดฌเตเดธเตˆเดฑเตเดฑเต เดŽเด™เตเด™เดจเต† เดธเด‚เดฐเด•เตเดทเดฟเด•เตเด•เดพเด‚

 ESNI เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดฎเต‚เดจเตเดจเต เด˜เดŸเด•เด™เตเด™เตพ เด†เดตเดถเตเดฏเดฎเดพเดฃเต:

  • เดกเดฟเดŽเตปเดŽเดธเต; 
  • เด‰เดชเดญเต‹เด•เตเดคเตƒ เดชเดฟเดจเตเดคเตเดฃ;
  • เดธเต†เตผเดตเตผ เดธเตˆเดกเต เดชเดฟเดจเตเดคเตเดฃ.

เดกเดฟเดŽเตปเดŽเดธเต

เดจเดฟเด™เตเด™เตพ เดฐเดฃเตเดŸเต DNS เดฑเต†เด•เตเด•เต‹เตผเดกเตเด•เตพ เดšเต‡เตผเด•เตเด•เต‡เดฃเตเดŸเดคเตเดฃเตเดŸเต - Aเด’เดชเตเดชเด‚ เดŸเต†เด•เตเดธเตเดฑเตเดฑเต (TXT เดฑเต†เด•เตเด•เต‹เตผเดกเดฟเตฝ เด•เตเดฒเดฏเตปเตเดฑเดฟเดจเต SNI เดŽเตปเด•เตเดฐเดฟเดชเตเดฑเตเดฑเต เดšเต†เดฏเตเดฏเดพเตป เด•เดดเดฟเดฏเตเดจเตเดจ เดชเตŠเดคเต เด•เต€ เด…เดŸเด™เตเด™เดฟเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต) - เดคเดพเดดเต† เด•เดพเดฃเตเด•. เด•เต‚เดŸเดพเดคเต†, เดชเดฟเดจเตเดคเตเดฃ เด‰เดฃเตเดŸเดพเดฏเดฟเดฐเดฟเด•เตเด•เดฃเด‚ DoH (เดŽเดšเตเดšเตเดŸเดฟเดŸเดฟเดชเดฟเดŽเดธเดฟเดฒเต‚เดŸเต†เดฏเตเดณเตเดณ เดกเดฟเดŽเตปเดŽเดธเต) เด•เดพเดฐเดฃเด‚ เดฒเดญเตเดฏเดฎเดพเดฏ เด•เตเดฒเดฏเตปเตเดฑเตเด•เตพ (เดšเตเดตเดŸเต† เด•เดพเดฃเตเด•) DoH เด‡เดฒเตเดฒเดพเดคเต† ESNI เดชเดฟเดจเตเดคเตเดฃ เดชเตเดฐเดตเตผเดคเตเดคเดจเด•เตเดทเดฎเดฎเดพเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ. เด‡เดคเต เดฏเตเด•เตเดคเดฟเดธเดนเดฎเดพเดฃเต, เด•เดพเดฐเดฃเด‚ เดจเดฎเตเดฎเตพ เด†เด•เตโ€Œเดธเดธเต เดšเต†เดฏเตเดฏเตเดจเตเดจ เดฑเดฟเดธเต‹เดดเตเดธเดฟเตปเตเดฑเต† เดชเต‡เดฐเดฟเตปเตเดฑเต† เดŽเตปเด•เตเดฐเดฟเดชเตเดทเดจเต† ESNI เดธเต‚เดšเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต, เด…เดคเดพเดฏเดคเต, UDP เดตเดดเดฟ DNS เด†เด•เตเดธเดธเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเตฝ เด…เตผเดคเตเดฅเดฎเดฟเดฒเตเดฒ. เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เด‰เดชเดฏเต‹เด—เด‚ เดกเดฟเดŽเตปเดŽเดธเตเดŽเดธเตเด‡เดธเดฟ เดˆ เดธเดพเดนเดšเดฐเตเดฏเดคเตเดคเดฟเตฝ เด•เดพเดทเต† เดตเดฟเดทเดฌเดพเดง เด†เด•เตเดฐเดฎเดฃเด™เตเด™เดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดชเดฐเดฟเดฐเด•เตเดทเดฟเด•เตเด•เดพเตป เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต.

เด‡เดชเตเดชเต‡เดพเตพ เดฒเดญเตเดฏเดฎเดพเดฃเต เดจเดฟเดฐเดตเดงเดฟ DoH เดฆเดพเดคเดพเด•เตเด•เตพ, เด…เดตเตผเด•เตเด•เดฟเดŸเดฏเดฟเตฝ:

เดšเตเดฒเตŠเด‰เดฆเตเดซเตเดฒเดฐเต† เดชเตเดฐเด–เตเดฏเดพเดชเดฟเด•เตเด•เตเดจเตเดจเต (เดŽเตปเตเดฑเต† เดฌเตเดฐเต—เดธเตผ เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเด• โ†’ เดŽเตปเด•เตเดฐเดฟเดชเตเดฑเตเดฑเดกเต SNI โ†’ เด•เต‚เดŸเตเดคเดฒเดฑเดฟเดฏเตเด•) เด…เดตเดฐเตเดŸเต† เดธเต†เตผเดตเดฑเตเด•เตพ เด‡เดคเดฟเดจเด•เด‚ ESNI-เดฏเต† เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เตเดจเตเดจเต, เด…เดคเดพเดฏเดคเต, DNS-เดฒเต† CloudFlare เดธเต†เตผเดตเดฑเตเด•เตพเด•เตเด•เดพเดฏเดฟ เดžเด™เตเด™เตพเด•เตเด•เต เด•เตเดฑเดžเตเดžเดคเต เดฐเดฃเตเดŸเต เดฑเต†เด•เตเด•เต‹เตผเดกเตเด•เดณเต†เด™เตเด•เดฟเดฒเตเด‚ เด‰เดฃเตเดŸเต - A, TXT. เดšเตเดตเดŸเต†เดฏเตเดณเตเดณ เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเตฝ เดžเด™เตเด™เตพ Google DNS (HTTPS เดตเดดเดฟ) เด…เดจเตเดตเต‡เดทเดฟเด•เตเด•เตเดจเตเดจเต: 

ะ เดชเตเดฐเดตเต‡เดถเดจเด‚:

curl 'https://dns.google.com/resolve?name=www.cloudflare.com&type=A' 
-s -H 'accept: application/dns+json'
{
  "Status": 0,
  "TC": false,
  "RD": true,
  "RA": true,
  "AD": true,
  "CD": false,
  "Question": [
    {
      "name": "www.cloudflare.com.",
      "type": 1
    }
  ],
  "Answer": [
    {
      "name": "www.cloudflare.com.",
      "type": 1,
      "TTL": 257,
      "data": "104.17.210.9"
    },
    {
      "name": "www.cloudflare.com.",
      "type": 1,
      "TTL": 257,
      "data": "104.17.209.9"
    }
  ]
}

เดŸเต†เด•เตเดธเตเดฑเตเดฑเต เดฑเต†เด•เตเด•เต‹เตผเดกเต, เด’เดฐเต เดŸเต†เด‚เดชเตเดฒเต‡เดฑเตเดฑเต เด…เดจเตเดธเดฐเดฟเดšเตเดšเต เด…เดญเตเดฏเตผเดคเตเดฅเดจ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเต _esni.FQDN:

curl 'https://dns.google.com/resolve?name=_esni.www.cloudflare.com&type=TXT' 
-s -H 'accept: application/dns+json'
{
  "Status": 0,
  "TC": false,
  "RD": true,
  "RA": true,
  "AD": true,
  "CD": false,
  "Question": [
    {
    "name": "_esni.www.cloudflare.com.",
    "type": 16
    }
  ],
  "Answer": [
    {
    "name": "_esni.www.cloudflare.com.",
    "type": 16,
    "TTL": 1799,
    "data": ""/wEUgUKlACQAHQAg9SiAYQ9aUseUZr47HYHvF5jkt3aZ5802eAMJPhRz1QgAAhMBAQQAAAAAXtUmAAAAAABe3Q8AAAA=""
    }
  ],
  "Comment": "Response from 2400:cb00:2049:1::a29f:209."
}

เด…เดคเดฟเดจเดพเตฝ, เด’เดฐเต DNS เดตเต€เด•เตเดทเดฃเด•เต‹เดฃเดฟเตฝ, เดžเด™เตเด™เตพ DoH เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดฃเด‚ (เดตเต†เดฏเดฟเดฒเดคเตเดคเต DNSSEC-เดจเตŠเดชเตเดชเด‚) เด•เต‚เดŸเดพเดคเต† เดฐเดฃเตเดŸเต เดŽเตปเดŸเตเดฐเดฟเด•เตพ เดšเต‡เตผเด•เตเด•เตเด•. 

เด‰เดชเดญเต‹เด•เตเดคเตƒ เดชเดฟเดจเตเดคเตเดฃ

เดจเดฎเตเดฎเตพ เดฌเตเดฐเต—เดธเดฑเตเด•เดณเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดธเด‚เดธเดพเดฐเดฟเด•เตเด•เตเด•เดฏเดพเดฃเต†เด™เตเด•เดฟเตฝ, เด‡เดชเตเดชเต‹เตพ เดซเดฏเตผเดซเต‹เด•เตเดธเดฟเตฝ เดฎเดพเดคเตเดฐเดฎเดพเดฃเต เดชเดฟเดจเตเดคเตเดฃ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตเดจเตเดจเดคเต. เด‡เดคเต เดซเดฏเตผเดซเต‹เด•เตเดธเดฟเตฝ ESNI, DoH เดชเดฟเดจเตเดคเตเดฃ เดŽเด™เตเด™เดจเต† เดธเดœเต€เดตเดฎเดพเด•เตเด•เดพเด‚ เดŽเดจเตเดจเดคเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเตเดณเตเดณ เดจเดฟเตผเดฆเตเดฆเต‡เดถเด™เตเด™เตพ เด‡เดตเดฟเดŸเต†เดฏเตเดฃเตเดŸเต. เดฌเตเดฐเต—เดธเตผ เด•เต‹เตบเดซเดฟเด—เตผ เดšเต†เดฏเตโ€Œเดค เดถเต‡เดทเด‚, เดจเดฎเตเดฎเตพ เด‡เดคเตเดชเต‹เดฒเตเดณเตเดณ เด’เดจเตเดจเต เด•เดพเดฃเตเด‚:

ESNI เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเด™เตเด™เดณเตเดŸเต† เดชเตŠเดคเต เดตเต†เดฌเตเดธเตˆเดฑเตเดฑเต เดŽเด™เตเด™เดจเต† เดธเด‚เดฐเด•เตเดทเดฟเด•เตเด•เดพเด‚

เดฒเดฟเด™เตเด•เต เดฌเตเดฐเต—เดธเตผ เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เดพเตป.

เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚, ESNI-เดฏเต† เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เดพเตป TLS 1.3 เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดฃเด‚, เด•เดพเดฐเดฃเด‚ ESNI เดŽเดจเตเดจเดคเต TLS 1.3-เดฒเต‡เด•เตเด•เตเดณเตเดณ เด’เดฐเต เดตเดฟเดชเตเดฒเต€เด•เดฐเดฃเดฎเดพเดฃเต.

ESNI เดชเดฟเดจเตเดคเตเดฃเดฏเต‹เดŸเต† เดฌเดพเด•เตเด•เต†เตปเดกเต เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเดพเดฏเดฟ, เดžเด™เตเด™เตพ เด•เตเดฒเดฏเตปเตเดฑเต เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดฟ go, เดŽเดจเตเดจเดพเตฝ เด…เดคเดฟเดจเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เด•เต‚เดŸเตเดคเตฝ เดชเดฟเดจเตเดจเต€เดŸเต.

เดธเต†เตผเดตเตผ เดธเตˆเดกเต เดชเดฟเดจเตเดคเตเดฃ

เดจเดฟเดฒเดตเดฟเตฝ, nginx/apache เดฎเตเดคเดฒเดพเดฏ เดตเต†เดฌเต เดธเต†เตผเดตเดฑเตเด•เตพ ESNI-เดฏเต† เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒ, เด•เดพเดฐเดฃเด‚ เด…เดตเตผ ESNI-เดฏเต† เด”เดฆเตเดฏเต‹เด—เดฟเด•เดฎเดพเดฏเดฟ เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เดพเดคเตเดค OpenSSL/BoringSSL เดตเดดเดฟ TLS-เตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต.

เด…เดคเดฟเดจเดพเตฝ, เดžเด™เตเด™เดณเตเดŸเต† เดธเตเดตเดจเตเดคเด‚ เดซเตเดฐเดฃเตเดŸเต-เดŽเตปเดกเต เด˜เดŸเด•เด‚ (ESNI เดฑเดฟเดตเต‡เดดเตเดธเต เดชเตเดฐเต‹เด•เตเดธเดฟ) เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเตป เดžเด™เตเด™เตพ เดคเต€เดฐเตเดฎเดพเดจเดฟเดšเตเดšเต, เด…เดคเต ESNI เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต TLS 1.3 เด…เดตเดธเดพเดจเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเด‚ ESNI-เดฏเต† เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เดพเดคเตเดค เด…เดชเตเดธเตเดŸเตเดฐเต€เดฎเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เดชเตเดฐเต‹เด•เตเดธเดฟ HTTP(S) เดŸเตเดฐเดพเดซเดฟเด•เตเด•เดฟเดจเต†เดฏเตเด‚ เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เตเด‚. เดชเตเดฐเดงเดพเดจ เด˜เดŸเด•เด™เตเด™เตพ เดฎเดพเดฑเตเดฑเดพเดคเต† - เด…เดคเดพเดฏเดคเต, ESNI-เดฏเต† เดชเดฟเดจเตเดคเตเดฃเดฏเตโ€Œเด•เตเด•เดพเดคเตเดค เดจเดฟเดฒเดตเดฟเดฒเต† เดตเต†เดฌเต เดธเต†เตผเดตเดฑเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต - เด‡เดคเดฟเดจเด•เด‚ เดจเดฟเดฒเดตเดฟเดฒเตเดณเตเดณ เด’เดฐเต เด‡เตปเดซเตเดฐเดพเดธเตเดŸเตเดฐเด•เตเดšเดฑเดฟเตฝ เดธเดพเด™เตเด•เต‡เดคเดฟเด•เดตเดฟเดฆเตเดฏ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเตป เด‡เดคเต เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต. 

เดตเตเดฏเด•เตเดคเดคเดฏเตเด•เตเด•เดพเดฏเดฟ, เด‡เดคเดพ เด’เดฐเต เดกเดฏเด—เตเดฐเด‚:

ESNI เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเด™เตเด™เดณเตเดŸเต† เดชเตŠเดคเต เดตเต†เดฌเตเดธเตˆเดฑเตเดฑเต เดŽเด™เตเด™เดจเต† เดธเด‚เดฐเด•เตเดทเดฟเด•เตเด•เดพเด‚

ESNI เด‡เดฒเตเดฒเดพเดคเต† เด’เดฐเต TLS เด•เดฃเด•เตเดทเตป เด…เดตเดธเดพเดจเดฟเดชเตเดชเดฟเด•เตเด•เดพเดจเตเด‚ ESNI เด‡เดฒเตเดฒเดพเดคเต† เด•เตเดฒเดฏเตปเตเดฑเตเด•เดณเต† เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เดพเดจเตเดฎเตเดณเตเดณ เด•เดดเดฟเดตเต‹เดŸเต†เดฏเดพเดฃเต เดชเตเดฐเต‹เด•เตเดธเดฟ เดฐเต‚เดชเด•เตฝเดชเตเดชเดจ เดšเต†เดฏเตเดคเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเต†เดจเตเดจเต เดžเดพเตป เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เตเดจเตเดจเต. เด•เต‚เดŸเดพเดคเต†, เด…เดชเตโ€ŒเดธเตเดŸเตเดฐเต€เด‚ เด‰เดณเตเดณ เด•เดฎเตเดฎเตเดฏเต‚เดฃเดฟเด•เตเด•เต‡เดทเตป เดชเตเดฐเต‹เดŸเตเดŸเต‹เด•เตเด•เต‹เตพ 1.3-เตฝ เดคเดพเดดเต†เดฏเตเดณเตเดณ TLS เดชเดคเดฟเดชเตเดชเตเดณเตเดณ HTTP เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ HTTPS เด†เด•เดพเด‚ (เด…เดชเตโ€ŒเดธเตเดŸเตเดฐเต€เด‚ 1.3 เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เตเดจเตเดจเดฟเดฒเตเดฒเต†เด™เตเด•เดฟเตฝ). เดˆ เดธเตเด•เต€เด‚ เดชเดฐเดฎเดพเดตเดงเดฟ เดตเดดเด•เตเด•เด‚ เดจเตฝเด•เตเดจเตเดจเต.

ESNI เดชเดฟเดจเตเดคเตเดฃ เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เตฝ เด“เดฃเดพเดฃเต go เดžเด™เตเด™เตพ เด•เดŸเด‚ เดตเดพเด™เตเด™เดฟ เดšเตเดฒเตŠเด‰เดฆเตเดซเตเดฒเดฐเต†. เดธเตเดฑเตเดฑเดพเตปเดกเต‡เตผเดกเต เดฒเตˆเดฌเตเดฐเดฑเดฟเดฏเดฟเดฒเต† เดฎเดพเดฑเตเดฑเด™เตเด™เตพ เด‰เตพเดชเตเดชเต†เดŸเตเดจเตเดจเดคเดฟเดจเดพเตฝ, เดจเดŸเดชเตเดชเดพเด•เตเด•เตฝ เดคเดจเตเดจเต† เดจเดฟเดธเตเดธเดพเดฐเดฎเดฒเตเดฒเต†เดจเตเดจเต เดžเดพเตป เด‰เดŸเดจเต† เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เดพเตป เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเต. crypto/tls เด…เดคเดฟเดจเดพเตฝ "เดชเดพเดšเตเดšเดฟเด‚เด—เต" เด†เดตเดถเตเดฏเดฎเดพเดฃเต เด—เตŠเดฐเต‚เดŸเตเดŸเต เด…เดธเด‚เดฌเตเดฒเดฟเด•เตเด•เต เดฎเตเดฎเตเดชเต.

เดžเด™เตเด™เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดš ESNI เด•เต€เด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดพเตป เดŽเดธเตเดจเดฟเดฑเตเดฑเต‚เตพ (เด•เตเดฒเต—เดกเตเดซเตเดฒเต†เดฏเดฑเดฟเตปเตเดฑเต† เด†เดถเดฏเดตเตเด‚). เดˆ เด•เต€เด•เตพ เดŽเดธเตเดŽเตปเด เดŽเตปเด•เตเดฐเดฟเดชเตเดทเตป/เดกเต€เด•เตเดฐเดฟเดชเตเดทเตป เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเต.
เด—เต‹ 1.13 เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดžเด™เตเด™เตพ เดฌเดฟเตฝเดกเต เดชเดฐเต€เด•เตเดทเดฟเดšเตเดšเต. Linux (Debian, เด†เตฝเดชเตˆเตป) เด•เต‚เดŸเดพเดคเต† เดฎเดพเด•เต‹เดธเต. 

เดชเตเดฐเดตเตผเดคเตเดคเดจ เดธเดตเดฟเดถเต‡เดทเดคเด•เดณเต† เด•เตเดฑเดฟเดšเตเดšเต เด•เตเดฑเดšเตเดšเต เดตเดพเด•เตเด•เตเด•เตพ

เด†เตผเดชเดฟเดŽเดธเต, เด…เดชเตโ€ŒเดธเตเดŸเตเดฐเต€เด‚ เดฒเต‡เดฑเตเดฑเตปเดธเดฟ & เดฑเต†เดธเตโ€Œเดชเต‹เตบเดธเต เด•เต‹เดกเตเด•เตพ, เดชเดฐเดพเดœเดฏเดชเตเดชเต†เดŸเตเดŸ/เดตเดฟเดœเดฏเดฟเดšเตเดš เดŸเดฟเดŽเตฝเดŽเดธเต เดนเดพเตปเดกเตโ€Œเดทเต‡เด•เตเด•เตเด•เตพ, เดŸเดฟเดŽเตฝเดŽเดธเต เดนเดพเตปเดกเตโ€Œเดทเต‡เด•เตเด•เต เดฆเตˆเตผเด˜เตเดฏเด‚ เดŽเดจเตเดจเดฟเดต เดชเต‹เดฒเตเดณเตเดณ เดชเตเดฐเต‹เดฎเดฟเดคเตเดฏเต‚เดธเต เดซเต‹เตผเดฎเดพเดฑเตเดฑเดฟเตฝ เดฎเต†เดŸเตเดฐเดฟเด•เตโ€Œเดธเต ESNI เดฑเดฟเดตเต‡เดดเตเดธเต เดชเตเดฐเต‹เด•เตเดธเดฟ เดจเตฝเด•เตเดจเตเดจเต. เด’เดฑเตเดฑเดจเต‹เดŸเตเดŸเดคเตเดคเดฟเตฝ, เดชเตเดฐเต‹เด•เตเดธเดฟ เดŸเตเดฐเดพเดซเดฟเด•เต เดŽเด™เตเด™เดจเต† เด•เตˆเด•เดพเดฐเตเดฏเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต เดŽเดจเตเดจเต เดตเดฟเดฒเดฏเดฟเดฐเตเดคเตเดคเดพเตป เด‡เดคเต เดฎเดคเดฟเดฏเดพเด•เตเด‚. 

เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดฎเตเดฎเตเดชเต เดžเด™เตเด™เตพ เดฒเต‹เดกเต เดชเดฐเดฟเดถเต‹เดงเดจเดฏเตเด‚ เดจเดŸเดคเตเดคเดฟ. เดซเดฒเด™เตเด™เตพ เดคเดพเดดเต†:

wrk -t50 -c1000 -d360s 'https://esni-rev-proxy.npw:443' --timeout 15s
Running 6m test @ https://esni-rev-proxy.npw:443
  50 threads and 1000 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     1.77s     1.21s    7.20s    65.43%
    Req/Sec    13.78      8.84   140.00     83.70%
  206357 requests in 6.00m, 6.08GB read
Requests/sec:    573.07
Transfer/sec:     17.28MB 

ESNI เดฑเดฟเดตเต‡เดดเตเดธเต เดชเตเดฐเต‹เด•เตเดธเดฟ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเตเด‚ เด…เดฒเตเดฒเดพเดคเต†เดฏเตเด‚ เดธเตเด•เต€เด‚ เดคเดพเดฐเดคเดฎเตเดฏเด‚ เดšเต†เดฏเตเดฏเดพเตป เดžเด™เตเด™เตพ เดคเดฟเด•เดšเตเดšเตเด‚ เด—เตเดฃเดชเดฐเดฎเดพเดฏ เดฒเต‹เดกเต เดŸเต†เดธเตเดฑเตเดฑเดฟเด‚เด—เต เดจเดŸเดคเตเดคเดฟ. เด‡เตปเตเดฑเตผเดฎเต€เดกเดฟเดฏเดฑเตเดฑเต เด˜เดŸเด•เด™เตเด™เดณเดฟเดฒเต† "เด‡เดŸเดชเต†เดŸเตฝ" เด‡เดฒเตเดฒเดพเดคเดพเด•เตเด•เดพเตป เดžเด™เตเด™เตพ เดชเตเดฐเดพเดฆเต‡เดถเดฟเด•เดฎเดพเดฏเดฟ เดŸเตเดฐเดพเดซเดฟเด•เต "เดชเด•เตผเดจเตเดจเต".

เด…เดคเดฟเดจเดพเตฝ, ESNI เดชเดฟเดจเตเดคเตเดฃเดฏเตเด‚ HTTP-เดฏเดฟเตฝ เดจเดฟเดจเตเดจเต เด…เดชเตโ€ŒเดธเตเดŸเตเดฐเต€เดฎเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เดชเตเดฐเต‹เด•เตโ€Œเดธเดฟเด‚เด—เตเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต, ESNI เดฑเดฟเดตเต‡เดดเตโ€Œเดธเต เดชเตเดฐเต‹เด•เตโ€ŒเดธเดฟเดฏเตเดŸเต† เดถเดฐเดพเดถเดฐเดฟ CPU/RAM เด‰เดชเดญเต‹เด—เด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดžเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เดธเด‚เดญเดตเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดเด•เดฆเต‡เดถเด‚ ~550 rps เดฒเดญเดฟเดšเตเดšเต:

  • 80% CPU เด‰เดชเดฏเต‹เด—เด‚ (4 vCPU, 4 GB RAM เดนเต‹เดธเตเดฑเตเดฑเตเด•เตพ, Linux)
  • 130 MB เดฎเต†เด‚ RSS

ESNI เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดฟเด™เตเด™เดณเตเดŸเต† เดชเตŠเดคเต เดตเต†เดฌเตเดธเตˆเดฑเตเดฑเต เดŽเด™เตเด™เดจเต† เดธเด‚เดฐเด•เตเดทเดฟเด•เตเด•เดพเด‚

เดคเดพเดฐเดคเดฎเตเดฏเดคเตเดคเดฟเดจเดพเดฏเดฟ, TLS (HTTP เดชเตเดฐเต‹เดŸเตเดŸเต‹เด•เตเด•เต‹เตพ) เด…เดตเดธเดพเดจเดฟเดชเตเดชเดฟเด•เตเด•เดพเดคเต† เด…เดคเต‡ nginx เด…เดชเตโ€ŒเดธเตเดŸเตเดฐเต€เดฎเดฟเดจเตเดณเตเดณ RPS ~ 1100 เด†เดฃเต:

wrk -t50 -c1000 -d360s 'http://lb.npw:80' โ€“-timeout 15s
Running 6m test @ http://lb.npw:80
  50 threads and 1000 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency     1.11s     2.30s   15.00s    90.94%
    Req/Sec    23.25     13.55   282.00     79.25%
  393093 requests in 6.00m, 11.35GB read
  Socket errors: connect 0, read 0, write 0, timeout 9555
  Non-2xx or 3xx responses: 8111
Requests/sec:   1091.62
Transfer/sec:     32.27MB 

เดŸเตˆเด‚เด”เดŸเตเดŸเตเด•เดณเตเดŸเต† เดธเดพเดจเตเดจเดฟเดงเตเดฏเด‚ เดธเต‚เดšเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเต เดตเดฟเดญเดตเด™เตเด™เดณเตเดŸเต† เด…เดญเดพเดตเดฎเดพเดฃเต (เดžเด™เตเด™เตพ 4 vCPU, 4 GB RAM เดนเต‹เดธเตเดฑเตเดฑเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต, Linux), เดตเดพเดธเตเดคเดตเดคเตเดคเดฟเตฝ เดธเดพเดงเตเดฏเดคเดฏเตเดณเตเดณ RPS เด•เต‚เดŸเตเดคเดฒเดพเดฃเต (เด•เต‚เดŸเตเดคเตฝ เดถเด•เตเดคเดฎเดพเดฏ เด‰เดฑเดตเดฟเดŸเด™เตเด™เดณเดฟเตฝ เดจเดฟเดจเตเดจเต 2700 RPS เดตเดฐเต†เดฏเตเดณเตเดณ เด•เดฃเด•เตเด•เตเด•เตพ เดžเด™เตเด™เตพเด•เตเด•เต เดฒเดญเดฟเดšเตเดšเต).

เด‰เดชเดธเด‚เดนเดพเดฐเดฎเดพเดฏเดฟ, เดžเดพเตป เดถเตเดฐเดฆเตเดงเดฟเด•เตเด•เตเดจเตเดจเต ESNI เดธเดพเด™เตเด•เต‡เดคเดฟเด•เดตเดฟเดฆเตเดฏ เดตเดณเดฐเต† เดชเตเดฐเดคเต€เด•เตเดท เดจเตฝเด•เตเดจเตเดจเดคเดพเดฏเดฟ เดคเต‹เดจเตเดจเตเดจเตเดจเต. เด‡เดจเดฟเดฏเตเด‚ เดจเดฟเดฐเดตเดงเดฟ เดคเตเดฑเดจเตเดจ เดšเต‹เดฆเตเดฏเด™เตเด™เดณเตเดฃเตเดŸเต, เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, DNS-เตฝ เดชเตŠเดคเต ESNI เด•เต€ เดธเด‚เดญเดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเด‚ ESNI เด•เต€เด•เตพ เด•เดฑเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดฎเตเดณเตเดณ เดชเตเดฐเดถเตเดจเด™เตเด™เตพ - เดˆ เดชเตเดฐเดถเตเดจเด™เตเด™เตพ เดธเดœเต€เดตเดฎเดพเดฏเดฟ เดšเตผเดšเตเดš เดšเต†เดฏเตเดฏเดชเตเดชเต†เดŸเตเดจเตเดจเต, เด•เต‚เดŸเดพเดคเต† ESNI เดกเตเดฐเดพเดซเตเดฑเตเดฑเดฟเตปเตเดฑเต† เดเดฑเตเดฑเดตเตเด‚ เดชเตเดคเดฟเดฏ เดชเดคเดฟเดชเตเดชเต (เดŽเดดเตเดคเตเดจเตเดจ เดธเดฎเดฏเดคเตเดคเต) เด‡เดคเดฟเดจเด•เด‚ เดคเดจเตเดจเต† เด‰เดฃเตเดŸเต. 7.

เด…เดตเดฒเด‚เดฌเด‚: www.habr.com

DDoS เดชเดฐเดฟเดฐเด•เตเดทเดฏเตเดณเตเดณ เดธเตˆเดฑเตเดฑเตเด•เตพเด•เตเด•เดพเดฏเดฟ เดตเดฟเดถเตเดตเดธเดจเต€เดฏเดฎเดพเดฏ เดนเต‹เดธเตเดฑเตเดฑเดฟเด‚เด—เต เดตเดพเด™เตเด™เตเด•, VPS VDS เดธเต†เตผเดตเดฑเตเด•เตพ ๐Ÿ”ฅ DDoS เดชเดฐเดฟเดฐเด•เตเดท, VPS VDS เดธเต†เตผเดตเดฑเตเด•เตพ เด‰เดณเตเดณ เดตเดฟเดถเตเดตเดธเดจเต€เดฏเดฎเดพเดฏ เดตเต†เดฌเตโ€Œเดธเตˆเดฑเตเดฑเต เดนเต‹เดธเตเดฑเตเดฑเดฟเด‚เด—เต เดตเดพเด™เตเด™เต‚ | ProHoster