首页
社区
课程
招聘
[未解决,已结帖] [求助]自己写的lsp socks5搞游戏加速,目前卡在udp上了,不求帮写代码,求思路和错误 1000.00雪花
发表于: 2018-6-27 15:24 14015

[未解决,已结帖] [求助]自己写的lsp socks5搞游戏加速,目前卡在udp上了,不求帮写代码,求思路和错误 1000.00雪花

2018-6-27 15:24
14015
背景:
自己写的游戏加速器,tcp走网页,客户端,游戏是ok的,
udp也是走了socks5来搞,自己测试udp是代理上的,但是启动lol之后,在进游戏界面会提示连接服务器失败;

使用了win sdk demo中的代码,https://github.com/pauldotknopf/WindowsSDK7-Samples/tree/master/netds/winsock/lsp
其中udp和tcp我增加的部分我写在了下面:

补充下:用的是ss的本地客户端自带的socks5,因此在udp中省略了协商的过程,发现上传的代码中少了lspdef.h中的部分结构,现补充
typedef struct _ASYNC_INFO {
	HWND hWnd; 
	unsigned int wMsg;
	long lEvent;
} ASYNC_INFO;
typedef struct _EVENT_INFO {
	WSAEVENT hEventObject; 
	long lNetworkEvents;
} EVENT_INFO;
typedef struct _SOCK_OPT {
	int level;
	int optname;
	const char FAR * optval;
	int optlen;
} SOCK_OPT;

typedef struct _IO_CTL {
	LPVOID lpvInBuffer;
	DWORD cbInBuffer;
	LPVOID lpvOutBuffer;
	DWORD cbOutBuffer;
	LPDWORD lpcbBytesReturned;
	LPWSAOVERLAPPED lpOverlapped;
	LPWSAOVERLAPPED_COMPLETION_ROUTINE lpCompletionRoutine;
	LPWSATHREADID lpThreadId;
} IO_CTL;

typedef struct _SOCK_INFO
{
	SOCKET ProviderSocket;      // lower provider socket handle
	SOCKET LayeredSocket;       // app's socket handle
	DWORD  dwOutstandingAsync;  // count of outstanding async operations
	BOOL   bClosing;            // has the app closed the socket?

	volatile LONG  RefCount;    // How many threads are accessing this info?
	BOOL isUdp;

	ULONG  BytesSent;       // Byte counts
	ULONG  BytesRecv;
	HANDLE hIocp;           // associated with an IOCP?

	int LastError;           // Last error that occured on this socket

	HWND hWnd;                // Window (if any) associated with socket
	UINT uMsg;                // Message for socket events

	CRITICAL_SECTION   SockCritSec; // Synchronize access to this object

	PROVIDER *Provider;// Pointer to the provider from which socket was created

	LIST_ENTRY Link;
	UINT blockingType;	// socket bolckingType 0: blocking; 1:eventSelect; 2:asyncSelect
	ASYNC_INFO asyncSelectInfo;	// save socket asyncSelect handle
	EVENT_INFO eventSelectInfo;	// save socket eventSelect handle
	int* Nonblock;	// socket bolcking type
	SOCK_OPT opt;	// set socket opt params
	bool optState;	// is opt
	bool proxyState;	// use for udp; only udp sendto called set be true;then call recvfrom will check this value
	const struct sockaddr FAR * RemoteAddr;		// for udp called: connect->send->recv
	bool isConnected;	// check a socket is connected
	IO_CTL ioctl;	// wsaioctl params
	bool UdpTunnelReady;	// udp tunnel is ready

} SOCK_INFO;


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

最后于 2018-6-28 11:07 被justDoItMe编辑 ,原因: 增加说明和补充头文件
上传的附件:
收藏
免费 0
支持
分享
最新回复 (12)
雪    币: 2
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
有人咩?哎,还需要啥我继续补充,别不回复不是
2018-6-28 14:42
0
雪    币: 95
活跃值: (389)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
WSPCloseSocket这里也要处理
WSPSocket也要处理
还有好好东西代码量大,这里一时半会说不明白
最后于 2019-9-9 22:48 被CCkicker编辑 ,原因:
2018-6-28 16:03
0
雪    币: 2
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
你好@laosanls 在sdk的demo中这些都有被处理,因此我没有把那些代码贴出来,申请好友了, 通过下
2018-6-28 16:24
0
雪    币: 2
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
换了gotun2socks+socks5解决,不用lsp了,最终还是完美代理了游戏
最后于 2018-6-29 11:50 被justDoItMe编辑 ,原因: 错字了
2018-6-29 11:49
0
雪    币: 95
活跃值: (389)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
justDoItMe 换了gotun2socks+socks5解决,不用lsp了,最终还是完美代理了游戏
tun2socks也是我昨天发你的…………
2018-6-29 12:29
0
雪    币: 2
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
laosanls tun2socks也是我昨天发你的…………
嗯,是的,虽然不是针对这个问题!还是谢谢你哈
我这个lsp之所以代理不上英雄联盟问题找着了:进程规则里少写了一个LengeClient.exe导致的,哈哈
2018-6-29 15:51
0
雪    币: 463
活跃值: (1186)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
LSP是不行的 还是用驱动吧  LSP游戏检测到了会屏蔽的
2018-7-9 03:28
0
雪    币: 0
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
我最近也在找这方面的资料
2018-9-20 12:29
0
雪    币: 95
活跃值: (389)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10

LSP兼容不好,tun2socks也是问题好多的。看看这个吧。

https://pan.baidu.com/s/1f7WWdDvdibgDht53N7DY3g 密码:fr87

最后于 2018-9-29 09:18 被laosanls编辑 ,原因:
2018-9-29 00:38
0
雪    币: 95
活跃值: (389)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
king工作室 socks5 驱动级的可以了解下,QQ813310746 支持XP-WIN10所有32及64位系统和进程,支持模拟器,支持不关闭进程情况下换IP, 支持HTTP SOCKS4及SOCKS5三种代理 ...
此人纯骗子一个,修改我DLL版权,到处倒卖。但我DLL里还有导出函数弹出我的版权提示的,他改不了。详细方法参考我网站:http://www.8u18.com/fp.htm
2019-9-9 21:57
0
雪    币: 177
活跃值: (278)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
记录一下
2020-12-26 11:47
0
游客
登录 | 注册 方可回帖
返回
//