TyrantLucifer / ssr-command-client

:airplane:The commend client of ssr based Python3
Apache License 2.0
978 stars 240 forks source link

额外的监听端口 #54

Open chenyangcyx opened 2 years ago

chenyangcyx commented 2 years ago

作者您好,我尝试在主机上运行了项目,目前功能一切正常 当我在使用netstat -tunlp命令查看端口时,发现程序除了开启指定的端口外,仍开放了一个额外端口:0.0.0.0:51160 如图 红色框内部分

issue1

我使用的命令如下:shadowsocksr-cli -s 2 -p 6689 又尝试使用了shadowsocksr-cli -s 2 -p 6689 --setting-address 127.0.0.1,发现其仍会多开端口,且每次的不同

我只想在本地回环地址127.0.0.1提供端口,并不对外网提供 担心新开的端口监听0.0.0.0,会导致安全问题

我尝试使用curl -x socks5h://localhost:51160 http://www.baidu.com/以及curl -x localhost:51160 http://www.baidu.com/测试了该端口的http以及socks5连接,均提示Connection refused 但仍无法确定,该端口监听地址为0.0.0.0,是否会有安全问题? 如果可以,还希望能够知道该端口的设计目的

期待您的回复,感谢!

TyrantLucifer commented 2 years ago

ssr本质上就是开启了一个socks5代理,这个代理用的是自己指定的dns,默认应该是8.8.8.8,为了走代理的流量能够用到这个代理指定的dns,所以需要udp转发功能,从而会在本地占用一个端口进行进行dns转发,同时也是为了解决域名污染的问题,实际上ssr-command-client只是做了一点额外的ssr链接解析和开启代理的功能,真正核心还是破娃同学开发的shadowsocksr,我只是站在巨人的肩膀上做了一些点缀的东西,如果想要具体了解一下网络流量的细节,可以观看一下shadowsocksr的源码,总结一下,这个udp端口是ssr内部网络协议所涉及到的,外面控制不了,我也不是专门干网络的,这也是我一些浅薄的理解,如果有大佬觉得我这个说的不对,欢迎在这条issue下进行评论。

chenyangcyx commented 2 years ago

好的,感谢回复

我有空去看下源码