v2ray / v2ray-core

A platform for building proxies to bypass network restrictions.
https://www.v2ray.com/
MIT License
45.39k stars 8.94k forks source link

4.23.3掉出 #2536

Closed rendaa closed 4 years ago

rendaa commented 4 years ago

1) 你正在使用哪个版本的 V2Ray?(如果服务器和客户端使用了不同版本,请注明) 服务端:系统为CentOS 7.7,v2ray版本4.23.3 客户端:某ARMv7路由器,内核是Linux 2.6.36,v2ray版本4.23.3

2) 你的使用场景是什么? 在多个设备上访问被墙的站点,例如google、youtube、telegram等。

3) 你看到的不正常的现象是什么?(请描述具体现象,比如访问超时,TLS 证书错误等) 升级到4.23.3版后,在服务端和客户端(那个路由器上),都出现过次数不等的v2ray进程掉出的情况。ps -ef 输出里找不到 v2ray。

服务端出现较少(v2ray错误日志中能看到4.23.3只有三次启动记录,其中也包括了一次系统维护重启,并非掉出)。

客户端(路由器)上相对频繁,有时是运行后数秒就掉出,有时是正常运行10多分钟后出现,也有几次运行几小时后才出现的。

4) 你期待看到的正确表现是怎样的? ……

5) 请附上你的配置(提交 Issue 前请隐藏服务器端IP地址)。

服务器端配置:

{
  "log": {
        "access": "/var/log/v2ray/access.log",
        "error": "/var/log/v2ray/error.log",
        "loglevel": "warning"
    },
  "inbounds": [
    {
    "port":xxxxxx,
      "listen": "127.0.0.1", 
      "tag": "vmess-in", 
      "protocol": "vmess", 
      "settings": {
        "clients": [
          {
          "id":"xxxxxxxxxxxxxxxxxxxxxxxxxxxx",
          "alterId":xx
          }
        ]
      }, 
      "streamSettings": {
        "network": "ws", 
        "wsSettings": {
          "path":"/xxxxxxxxx/"
        }
      }
    }
  ], 
  "outbounds": [
    {
      "protocol": "freedom", 
      "settings": { }, 
      "tag": "direct"
    }, 
    {
      "protocol": "blackhole", 
      "settings": { }, 
      "tag": "blocked"
    }
  ], 
  "dns": {
    "servers": [
      "https+local://1.1.1.1/dns-query",
          "1.1.1.1",
          "1.0.0.1",
          "8.8.8.8",
          "8.8.4.4",
          "localhost"
    ]
  },
  "routing": {
    "domainStrategy": "AsIs",
    "rules": [
      {
        "type": "field",
        "inboundTag": [
          "vmess-in"
        ],
        "outboundTag": "direct"
      }
    ]
  }
}

客户端配置:

{
  "dns": {
    "servers": [
      {
        "address": "1.1.1.1",
        "port": 53,
        "domains": [
          "geosite:geolocation-!cn"
        ]
      },
      {
        "address": "114.114.114.114",
        "port": 53,
        "domains": [
          "geosite:cn"
        ]
      },
      "8.8.8.8",
      "223.5.5.5",
      "localhost"
    ]
  },
  "policy": null,
  "log": {
    "access": "/tmp/v2acc.log",
    "error": "/tmp/v2err.log",
    "loglevel": "warning"
  },
  "outboundDetour" : [
    {
      "protocol" : "freedom",
      "tag" : "direct",
      "settings" : {
        "streamSettings": { "sockopt": { "mark": 255 } }
      }
    }
  ],
  "inboundDetour" : [
    {
      "listen": "0.0.0.0",
      "port" : 1099,
      "protocol" : "dokodemo-door",
      "domainOverride" : ["http","tls"],
      "settings" : {
        "network": "tcp,udp",
        "timeout": 15,
        "followRedirect": true
      }
    }
  ],
  "inbounds": [
    {
      "tag": "socks-inbound",
      "port": xxxxx,
      "listen": "0.0.0.0",
      "protocol": "socks",
      "sniffing": {
        "enabled": true,
        "destOverride": ["http","tls"]
      },
      "settings": {
        "auth": "noauth",
        "accounts": [ { "user": "xxxxx", "pass": "xxxxx" } ],
        "udp": true,
        "ip": null,
        "address": null,
        "clients": null,
        "userLevel": 3
      },
      "streamSettings": null
    },
    {
      "port": xxxxx,
      "listen": "0.0.0.0",
      "tag": "http-inbound",
      "protocol": "http",
      "sniffing": {
        "enabled": true,
        "destOverride": ["http","tls"]
      },
      "settings": {
        "timeout": 15,
        "allowTransparent": false,
        "userLevel": 3
      }
    }
  ],
  "outbounds": [
    {
      "tag": "proxy",
      "protocol": "vmess",
      "settings": {
        "vnext": [
          {
            "address": "xxxxxxxxxxx",
            "port": 443,
            "users": [
              {
                "id": "xxxxxxxxxxxxxxxxxxxxxxxxxx",
                "alterId": xx,
                "email": "@",
                "security": "auto"
              }
            ]
          }
        ],
        "servers": null,
        "response": null
      },
      "streamSettings": {
        "sockopt": { "mark": 255 },
        "network": "ws",
        "security": "tls",
        "tlsSettings": {
          "allowInsecure": true,
          "serverName": null
        },
        "tcpSettings": null,
        "kcpSettings": null,
        "wsSettings": {
          "connectionReuse": true,
          "path": "/xxxxxxxxx/",
          "headers": null
        },
        "httpSettings": null,
        "quicSettings": null
      },
      "mux": { "enabled": false }
    },
    {
      "tag": "direct",
      "protocol": "freedom",
      "settings": {
        "vnext": null,
        "servers": null,
        "response": null
      },
      "streamSettings": { "sockopt": { "mark": 255 } },
      "mux": null
    },
    {
      "tag": "block",
      "protocol": "blackhole",
      "settings": {
        "vnext": null,
        "servers": null,
        "response": {
          "type": "http"
        }
      },
      "streamSettings": { "sockopt": { "mark": 255 } },
      "mux": null
    }
  ],
  "stats": null,
  "api": null,
  "routing": {
    "domainStrategy": "IPIfNonMatch",
    "rules": [
      {
        "type": "field",
        "port": null,
        "inboundTag": ["api"],
        "outboundTag": "api",
        "ip": null,
        "domain": null
      },
      {
        "type":"field",
        "port":"1-52",
        "outboundTag":"direct"
      },
      {
        "type":"field",
        "port":"54-79",
        "outboundTag":"direct"
      },
      {
        "type":"field",
        "port":"81-442",
        "outboundTag":"direct"
      },
      {
        "type":"field",
        "port":"444-65535",
        "outboundTag":"direct"
      },
      {
        "type": "field",
        "inboundTag": ["forwardingport"],
        "outboundTag": "proxy"
      },
      {
        "type": "field",
        "port": null,
        "inboundTag": null,
        "outboundTag": "proxy",
        "ip": [
          "91.108.4.0/22",
          "91.108.8.0/22",
          "91.108.12.0/22",
          "91.108.20.0/22",
          "91.108.36.0/23",
          "91.108.38.0/23",
          "91.108.56.0/22",
          "149.154.160.0/20",
          "149.154.164.0/22",
          "149.154.172.0/22",
          "74.125.0.0/16",
          "173.194.0.0/16",
          "172.217.0.0/16",
          "216.58.200.0/24",
          "216.58.220.0/24",
          "91.108.56.116",
          "91.108.56.0/24",
          "109.239.140.0/24",
          "149.154.167.0/24",
          "149.154.175.0/24"
        ],
        "domain": null
      },
      {
        "type": "field",
        "port": null,
        "inboundTag": null,
        "outboundTag": "direct",
        "ip": null,
        "domain": [
          "domain:cn",
          "domain:baidu.com",
          "domain:icbc.com.cn",
          "domain:cebbank.com",
          "domain:gf.com",
          "domain:toutiao.com",
          "domain:qq.com",
          "domain:wps.com",
          "domain:cctv.com",
          "domain:icloud.com",
          "domain:apple.com",
          "domain:12306.com",
          "domain:ip138.com",
          "domain:51ym.me",
          "domain:52pojie.cn",
          "domain:8686c.com",
          "domain:abercrombie.com",
          "domain:adobesc.com",
          "domain:air-matters.com",
          "domain:air-matters.io",
          "domain:airtable.com",
          "domain:akadns.net",
          "domain:apache.org",
          "domain:api.crisp.chat",
          "domain:api.termius.com",
          "domain:appshike.com",
          "domain:appstore.com",
          "domain:aweme.snssdk.com",
          "domain:bababian.com",
          "domain:battle.net",
          "domain:beatsbydre.com",
          "domain:bet365.com",
          "domain:bilibili.cn",
          "domain:ccgslb.com",
          "domain:ccgslb.net",
          "domain:chunbo.com",
          "domain:chunboimg.com",
          "domain:clashroyaleapp.com",
          "domain:cloudsigma.com",
          "domain:cloudxns.net",
          "domain:cmfu.com",
          "domain:culturedcode.com",
          "domain:dct-cloud.com",
          "domain:didialift.com",
          "domain:douyutv.com",
          "domain:duokan.com",
          "domain:dytt8.net",
          "domain:easou.com",
          "domain:ecitic.net",
          "domain:eclipse.org",
          "domain:eudic.net",
          "domain:ewqcxz.com",
          "domain:fir.im",
          "domain:frdic.com",
          "domain:fresh-ideas.cc",
          "domain:godic.net",
          "domain:goodread.com",
          "domain:haibian.com",
          "domain:hdslb.net",
          "domain:hollisterco.com",
          "domain:hongxiu.com",
          "domain:hxcdn.net",
          "domain:images.unsplash.com",
          "domain:img4me.com",
          "domain:ipify.org",
          "domain:ixdzs.com",
          "domain:jd.hk",
          "domain:jianshuapi.com",
          "domain:jomodns.com",
          "domain:jsboxbbs.com",
          "domain:knewone.com",
          "domain:kuaidi100.com",
          "domain:lemicp.com",
          "domain:letvcloud.com",
          "domain:lizhi.io",
          "domain:localizecdn.com",
          "domain:lucifr.com",
          "domain:luoo.net",
          "domain:mai.tn",
          "domain:maven.org",
          "domain:miwifi.com",
          "domain:moji.com",
          "domain:moke.com",
          "domain:mtalk.google.com",
          "domain:mxhichina.com",
          "domain:myqcloud.com",
          "domain:myunlu.com",
          "domain:netease.com",
          "domain:nfoservers.com",
          "domain:nssurge.com",
          "domain:nuomi.com",
          "domain:ourdvs.com",
          "domain:overcast.fm",
          "domain:paypal.com",
          "domain:paypalobjects.com",
          "domain:pgyer.com",
          "domain:qdaily.com",
          "domain:qdmm.com",
          "domain:qin.io",
          "domain:qingmang.me",
          "domain:qingmang.mobi",
          "domain:qqurl.com",
          "domain:rarbg.to",
          "domain:rrmj.tv",
          "domain:ruguoapp.com",
          "domain:sm.ms",
          "domain:snwx.com",
          "domain:soku.com",
          "domain:startssl.com",
          "domain:store.steampowered.com",
          "domain:symcd.com",
          "domain:teamviewer.com",
          "domain:tmzvps.com",
          "domain:trello.com",
          "domain:trellocdn.com",
          "domain:ttmeiju.com",
          "domain:udache.com",
          "domain:uxengine.net",
          "domain:weather.bjango.com",
          "domain:weather.com",
          "domain:webqxs.com",
          "domain:weico.cc",
          "domain:wenku8.net",
          "domain:werewolf.53site.com",
          "domain:windowsupdate.com",
          "domain:wkcdn.com",
          "domain:workflowy.com",
          "domain:xdrig.com",
          "domain:xiaojukeji.com",
          "domain:xiaomi.net",
          "domain:xiaomicp.com",
          "domain:ximalaya.com",
          "domain:xitek.com",
          "domain:xmcdn.com",
          "domain:xslb.net",
          "domain:xteko.com",
          "domain:yach.me",
          "domain:yixia.com",
          "domain:yunjiasu-cdn.net",
          "domain:zealer.com",
          "domain:zgslb.net",
          "domain:zimuzu.tv",
          "domain:zmz002.com",
          "domain:samsungdm.com"
        ]
      },
      {
        "type": "field",
        "port": null,
        "inboundTag": null,
        "outboundTag": "direct",
        "ip": [
          "127.0.0.0/8",
          "192.168.8.0/24",
          "192.168.0.0/16",
          "xxx.xxx.xxx.xxx", //服务器IP
          "geoip:private",
          "geoip:cn"
        ],
        "domain": null
      },
      {
        "type": "field",
        "port": null,
        "inboundTag": null,
        "outboundTag": "block",
        "ip": null,
        "domain": [
          "geosite:category-ads-all"
        ]
      },
      {
        "type": "field",
        "port": null,
        "inboundTag": null,
        "outboundTag": "direct",
        "ip": null,
        "domain": [
          "geosite:cn"
        ]
      },
      {
        "type": "field",
        "port": null,
        "inboundTag": null,
        "outboundTag": "proxy",
        "ip": null,
        "domain": [
          "geosite:geolocation-!cn",
          "geosite:google",
          "domain:google.com",
          "domain:gmail.com",
          "geosite:github",
          "domain:github.com",
          "geosite:netflix",
          "domain:netflix.com",
          "geosite:steam",
          "geosite:telegram",
          "geosite:tumblr",
          "geosite:speedtest",
          "geosite:bbc",
          "domain:gvt1.com",
          "domain:textnow.com",
          "domain:twitch.tv",
          "domain:wikileaks.org",
          "domain:naver.com",
          "domain:wikipedia.org",
          "domain:wikimedia.org",
      "domain:openvpn.net",
      "domain:tmdb.org",
      "domain:themoviedb.org",
      "domain:mp4ba.cc",
          "google.co"
        ]
      }
    ]
  }
 }

