-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
强退BUG #106
Comments
日志是什么呢? |
@zonyitoo 请问日志在哪个目录? 本人是一个Linux初学者,只会一些基础操作,多有劳烦还请见谅 |
那就要看你配置的在哪里了。信息太少 |
我也遇到类似情况,开启了UDP之后出现过几次,之前只用TCP没有遇见过,错误信息的最后几行,之前都是重复的UDP失败信息。似乎是文件打开太多。
|
说明同时保持的UDP连接太多了,而且大多没有回复。这个需要Fix一下。 |
@Aniark @Kabie 麻烦用这个版本测试一下,打开UDP是否还会出现Too many open files的情况 |
@zonyitoo 我用的是release的已编译文件,解压在/root目录下 |
@Aniark 我的意思是看你配置的输出日志在哪里。没有错误日志,我不知道当时在你的环境下发生了什么错误。像@Kabie 那样的日志 如果确实是有打开UDP Relay的话,试用一下上面我传的文件,看看问题还不会不会出现。 或直接使用alpha.2版本:https://github.com/shadowsocks/shadowsocks-rust/releases/tag/v1.7.0-alpha.2 |
测试了 1.7.0 alpha2 确实不会崩溃了,但是运行时间长之后还是会出现错误,之后表现为丢包。不知道是否和客户端有关,我用的是SSTap 1.1.0.1
|
这个没有丢包。是它发出请求之后,等了很久没有等到对方回包。 |
* Add #102 link in README * Migrating to tokio, #100 * Migrated to tokio-signal v0.2, reformatted * Should not call tokio::spawn before tokio::run * Build nightly and stable with different image tag * Removed unnecessary rustup install * Renamed version to v1.7.0-alpha * Removed deprecated calls of Buf * Updated dependencies * [#106] Fixed bug, should not hold UDP connections forever * Lower info log to debug * Bump version to v1.7.0-alpha.2 * Implement a simple DNS relay server, bump version to v1.7.0-alpha.3 * Better logging * Fixed build on travis * Add elapsed time in log * Should not exit if handler return error * reformatted * Add test for DNS * Updated ssdns param * Use `trust-dns` and impl Trait 1. Replaced `ToSocketAddrs` with `trust-dns` 2. Uses impl Trait for functions 3. Updated dependencies 4. Fixed bugs * Bug fixed, logging crate in ssdns
目前没有更多的讨论的话,那看起来在新的alpha.4中已经Fix了问题吗? |
@zonyitoo alpha4正在测试中,alpha1-3目前都存在该bug |
把日志提供出来,不然不知道到底错误是什么 |
不会。如果可以的话,请告诉我怎么做才能提取日志 |
日志直接输出到终端,直接就在你眼前了为什么说要“提取”? |
我是稍微修改了一下网上的自启脚本,用脚本启动的 BEGIN INIT INFOProvides: shadowsocks-rustRequired-Start: $network $local_fs $remote_fsRequired-Stop: $network $local_fs $remote_fsDefault-Start: 2 3 4 5Default-Stop: 0 1 6Short-Description: Fast tunnel proxy that helps you bypass firewallsDescription: Start or stop the shadowsocks-rust serverEND INIT INFOAuthor: Teddysun [email protected]NAME=shadowsocks-rust [ -x $BIN ] || exit 0 if [ ! -d $PID_DIR ]; then check_running() { do_status() { do_start() { do_stop() { do_restart() { case "$1" in exit $RET_VAL |
$BIN -m aes-256-gcm -k Giuytt667 -s 0.0.0.0:443 -u 2>&1 > /dev/null & 这里把输出都重定向到了 改一下 $BIN -m aes-256-gcm -k Giuytt667 -s 0.0.0.0:443 -u 2>&1 >> /tmp/shadowsocks-rust.log & 日志就输出到了 |
alpha4依旧强退,检查日志发现,没有任何内容 |
你直接手动用终端启动 ssserver -m aes-256-gcm -k Giuytt667 -s 0.0.0.0:443 -u 不要关掉终端,继续保持它直到退出 这个文件里面 |
alpha4也有强退bug,日志如下: [2018-05-17][10:31:25.128416832][ERROR] Failed to handle client (106.127.16.195:31432): Operation timed out (os error 110) |
主要是这句
猜测是因为Server在Accept之后,想要调用 你发的日志里其它错误都不会导致Server crash. |
alpha6也存在强退,不过日志不一样 [2018-05-17][23:52:28.337844649][INFO] ShadowSocks 1.7.0-alpha.6 |
这种日志是包无法解析,一般原因是method和password不匹配,导致server无法解包
这种错误是对端把TCP connection close掉了,没有正常结束。但也是预计范围内的行为。
这种错误也是类似的,只是对端(应该是Client端)在不合适的情况下关掉了连接。 因此这些错误均不可能导致Server crash。唯一一句可能的就是
这一句看起来像是操作系统强杀了进程。怀疑是内存不足,你使用的机器内存有多少? |
我看了一下/var/log目录,没有发现messages文件 内存256m,只运行了ss-rust和锐速(https://github.com/0oVicero0/serverSpeeder_Install 我在另一台机器也有部署ss-rust,但是我没有安装锐速,而是安装了bbr,那台机器用来下YouTube视频没有强退 是否和锐速有关? |
不清楚,256的话,那很大可能就是因为内存不足而被强杀。建议使用至少1G内存的vps |
@Aniark 是否已解决问题? |
并没有 |
用了更大内存的机器了吗? |
没有。我的vps纯用来当梯子用的,更大内存的就没有了 |
1.8.7已经没有强退现象了,测试环境依旧是以前的那个vps |
我也遇到这个问题了 os error 110
|
系统:Ubuntu 14.04 LTS
内核:Linux 3.13.0-24-generic x86_64
客户端偶尔会出现连接不上服务端的情况,此时登录VPS查看进程,发现进程已经不在了
The text was updated successfully, but these errors were encountered: