Passa al contenuto principale

4. Requests (Richieste)

Una volta completata la sotto-negoziazione dipendente dal metodo, il client invia i dettagli della richiesta (Request). Se il metodo negoziato include l'incapsulamento (Encapsulation) per scopi di controllo dell'integrità (Integrity Checking) e/o riservatezza (Confidentiality), queste richieste devono essere incapsulate nell'incapsulamento dipendente dal metodo.

La richiesta SOCKS (SOCKS Request) è formata come segue:

     +----+-----+-------+------+----------+----------+
|VER | CMD | RSV | ATYP | DST.ADDR | DST.PORT |
+----+-----+-------+------+----------+----------+
| 1 | 1 | X'00' | 1 | Variable | 2 |
+----+-----+-------+------+----------+----------+

Dove:

  • VER versione del protocollo (Protocol Version): X'05'
  • CMD comando (Command)
    • CONNECT X'01'
    • BIND X'02'
    • UDP ASSOCIATE X'03'
  • RSV RISERVATO (RESERVED)
  • ATYP tipo di indirizzo dell'indirizzo seguente (Address Type)
    • IP V4 address: X'01'
    • DOMAINNAME: X'03'
    • IP V6 address: X'04'
  • DST.ADDR indirizzo di destinazione desiderato (Desired Destination Address)
  • DST.PORT porta di destinazione desiderata nell'ordine degli ottetti di rete (Desired Destination Port in Network Octet Order)

Il server SOCKS valuterà tipicamente la richiesta in base agli indirizzi di origine e destinazione e restituirà uno o più messaggi di risposta (Reply Message), come appropriato per il tipo di richiesta.