SOCKS5 սերվերը կարող է ընդունել TCP կապը, բայց մերժել նպատակակետին հասնելու հարցումը։ Նախքան որոշելը՝ որ վերջնակետն է ձախողվել, կարդացեք ճիշտ փուլի պատասխանը։

Սկզբում ընտրվում է մեթոդը։ Օգտանունով և գաղտնաբառով նույնականացումը, եթե ընտրված է, ունի սեփական արդյունքը։ Միայն դրանից հետո սերվերը վերադարձնում է CONNECT կամ այլ SOCKS հրամանի պատասխանը։ Մի փուլի բայթի արժեքը չի կարելի մեկնաբանել մյուս փուլի աղյուսակով։

Հարցման պատասխանները տարբերակում են ձախողումները

Պատասխանի արժեքԻմաստը SOCKS5 հարցման պատասխանում
0x01Սերվերի ընդհանուր ձախողում։
0x02Կանոնների հավաքածուն չի թույլատրում կապը։
0x03Ցանցն անհասանելի է։
0x04Հոսթն անհասանելի է։
0x05Կապը մերժվել է։
0x06TTL-ը սպառվել է։
0x07Հրամանը չի աջակցվում։
0x08Հասցեի տեսակը չի աջակցվում։

Օրինակ՝ հարցման մակարդակի մերժումը հաղորդվում է SOCKS ծառայությանը հասնելուց հետո։ Դա տարբերվում է օպերացիոն համակարգի՝ այդ ծառայությանը սկզբնական TCP կապը մերժելուց։

Հասցեի տեսակի սխալը կարող է վերաբերել IPv4, IPv6 կամ հոսթի անվան ներկայացմանը։ Դա ինքնաբերաբար չի նշանակում, որ ամբողջ վերջնակետը չի աջակցում SOCKS5։ Նմանապես, չաջակցվող UDP հրամանը վերջնական եզրակացություն չի տալիս առանձին TCP CONNECT հարցման մասին։

Հավաքեք կոդը օգտակար դարձնող համատեքստը

Սխալի զեկույց գրելիս արդյունքի հետ պահեք պրոքսիի հասցեն, հրամանը, թիրախ հոսթն ու պորտը, հասցեների ընտանիքը և DNS ռեժիմը։ Եթե կառավարում եք վերջնակետը, օգտակար են սերվերի քաղաքականության մատյանները։ Կանոններով մերժումը հիմք է կիրառելի թույլտվությունը ստուգելու, ոչ թե կապի ժամանակասահմանը մեծացնելու։

Պատասխանը սերվերի հաղորդումն է, ոչ նպատակակետի ցանցի ամբողջական անկախ ախտորոշումը։ Հաճախորդների ձևակերպումներն էլ են տարբեր։ Եթե հասանելի են, գրանցեք փուլն ու հիմքում ընկած պատասխանը՝ միայն կարճ թարգմանված սխալի հաղորդագրությանը չհենվելով։

Առնչվող հոդվածներ