Kcptun: server error

Created on 9 Aug 2016  ·  25Comments  ·  Source: xtaci/kcptun

➜ kcptun cat kcptun.log
2016/08/09 14:30:44 version: 20160808
2016/08/09 14:30:44 listening on [::]:554
2016/08/09 14:30:44 encryption: aes
2016/08/09 14:30:44 nodelay parameters: 1 20 2 1
2016/08/09 14:30:44 sndwnd: 2048 rcvwnd: 2048
2016/08/09 14:30:44 compression: true
2016/08/09 14:30:44 mtu: 1400
2016/08/09 14:30:44 datashard: 10 parityshard: 3
2016/08/09 14:30:44 acknodelay: false
2016/08/09 14:30:44 dscp: 0
2016/08/09 14:30:44 sockbuf: 4194304
2016/08/09 14:30:44 keepalive: 10
2016/08/09 14:31:12 remote address: 電信IP:62889
2016/08/09 14:31:12 dial tcp 127.0.0.1:994: getsockopt: connection refused
2016/08/09 14:31:12 [ERR] yamux: Failed to read header: broken pipe
2016/08/09 14:31:12 remote address: 電信IP:62889
2016/08/09 14:31:12 dial tcp 127.0.0.1:994: getsockopt: connection refused
2016/08/09 14:31:12 [ERR] yamux: Failed to read header: broken pipe
2016/08/09 14:31:12 remote address: 電信IP:62889
2016/08/09 14:31:12 dial tcp 127.0.0.1:994: getsockopt: connection refused
2016/08/09 14:31:12 [ERR] yamux: Failed to read header: broken pipe
2016/08/09 14:31:12 remote address: 電信IP:62889
2016/08/09 14:31:12 dial tcp 127.0.0.1:994: getsockopt: connection refused
2016/08/09 14:31:12 [ERR] yamux: Failed to read header: broken pipe
2016/08/09 14:31:13 remote address: 電信IP:62889

Most helpful comment

./server_linux_amd64 -t "127.0.0.1:994" -l "server_public_ip:554" -mtu 1400 -sndwnd 2048 -rcvwnd 2048 -mode fast2

994 is my shadowsocks listening port.

I solve this problem........23333

You can use this command.

./server_linux_amd64 -t "server_public_ip:994" -l "server_public_ip:554" -mtu 1400 -sndwnd 2048 -rcvwnd 2048 -mode fast2

because in linode you must use full ip, and in aliyun/others vps you can use 0.0.0.0 as server listening ip.

and thank you patiently answered.

All 25 comments

2016/08/09 14:36:40 [ERR] yamux: keepalive failed: i/o deadline reached
2016/08/09 14:36:40 [ERR] yamux: Failed to read header: broken pipe
2016/08/09 14:36:40 keepalive timeout

Hi:

  1. Are you using the latest release?
  2. Which OS do you use?
  3. Which end for this issue related to, client or server?
  4. Does your ISP or VPS blocked UDP?
  5. Does your VPS firewall allows UDP pass through?
  6. Are you using the same version for both client & server
  7. Did you correctly set the -target value, -t value target server address (default: "127.0.0.1:12948") on the server side?
  1. server and client version : 20160808
  2. server with CentOS 7 x64 and client with win10 x64
  3. server in error, log in issue/102
    client log

