Socks 4 Bind Запрос Объяснение - PullRequest
3 голосов
/ 12 октября 2011

я читал эту тему http://ftp.icm.edu.pl/packages/socks/socks4/SOCKS4.protocol

и я пытаюсь это сделать: У меня есть клиент-серверное приложение, которое я пытаюсь сделать, это использовать socks-запрос BIND для привязки моего сервера к удаленному socks-серверу и подключения клиентов к этому socks-серверу, а socks-сервер соединит их с моим сервером. (по крайней мере, так я понимаю запрос BIND на носки)

но я не до конца понимаю (мой английский довольно плохой), что я спрашиваю, возможно ли это сделать, когда я не знаю ни одного из удаленных IP-адресов клиентов? поскольку пакет запроса BIND на сервере должен содержать адрес удаленного клиента, а я на самом деле его не имею, так как клиенты от неизвестных пользователей получают информацию о состоянии с моего сервера (или я могу использовать 0 для INANY_ADDR)?

1 Ответ

5 голосов
/ 12 октября 2011

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

То, что вы запрашиваете, лучше обслуживается используемым маршрутизатором с определенными правилами переадресации портов. Затем вы можете открыть прослушивающий порт на маршрутизаторе, который принимает любое входящее соединение и перенаправляет его на прослушиваемый IP / порт вашего приложения. Большинство современных маршрутизаторов поддерживают uPNP (Universal Plug-N-Play), поэтому вы можете программировать правила пересылки программно, а не требовать административного доступа к программному обеспечению конфигурации маршрутизатора.

...