xingty / xingty.github.io

my blog
1 stars 0 forks source link

手把手使用Java实现一个Socks5代理 | Bigbyto #41

Open xingty opened 2 years ago

xingty commented 2 years ago

https://wiyi.org/socks5-implementation.html

  1. 前言上一篇文章介绍了socks5协议的工作过程和协议的细节,通过上一篇文章我们可以认识到socks5协议主要有3个阶段,分别为: 协商、请求,Relay。本文将手把手使用Java语言实现一个简单的socks5代理特别提醒: 本文目的仅作为加深socks5协议理解,其中的代码并不是严谨的代码,也没考虑其他的情...
bigbyto-anon commented 2 years ago

牛牪犇 :)

xmu-xuexi commented 9 months ago

请问末尾对于端口的监听是需要预先下载Curl命令行工具吗? 代码执行以后是永久生效么?还是怎么样呀? 比较小白, 不是很懂。 感谢博主教导!~

xingty commented 9 months ago

at: xmu-xuexi
请问末尾对于端口的监听是需要预先下载Curl命令行工具吗? 代码执行以后是永久生效么?还是怎么样呀? 比较小白, 不是很懂。 感谢博主教导!~

如果你用的是windows,它应该是没有curl的,可以在wsl中使用curl。那个只是测试的命令,你可以直接在浏览器设置代理或者用你的是方式来测试是否成功就行了。

huzw0532 commented 7 months ago

请问前面的协商有什么意义,直接请求和relay不行吗

xingty commented 7 months ago

at: huzw0532
请问前面的协商有什么意义,直接请求和relay不行吗

协商是socks5的协议的其中一个阶段。站在协议设计的角度,这个阶段相当于一个握手信息,告知应用程序服务器支持的socks版本以及认证方式等。 站在协议实现者的角度,你不得不去实现这个协商过程,否则你的socks5协议就是不完整的,其他所有支持socks5代理都无法使用你的服务器代理。

treeke commented 3 months ago

试了一下 现有的代码应该是不支持浏览器的请求代理 浏览器的请求ver和ATYPE都是没有办法识别的

xingty commented 3 months ago

at: treeke
试了一下 现有的代码应该是不支持浏览器的请求代理 浏览器的请求ver和ATYPE都是没有办法识别的

我前几天测试的时候可以执行呀,用的是SwitchyOmega。不过这份只是一个socks5的demo,用来理解协议工作过程的,写得很随意,代码本身有问题也是很有可能的:)。

treeke commented 3 months ago

at: xingty

at: treeke
试了一下 现有的代码应该是不支持浏览器的请求代理 浏览器的请求ver和ATYPE都是没有办法识别的

我前几天测试的时候可以执行呀,用的是SwitchyOmega。不过这份只是一个socks5的demo,用来理解协议工作过程的,写得很随意,代码本身有问题也是很有可能的:)。

是我的问题 demo使用没有问题 只是需要指定协议 最开始用Windows设置了代理 浏览器不能像curl一样指定协议通信 放到服务器上没有问题 晚点再试试SwitchyOmega