2016/08/09 14:39:27 version: 20160808 2016/08/09 14:39:27 listening on: [::]:2333 2016/08/09 14:39:27 encryption: aes 2016/08/09 14:39:27 nodelay parameters: 1 20 2 1 2016/08/09 14:39:27 remote address: 服務器IP:554 2016/08/09 14:39:27 sndwnd: 128 rcvwnd: 1024 2016/08/09 14:39:27 compression: true 2016/08/09 14:39:27 mtu: 1400 2016/08/09 14:39:27 datashard: 10 parityshard: 3 2016/08/09 14:39:27 acknodelay: false 2016/08/09 14:39:27 dscp: 46 2016/08/09 14:39:27 sockbuf: 4194304 2016/08/09 14:39:27 keepalive: 10 2016/08/09 14:39:27 conn: 1 2016/08/09 14:39:34 stream opened 2016/08/09 14:39:34 stream opened 2016/08/09 14:39:34 stream opened 2016/08/09 14:39:34 stream opened 2016/08/09 14:39:34 stream opened 2016/08/09 14:39:34 stream opened 2016/08/09 14:39:34 stream opened 2016/08/09 14:39:34 stream opened 2016/08/09 14:39:34 stream opened 2016/08/09 14:39:34 stream opened 2016/08/09 14:39:34 stream opened 2016/08/09 14:39:34 stream opened 2016/08/09 14:39:34 stream opened 2016/08/09 14:39:34 stream opened 2016/08/09 14:39:34 stream opened 2016/08/09 14:39:34 stream opened 2016/08/09 14:39:37 stream opened 2016/08/09 14:39:37 stream opened 2016/08/09 14:39:47 stream opened 2016/08/09 14:40:04 stream closed 2016/08/09 14:40:04 stream closed 2016/08/09 14:40:04 stream closed 2016/08/09 14:40:04 stream closed 2016/08/09 14:40:04 stream closed 2016/08/09 14:40:04 stream closed 2016/08/09 14:40:04 stream closed 2016/08/09 14:40:04 stream closed 2016/08/09 14:40:04 stream closed 2016/08/09 14:40:04 stream closed 2016/08/09 14:40:04 stream closed 2016/08/09 14:40:04 stream closed 2016/08/09 14:40:04 stream closed 2016/08/09 14:40:04 stream closed 2016/08/09 14:40:04 stream closed 2016/08/09 14:40:04 stream closed 2016/08/09 14:40:04 [ERR] yamux: Failed to read header: snappy: corrupt input 2016/08/09 14:40:04 stream closed 2016/08/09 14:40:04 [ERR] yamux: keepalive failed: session shutdown 2016/08/09 14:40:04 stream closed 2016/08/09 14:40:04 stream closed

  1. server use iptables -F

windows firewall in default and access double 'yes' (public & private network) to kcptun client for windows.

  1. yes,server and client version is same.
  2. i use ./server_linux_amd64 -t "127.0.0.1:994" -l ":554" -mtu 1400 -sndwnd 2048 -rcvwnd 2048 -mode fast2 and full ip ./server_linux_amd64 -t "127.0.0.1:994" -l "服務器IP:554" -mtu 1400 -sndwnd 2048 -rcvwnd 2048 -mode fast2, also error.

you can trytelnet 127.0.0.1:994 on your server to check connectivity.

➜ kcptun telnet 127.0.0.1:994
telnet: 127.0.0.1:994: Name or service not known
127.0.0.1:994: Unknown host

???
this result from my server.

so , what's the backend server running on your vps?

https://github.com/xtaci/kcptun/blob/master/kcptun.png

What is your _SERVER_?

./server_linux_amd64 -t "127.0.0.1:994" -l "server_public_ip:554" -mtu 1400 -sndwnd 2048 -rcvwnd 2048 -mode fast2

994 is my shadowsocks listening port.

I solve this problem........23333

You can use this command.

./server_linux_amd64 -t "server_public_ip:994" -l "server_public_ip:554" -mtu 1400 -sndwnd 2048 -rcvwnd 2048 -mode fast2

because in linode you must use full ip, and in aliyun/others vps you can use 0.0.0.0 as server listening ip.

and thank you patiently answered.

Thank ky0ncheng. Very helpful. :)

Thanks @ky0ncheng solved.

server version 20160816 problem

server start listening ip is public ip.

I try server listening ip change to 0.0.0.0, not solved.

This problem exist in Aliyun ECS with centOS 7 ,Linode with centOS is OK(you can use server public ip as listening ip).

client log:

2016/08/16 12:55:36 version: 20160816 2016/08/16 12:55:36 listening on: [::]:2333 2016/08/16 12:55:36 encryption: aes 2016/08/16 12:55:36 nodelay parameters: 1 20 2 1 2016/08/16 12:55:36 remote address: server_public_ip:554 2016/08/16 12:55:36 sndwnd: 12 rcvwnd: 1024 2016/08/16 12:55:36 compression: true 2016/08/16 12:55:36 mtu: 1400 2016/08/16 12:55:36 datashard: 10 parityshard: 3 2016/08/16 12:55:36 acknodelay: false 2016/08/16 12:55:36 dscp: 46 2016/08/16 12:55:36 sockbuf: 4194304 2016/08/16 12:55:36 keepalive: 10 2016/08/16 12:55:36 conn: 1 2016/08/16 12:55:50 stream opened 2016/08/16 12:55:56 stream opened 2016/08/16 12:55:56 stream opened 2016/08/16 12:55:56 stream opened 2016/08/16 12:55:56 stream opened 2016/08/16 12:55:56 stream opened 2016/08/16 12:55:56 stream opened 2016/08/16 12:55:59 stream opened 2016/08/16 12:56:20 stream closed 2016/08/16 12:56:26 stream closed 2016/08/16 12:56:26 stream closed 2016/08/16 12:56:26 stream closed 2016/08/16 12:56:26 stream closed 2016/08/16 12:56:26 stream closed 2016/08/16 12:56:26 stream closed 2016/08/16 12:56:29 stream closed 2016/08/16 12:56:36 [ERR] yamux: keepalive failed: i/o deadline reached 2016/08/16 12:56:36 [ERR] yamux: Failed to read header: broken pipe 2016/08/16 12:58:35 session shutdown 2016/08/16 12:58:35 stream opened 2016/08/16 12:58:35 stream opened 2016/08/16 12:58:35 stream opened 2016/08/16 12:58:35 stream opened 2016/08/16 12:58:35 stream opened 2016/08/16 12:58:35 stream closed 2016/08/16 12:58:35 stream closed

