我是一个完全不了解socks5的新手,但我尝试通过创建一个socks5服务器来学习。
我从阅读RFC 1928获得了关于SocksV5的大量信息。
该文档解释了必须发送到客户端和服务器以建立与服务器的连接、请求远程连接和绑定的数据包。它还解释了如何使用UDP,这很好。
我不明白的是,在建立连接后会发生什么。
例如,
Client: <sends method identifiers>
Server: <responds with the method identifier to use>
...authentication is complete....
Client: Sends a connection request to 192.168.1.1:2321
Server: Acknowledges Packet
Server: Acknowledges successful connection to 192.168.1.1:2321
Client: ????
客户端向服务器实际转发数据到目的地时发送的数据包格式是什么?
假设客户端要求代理服务器建立3个连接。当客户端想要将数据转发到连接1时,必须有一种协议来完成此操作。否则,服务器将如何知道将其发送到哪个连接?我在RFC文档中找不到任何信息。
我猜另一个问题是,这是否可能?客户端可以请求多个连接,还是必须逐个进行,或者为它想要转发的每个连接与服务器建立单独的套接字连接?
感谢您的帮助!