6) 请附上出错时软件输出的错误日志。在 Linux 中,日志通常在 /var/log/v2ray/error.log 文件中。

服务器端错误日志:

2020/04/17 09:42:32 [Warning] v2ray.com/core: V2Ray 4.23.1 started
2020/04/17 09:55:43 [Warning] v2ray.com/core: V2Ray 4.23.1 started
2020/04/17 10:08:49 [Warning] v2ray.com/core: V2Ray 4.23.1 started
2020/04/25 10:07:49 [Warning] v2ray.com/core: V2Ray 4.23.1 started
2020/05/06 21:36:56 [Warning] v2ray.com/core: V2Ray 4.23.1 started
2020/05/25 01:23:04 [Warning] v2ray.com/core: V2Ray 4.23.1 started
2020/05/31 07:59:36 [Warning] v2ray.com/core: V2Ray 4.23.1 started
2020/06/01 21:27:53 [Warning] v2ray.com/core: V2Ray 4.23.3 started
2020/06/02 16:29:20 [Warning] v2ray.com/core: V2Ray 4.23.3 started
2020/06/02 22:27:52 [Warning] v2ray.com/core: V2Ray 4.23.3 started

客户端错误日志: (最初客户端没有启用日志,后来启用日志后,再次很快就调出,所以这次之后将客户端回退到4.23.1以求稳定。以下日志内容可以看到4.23.3版本启动后没多久就换成4.23.1了,而4.23.3并非是kill掉的,是自己就飞了,然后就马上换了4.23.1)

