SOCKS5 туташуусунун ката коддорун окуу
Ар бир SOCKS катасын иштебеген прокси деп эсептебей, SOCKS сүйлөшүүсү, аутентификация же багыттын кайсынысы иштебей калганын аныктаңыз.
SOCKS5 сервери TCP туташуусун кабыл алып, бирок багытка жетүү өтүнүчүн дагы эле четке кага алат. Кайсы акыркы чекит иштебей калганын чечүүдөн мурун жоопту туура этапта окуңуз.
Адегенде ыкма тандалат. Колдонуучу аты жана сырсөз менен аутентификация тандалса, анын өз натыйжасы бар. Андан кийин гана сервер CONNECT же башка SOCKS буйругуна жооп кайтарат. Бир этаптагы байт маанисин башка этаптын таблицасы менен чечмелөөгө болбойт.
Өтүнүч жооптору ар башка каталарды айырмалайт
| Жооптун мааниси | SOCKS5 өтүнүчүнүн жообундагы мааниси |
|---|---|
| 0x01 | Сервердин жалпы катасы. |
| 0x02 | Эрежелер жыйындысы туташууга уруксат бербейт. |
| 0x03 | Тармакка жеткилик жок. |
| 0x04 | Хостко жеткилик жок. |
| 0x05 | Туташуу четке кагылды. |
| 0x06 | TTL мөөнөтү бүттү. |
| 0x07 | Буйрук колдоого алынбайт. |
| 0x08 | Дарек түрү колдоого алынбайт. |
Мисалы, өтүнүч деңгээлиндеги четке кагуу SOCKS кызматына жеткенден кийин билдирилет. Бул операциялык система ошол кызматка баштапкы TCP туташуусун четке какканынан айырмаланат.
Дарек түрүнүн катасы IPv4, IPv6 же хост аталышынын көрсөтүлүшүнө байланыштуу болушу мүмкүн. Бул акыркы чекиттин баары SOCKS5ти колдобойт дегенди автоматтык билдирбейт. Ошондой эле колдоого алынбаган UDP буйругу өзүнчө TCP CONNECT өтүнүчү тууралуу акыркы тыянак бербейт.
Кодду пайдалуу кылган контекстти чогултуңуз
Ката тууралуу отчет жазганда натыйжа менен бирге прокси дарегин, буйрукту, максат хостун жана портун, дарек үй-бүлөсүн жана DNS режимин сактаңыз. Акыркы чекитти башкарсаңыз, сервердин саясат журналдары пайдалуу. Эрежелердин четке кагышы туташуу таймаутун көбөйтүүгө эмес, тиешелүү уруксатты текшерүүгө себеп.
Жооп сервердин билдирүүсү, максат тармагынын толук көз карандысыз диагнозу эмес. Кардарлардын сөздөрү да айырмаланат. Кыска которулган ката билдирүүсүнө гана таянбай, мүмкүн болсо этапты жана түпкү жоопту жазып алыңыз.