Server SOCKS5 môže prijať TCP spojenie, ale napriek tomu odmietnuť požiadavku na dosiahnutie cieľa. Než rozhodnete, ktorý koncový bod zlyhal, prečítajte odpoveď v správnej fáze.

Najprv sa vyberá metóda. Overenie menom a heslom, ak je vybrané, má vlastný výsledok. Až potom server vráti odpoveď na CONNECT alebo iný príkaz SOCKS. Hodnotu bajtu z jednej fázy nemožno vykladať podľa tabuľky inej fázy.

Odpovede na požiadavky rozlišujú chyby

Hodnota odpovedeVýznam v odpovedi na požiadavku SOCKS5
0x01Všeobecné zlyhanie servera.
0x02Spojenie nie je povolené súborom pravidiel.
0x03Sieť je nedostupná.
0x04Hostiteľ je nedostupný.
0x05Spojenie odmietnuté.
0x06TTL vypršalo.
0x07Príkaz nie je podporovaný.
0x08Typ adresy nie je podporovaný.

Napríklad odmietnutie na úrovni požiadavky sa hlási až po dosiahnutí služby SOCKS. Líši sa od odmietnutia počiatočného TCP spojenia s touto službou operačným systémom.

Chyba typu adresy môže súvisieť s reprezentáciou IPv4, IPv6 alebo mena hostiteľa. Neznamená automaticky, že celý koncový bod nepodporuje SOCKS5. Podobne nepodporovaný príkaz UDP nedáva konečný záver o samostatnej požiadavke TCP CONNECT.

Zhromaždite kontext, vďaka ktorému je kód užitočný

Pri písaní hlásenia chyby zachovajte s výsledkom adresu proxy, príkaz, cieľového hostiteľa a port, rodinu adries a režim DNS. Ak koncový bod spravujete, pomôžu serverové záznamy zásad. Odmietnutie pravidlami vyžaduje kontrolu príslušného oprávnenia, nie predĺženie časového limitu spojenia.

Odpoveď je hlásením servera, nie úplnou nezávislou diagnózou cieľovej siete. Aj formulácie klientov sa líšia. Zaznamenajte fázu a podkladovú odpoveď, ak sú dostupné, namiesto spoliehania sa len na krátku preloženú chybovú správu.

Súvisiace články