2020/06/02 16:35:23 [Warning] v2ray.com/core/transport/internet: failed to apply socket options to incoming connection > v2ray.com/core/transport/internet: failed to set SO_REUSEPORT > protocol not available
2020/06/02 16:35:23 [Warning] v2ray.com/core/transport/internet: failed to apply socket options to incoming connection > v2ray.com/core/transport/internet: failed to set SO_REUSEPORT > protocol not available
2020/06/02 16:35:23 [Warning] v2ray.com/core: V2Ray 4.23.3 started
2020/06/02 16:35:25 [Warning] [12825663] v2ray.com/core/proxy/http: failed to read response from liveupdate7.drivergenius.com > io: read/write on closed pipe
2020/06/02 16:35:25 [Warning] [12825663] v2ray.com/core/app/proxyman/inbound: connection ends > v2ray.com/core/proxy/http: connection ends > v2ray.com/core/proxy/http: failed to write whole request > io: read/write on closed pipe
2020/06/02 16:35:27 [Warning] [595368352] v2ray.com/core/proxy/http: failed to read response from liveupdate7.drivergenius.com > io: read/write on closed pipe
2020/06/02 16:35:27 [Warning] [595368352] v2ray.com/core/app/proxyman/inbound: connection ends > v2ray.com/core/proxy/http: connection ends > v2ray.com/core/proxy/http: failed to write whole request > io: read/write on closed pipe
2020/06/02 16:35:28 [Warning] [3823781822] v2ray.com/core/app/proxyman/inbound: connection ends > v2ray.com/core/proxy/http: connection ends > v2ray.com/core/proxy/http: failed to write whole request > io: read/write on closed pipe
2020/06/02 16:35:28 [Warning] [3823781822] v2ray.com/core/proxy/http: failed to read response from liveupdate7.drivergenius.com > io: read/write on closed pipe
2020/06/02 16:35:35 [Warning] [3913432572] v2ray.com/core/proxy/http: failed to read response from liveupdate7.drivergenius.com > io: read/write on closed pipe
2020/06/02 16:35:35 [Warning] [3913432572] v2ray.com/core/app/proxyman/inbound: connection ends > v2ray.com/core/proxy/http: connection ends > v2ray.com/core/proxy/http: failed to write whole request > io: read/write on closed pipe
2020/06/02 16:35:37 [Warning] [1754493559] v2ray.com/core/app/proxyman/inbound: connection ends > v2ray.com/core/proxy/http: connection ends > v2ray.com/core/proxy/http: failed to write whole request > io: read/write on closed pipe
2020/06/02 16:35:37 [Warning] [1754493559] v2ray.com/core/proxy/http: failed to read response from liveupdate7.drivergenius.com > io: read/write on closed pipe
2020/06/02 16:35:42 [Warning] [938580539] v2ray.com/core/app/proxyman/inbound: connection ends > v2ray.com/core/proxy/http: connection ends > v2ray.com/core/proxy/http: failed to write whole request > io: read/write on closed pipe
2020/06/02 16:35:42 [Warning] [938580539] v2ray.com/core/proxy/http: failed to read response from liveupdate7.drivergenius.com > io: read/write on closed pipe
2020/06/02 16:35:46 [Warning] [2600774541] v2ray.com/core/app/proxyman/inbound: connection ends > v2ray.com/core/proxy/http: connection ends > v2ray.com/core/proxy/http: failed to write whole request > io: read/write on closed pipe
2020/06/02 16:35:46 [Warning] [2600774541] v2ray.com/core/proxy/http: failed to read response from liveupdate7.drivergenius.com > io: read/write on closed pipe
2020/06/02 16:35:51 [Warning] [2530213908] v2ray.com/core/app/proxyman/inbound: connection ends > v2ray.com/core/proxy/http: connection ends > v2ray.com/core/proxy/http: failed to write whole request > io: read/write on closed pipe
2020/06/02 16:35:51 [Warning] [2530213908] v2ray.com/core/proxy/http: failed to read response from liveupdate7.drivergenius.com > io: read/write on closed pipe
2020/06/02 16:39:32 [Warning] v2ray.com/core/transport/internet: failed to apply socket options to incoming connection > v2ray.com/core/transport/internet: failed to set SO_REUSEPORT > protocol not available
2020/06/02 16:39:32 [Warning] v2ray.com/core/transport/internet: failed to apply socket options to incoming connection > v2ray.com/core/transport/internet: failed to set SO_REUSEPORT > protocol not available
2020/06/02 16:39:32 [Warning] v2ray.com/core: V2Ray 4.23.1 started
2020/06/02 16:40:01 [Warning] v2ray.com/core/transport/internet: failed to apply socket options to incoming connection > v2ray.com/core/transport/internet: failed to set SO_REUSEPORT > protocol not available

