RFC: 1928
Оригинал: SOCKS Protocol Version 5
Категория: Предложенный стандарт
Дата публикации:
Авторы: , , , , ,
Перевод: Александр Горлач

RFC 1928, Страница 6 из 8

CONNECT

В ответ на CONNECT, BND.PORT содержит номер порта, который сервер назначает для соединения с указанным хостом, а BND.ADDR содержит связанный IP-адрес. Выданный BND.ADDR зачастую отличается от IP-адреса, который клиент использует для доступа к SOCKS-северу, так как такие сервера часто имеют несколько IP-адресов. Ожидается, что сервер будет использовать DST.ADDR и DST.PORT и адрес клиента при обработке запроса CONNECT.

BIND

Запрос BIND используется в протоколах, которые требуют чтобы клиент принимал соединение со стороны сервера. Хорошим примером этого является FTP, который использует основное соединение клиент-к-серверу для комманд и сообщений, но может использовать соединение сервер-к-клиенту для передачи данных по запросу (например LS, GET, PUT).

Ожидается, что клиентская сторона прикладного протокола будет использовать запрос BIND только для установки вторичного соединения, после первичного соединения, установленного с использованием CONNECT. Ожидается, что сервер будет использовать DST.ADDR и DST.PORT при обработке запроса BIND.

SOCKS-сервер посылает два ответа клиенту в течении операции BIND. Первый послыается после того, как сервер создает и привязывает новый сокет. Поле BND.PORT содержит номер порта, который SOCKS-сервер выделил для входящего соединения. Поле BND.ADDR содержит связанный IP-адрес. Клиент может использовать эту информацию для уведомления (через первичное соединение) приложения-сервера об адресе для взаимодействия. Второе уведомление происходит после ожидаемого входящего соединения или неудачной попытке входящего соединения.

При втором ответе поля BND.PORT и BND.ADDR содержат адрес и номер порта присоединившегося хоста.

2007 - 2017 © Русские переводы RFC, IETF, ISOC.