workers icon indicating copy to clipboard operation
workers copied to clipboard

为啥会传客户端IP呢

Open ncdn opened this issue 2 years ago • 9 comments

怎么联系呢,proxy,那个 CF 禁止国内 IP 访问了,我自架的,代理后一样屏蔽,为啥代理还用客户端 IP,怎样能不传客户端 IP 呢

ncdn avatar Apr 13 '22 07:04 ncdn

什么意思

netnr avatar Apr 13 '22 08:04 netnr

https://cors.eu.org/https://img.if101.tv/ximgs/a28cd049a029534140eddf0186bc13886659e493a8ca5615cc8d2413487fe6f64085b87f365a093c7be9abae3b0ed314.jpg

你看这张图片,我开SS就能访问,不开就不能访问,因为它屏蔽了国内访问,我想表达,为什么程序会把客户端的IP传进去呢

ncdn avatar Apr 16 '22 14:04 ncdn

/cors/index.js#L64 这个地方处理头部信息传递,在 67 行可以添加不需要传递的 key

netnr avatar Apr 16 '22 23:04 netnr

问题是咱根本不知道它传了什么,根据什么来检测的撒

ncdn avatar Apr 16 '22 23:04 ncdn

65 行是所有头部信息集合,可以本地跑测试打印集合,里面哪些项包含 IP 内容就屏蔽这项的传递

netnr avatar Apr 16 '22 23:04 netnr

65 行是所有头部信息集合,可以本地跑测试打印集合,里面哪些项包含 IP 内容就屏蔽这项的传递

我把所有的头都去掉了,依然屏蔽,神奇啊

ncdn avatar Apr 16 '22 23:04 ncdn

会不会是其它地方,下面这个是 nodejs 环境能获取的客户端 IP,你可参考一下,调试看其它对象有不有隐藏的

let clientip = req.headers['x-forwarded-for'] || // 判断是否有反向代理 IP
            req.connection.remoteAddress || // 判断 connection 的远程 IP
            req.socket.remoteAddress || // 判断后端的 socket 的 IP
            req.connection.socket.remoteAddress;

还有一种可能就是 CF Workers 层面处理了客户端 IP 的传递,所以无论怎么努力都是徒劳

另外,我用 https://github.com/netnr/proxy 部署到 heroku 的 nodejs 版本测试链接正常 https://netnr-proxy.herokuapp.com/https://img.if101.tv/ximgs/a28cd049a029534140eddf0186bc13886659e493a8ca5615cc8d2413487fe6f64085b87f365a093c7be9abae3b0ed314.jpg

netnr avatar Apr 16 '22 23:04 netnr

会不会是其它地方,下面这个是 nodejs 环境能获取的客户端 IP,你可参考一下,调试看其它对象有不有隐藏的

let clientip = req.headers['x-forwarded-for'] || // 判断是否有反向代理 IP
            req.connection.remoteAddress || // 判断 connection 的远程 IP
            req.socket.remoteAddress || // 判断后端的 socket 的 IP
            req.connection.socket.remoteAddress;

还有一种可能就是 CF Workers 层面处理了客户端 IP 的传递,所以无论怎么努力都是徒劳

另外,我用 https://github.com/netnr/proxy 部署到 heroku 的 nodejs 版本测试链接正常 https://netnr-proxy.herokuapp.com/https://img.if101.tv/ximgs/a28cd049a029534140eddf0186bc13886659e493a8ca5615cc8d2413487fe6f64085b87f365a093c7be9abae3b0ed314.jpg

感觉可能是CF的原因

ncdn avatar Apr 16 '22 23:04 ncdn

用临时域名又能访问,这是什么鬼原理///

ncdn avatar Apr 16 '22 23:04 ncdn