7) 请附上访问日志。在 Linux 中,日志通常在 /var/log/v2ray/access.log 文件中。

服务端这个日志有72M多,如果确有必要再想办法弄吧。。。

8) 其它相关的配置文件(如 Nginx)和相关日志。 ============ nginx.conf ============

user root; worker_processes 3;

events { worker_connections 4096; }

http { include mime.types; default_type application/octet-stream; sendfile on; keepalive_timeout 65; server { listen 80; server_name localhost; location / { root html; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } include conf.d/*.conf; }

============ conf.d/v2ray.conf ============
server { listen 443 ssl http2; ssl_certificate /data/v2ray.crt; ssl_certificate_key /data/v2ray.key; ssl_protocols TLSv1.2 TLSv1.3; ssl_ciphers TLS13-AES-256-GCM-SHA384:TLS13-CHACHA20-POLY1305-SHA256:TLS13-AES-128-GCM-SHA256:TLS13-AES-128-CCM-8-SHA256:TLS13-AES-128-CCM-SHA256:EECDH+CHACHA20:EECDH+CHACHA20-draft:EECDH+ECDSA+AES128:EECDH+aRSA+AES128:RSA+AES128:EECDH+ECDSA+AES256:EECDH+aRSA+AES256:RSA+AES256:EECDH+ECDSA+3DES:EECDH+aRSA+3DES:RSA+3DES:!MD5; server_name renda.cf; index index.html index.htm; root /home/wwwroot/3DCEList; error_page 400 = /400.html; location /xxxxxxxxxxxx/ { proxy_redirect off; proxy_pass http://127.0.0.1:xxxxxx; proxy_http_version 1.1; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; proxy_set_header Host $http_host; } location ~ .php$ { fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME /home/wwwroot/3DCEList$fastcgi_script_name; include fastcgi_params; }

} server { listen 80; server_name xxxxxxxxxx; return 301 https://xxxxxxxxxxx$request_uri; }

nginx的access.log和error.log也不小,暂时不贴了。

9) 如果 V2Ray 无法启动,请附上 --test 输出。 v2ray能够启动,只是可能很快掉出。

10) 如果 V2Ray 服务运行不正常,请附上 journal 日志。 服务端: -- Logs begin at 二 2020-06-02 22:27:35 CST, end at 三 2020-06-03 01:42:30 CST. -- 6月 02 22:27:21 VDS systemd[1]: Started V2Ray - A unified platform for anti-censorship. 6月 02 22:27:45 VDS v2ray[817]: V2Ray 4.23.3 (V2Fly, a community-driven edition of V2Ray.) Custom (go1.14.1 linux/amd64) 6月 02 22:27:45 VDS v2ray[817]: A unified platform for anti-censorship. 6月 02 22:27:52 VDS v2ray[817]: 2020/06/02 22:27:52 [Info] v2ray.com/core/common/platform/ctlcmd: 6月 02 22:27:52 VDS v2ray[817]: v2ctl> Read config: /etc/v2ray/config.json

客户端因为是个路由器,没有提供 journal 命令。

请预览一下你填的内容再提交。

zhj9709 commented 4 years ago

我用v2fly最新的代码编译的linux arm版,在64位安卓手机上运行现在稳定了,不会用一会就Segmentation fault

jimsmt commented 4 years ago

https://github.com/v2fly/V2FlyBleedingEdgeBinary/releases/tag/unstable-98a5d3fc7b995c6acb1c675fccac0f1c990371fa

@gitgayhub @rendaa

谢谢,测试在armv7的openwrt上,加密方式为auto或手动chacha20-poly1305,都可以稳定运行,不会掉出了

kslr commented 4 years ago

https://github.com/v2ray/v2ray-core/releases/tag/v4.25.1