server log:

➜ kcptun cat kcptun.log 2016/08/16 12:57:50 version: 20160816 2016/08/16 12:57:50 listening on server_public_ip:554 2016/08/16 12:57:50 encryption: aes 2016/08/16 12:57:50 nodelay parameters: 1 20 2 1 2016/08/16 12:57:50 sndwnd: 2048 rcvwnd: 2048 2016/08/16 12:57:50 compression: true 2016/08/16 12:57:50 mtu: 1400 2016/08/16 12:57:50 datashard: 10 parityshard: 3 2016/08/16 12:57:50 acknodelay: false 2016/08/16 12:57:50 dscp: 0 2016/08/16 12:57:50 sockbuf: 4194304 2016/08/16 12:57:50 keepalive: 10 2016/08/16 12:58:37 remote address: client_public_ip:56840 2016/08/16 12:58:37 stream opened 2016/08/16 12:58:37 stream opened 2016/08/16 12:58:37 stream opened 2016/08/16 12:58:37 stream opened 2016/08/16 12:58:37 stream opened 2016/08/16 12:58:37 stream closed 2016/08/16 12:58:37 stream closed 2016/08/16 12:58:37 stream closed 2016/08/16 12:58:37 stream closed

我不明白问题是啥

kcptun lastest version 20160816 doesn't work with config of 20160808.

server and client log is normal. but it can not connect any website.

server firewall is reseted.

version 20160808 replaced of version 20160816 is OK.

more private detail you can contact by email.

新版本kcptun 20160816無法使用201608的配置。

log記錄是正常的,但是無法打開任何網頁。

防火牆規則重置過。

換回舊版本一切正常。

更多細節可以通過郵件與我溝通。

我现在用的就是0816,我无法重现错误。 我觉得你可以先关闭所有的防火墙试试。

在Centos 6.5 x64上部署了 kcptun 无法访问任何网页呀 ,版本是“version: 20160816” 以下是启动命令
./server_linux_amd64 -t "0.0.0.0:443" -l ":4000" -mode fast2
client_windows_amd64.exe -r "ip:4000" -l ":8388" -mode fast2
防火墙均以关闭。 telnet SS端口443 也正常。 4000 UDP端口也已经监听 。 server 端跟 client 端反复出现这些信息:
2016/08/18 17:50:24 stream opened
2016/08/18 17:50:24 stream closed
2016/08/18 17:50:24 stream opened
2016/08/18 17:50:24 stream closed
2016/08/18 17:50:25 stream opened
2016/08/18 17:50:25 stream closed
2016/08/18 17:51:49 [ERR] yamux: keepalive failed: i/o deadline reached
2016/08/18 17:51:49 [ERR] yamux: Failed to read header: broken pipe
2016/08/18 17:51:49 keepalive timeout

同樣的錯誤

@feiyin
建議使用 CentOS,只啟用 iptables 作為 firewall。
入個報錯可以嘗試 ipatbles -F
啟用 IP 使用 VPS 的外網 IP。

https://ky0n.xyz/kcptun/
https://github.com/ky0ncheng/kcptun-script

digitalocean 无论是外网IP还是127.0.0.1 都不行

没有特别的需要就不要用Cent OS ,老老实实用Debian或者Ubuntu,会省很多心

@braveguywallce 就是用的Ubuntu…

@se77en 同为DO,Debian 8.5x64, 没有任何问题。估计你哪里设置不对,和kcptun本身没关系。

@braveguywallce Ubuntu 16.04,配置没有问题,在 Vultr 上面是好的,估计是 DO 抽风,不过 Vultr 上用的是 Ubuntu 14.04

@se77en DO 有些IP本来就和国内不通的,你可以ping 和 traceroute 看下你主机IP是否和国内的网络连通?我前面换过两个IP.

@braveguywallce 我的是连通的,之前上面的 ss 一直是好用的,上了 kcptun 就不行

Was this page helpful?
0 / 5 - 0 ratings