经过了好几次排查,都没找到问题,先说问题的排查过程,多次确认了user信息,包括用户id和alterid,都没问题,头大的一逼
问题排查过程
确保本地的xray服务是正常的
[root@k8s-master01 xray]# systemctl status xray
● xray.service - Xray ServiceLoaded: loaded (/etc/systemd/system/xray.service; enabled; vendor preset: disabled)Active: active (running) since 六 2024-03-16 22:12:12 CST; 16min agoMain PID: 16207 (xray)CGroup: /system.slice/xray.service└─16207 /usr/local/xray/xray -config /usr/local/xray/config.json3月 16 22:12:12 k8s-master01 systemd[1]: Started Xray Service.
3月 16 22:12:12 k8s-master01 xray[16207]: Xray 1.8.6 (Xray, Penetrates Everything.) Custom (go1.21.4 linux/amd64)
3月 16 22:12:12 k8s-master01 xray[16207]: A unified platform for anti-censorship.
3月 16 22:12:12 k8s-master01 xray[16207]: 2024/03/16 22:12:12 [Info] infra/conf/serial: Reading config: /usr/local/xray/config.json
从这一步看上去没问题,接着又开始第二步,通过journalctl排查
[root@k8s-master01 xray]# journalctl -f -xu xray
-- Logs begin at 一 2024-03-04 18:07:02 CST. --
3月 16 22:12:07 k8s-master01 systemd[1]: Started Xray Service.
-- Subject: Unit xray.service has finished start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit xray.service has finished starting up.
--
-- The start-up result is done.
3月 16 22:12:07 k8s-master01 xray[16057]: Xray 1.8.6 (Xray, Penetrates Everything.) Custom (go1.21.4 linux/amd64)
3月 16 22:12:07 k8s-master01 xray[16057]: A unified platform for anti-censorship.
3月 16 22:12:07 k8s-master01 xray[16057]: 2024/03/16 22:12:07 [Info] infra/conf/serial: Reading config: /usr/local/xray/config.json
3月 16 22:12:12 k8s-master01 systemd[1]: Stopping Xray Service...
-- Subject: Unit xray.service has begun shutting down
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit xray.service has begun shutting down.
3月 16 22:12:12 k8s-master01 systemd[1]: Stopped Xray Service.
-- Subject: Unit xray.service has finished shutting down
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit xray.service has finished shutting down.
3月 16 22:12:12 k8s-master01 systemd[1]: Started Xray Service.
-- Subject: Unit xray.service has finished start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
--
-- Unit xray.service has finished starting up.
--
-- The start-up result is done.
3月 16 22:12:12 k8s-master01 xray[16207]: Xray 1.8.6 (Xray, Penetrates Everything.) Custom (go1.21.4 linux/amd64)
3月 16 22:12:12 k8s-master01 xray[16207]: A unified platform for anti-censorship.
3月 16 22:12:12 k8s-master01 xray[16207]: 2024/03/16 22:12:12 [Info] infra/conf/serial: Reading config: /usr/local/xray/config.json
也没看出什么问题,windows上测试几次都是正常的
为了保持统一,已经把windows上的config.json的内容复制粘贴到centos上了
现在开始接下来操作就是配日志(服务端和客户端都配置了)
"log": {"access": "/var/log/xray/access.log","error": "/var/log/xray/error.log","loglevel": "debug"},
然后通过tail命令查看
服务端日志是这个
2024/03/16 14:10:09 [Info] [4164381125] app/proxyman/inbound: connection ends > proxy/vmess/inbound: invalid request from 183.222.204.175:0 > proxy/vmess/encoding: invalid user > user do not exist
2024/03/16 14:11:01 [Info] [634757384] app/proxyman/inbound: connection ends > proxy/vmess/inbound: invalid request from 183.222.204.175:0 > proxy/vmess/encoding: invalid user > user do not exist
2024/03/16 14:14:01 [Info] [1120841913] app/proxyman/inbound: connection ends > proxy/vmess/inbound: invalid request from 183.222.204.175:0 > proxy/vmess/encoding: invalid user > user do not exist
2024/03/16 14:14:57 [Info] [1537117142] app/proxyman/inbound: connection ends > proxy/vmess/inbound: invalid request from 183.222.204.175:0 > proxy/vmess/encoding: invalid user > user do not exist
2024/03/16 14:14:57 [Info] [549166064] app/proxyman/inbound: connection ends > proxy/vmess/inbound: invalid request from 183.222.204.175:0 > proxy/vmess/encoding: invalid user > user do not exist
2024/03/16 14:15:05 [Info] [1278316473] app/proxyman/inbound: connection ends > proxy/vmess/inbound: invalid request from 183.222.204.175:0 > proxy/vmess/encoding: invalid user > user do not exist
2024/03/16 14:15:15 [Info] [1619787935] app/proxyman/inbound: connection ends > proxy/vmess/inbound: invalid request from 183.222.204.175:0 > proxy/vmess/encoding: invalid user > user do not exist
2024/03/16 14:16:07 [Info] [336587068] app/proxyman/inbound: connection ends > proxy/vmess/inbound: invalid request from 183.222.204.175:0 > proxy/vmess/encoding: invalid user > user do not exist
2024/03/16 14:19:14 [Info] [3178032418] app/proxyman/inbound: connection ends > proxy/vmess/inbound: invalid request from 183.222.204.175:0 > proxy/vmess/encoding: invalid user > user do not exist
2024/03/16 14:20:02 [Info] [1422900044] app/proxyman/inbound: connection ends > proxy/vmess/inbound: invalid request from 183.222.204.175:0 > proxy/vmess/encoding: invalid user > user do not exist
2024/03/16 14:20:19 [Info] [2559318044] app/proxyman/inbound: connection ends > proxy/vmess/inbound: invalid request from 183.222.204.175:0 > proxy/vmess/encoding: invalid user > user do not exist
2024/03/16 14:20:22 [Info] [1461925477] app/proxyman/inbound: connection ends > proxy/vmess/inbound: invalid request from 183.222.204.175:0 > proxy/vmess/encoding: invalid user > user do not exist
2024/03/16 14:21:16 [Info] [850676330] app/proxyman/inbound: connection ends > proxy/vmess/inbound: invalid request from 183.222.204.175:0 > proxy/vmess/encoding: invalid user > user do not exist
客户端日志是这个
3月 04 18:16:00 k8s-master01 xray[1346]: 2024/03/04 18:16:00 [Warning] [2403275693] app/proxyman/outbound: failed to process outbound traffic > proxy/vmess/outbound: failed to find an available destination > common/retry: [transport/
3月 04 18:16:02 k8s-master01 xray[1346]: 2024/03/04 18:16:02 127.0.0.1:46674 accepted //registry-1.docker.io:443 [http -> proxy]
3月 04 18:16:10 k8s-master01 xray[1346]: 2024/03/04 18:16:10 [Warning] [2594380722] app/proxyman/outbound: failed to process outbound traffic > proxy/vmess/outbound: failed to find an available destination > common/retry: [transport/
3月 04 18:16:12 k8s-master01 xray[1346]: 2024/03/04 18:16:12 127.0.0.1:46770 accepted //registry-1.docker.io:443 [http -> proxy]
3月 04 18:16:20 k8s-master01 xray[1346]: 2024/03/04 18:16:20 [Warning] [1302667946] app/proxyman/outbound: failed to process outbound traffic > proxy/vmess/outbound: failed to find an available destination > common/retry: [transport/
3月 04 18:16:22 k8s-master01 xray[1346]: 2024/03/04 18:16:22 127.0.0.1:46874 accepted //registry-1.docker.io:443 [http -> proxy]
3月 04 18:16:30 k8s-master01 xray[1346]: 2024/03/04 18:16:30 [Warning] [2697733957] app/proxyman/outbound: failed to process outbound traffic > proxy/vmess/outbound: failed to find an available destination > common/retry: [transport/
3月 04 18:16:32 k8s-master01 xray[1346]: 2024/03/04 18:16:32 127.0.0.1:46966 accepted //registry-1.docker.io:443 [http -> proxy]
3月 04 18:16:38 k8s-master01 xray[1346]: 2024/03/04 18:16:38 websocket: failed to close network connection: close tcp 192.168.10.10:43776->8.210.103.219:443: use of closed network connection
3月 04 18:16:40 k8s-master01 xray[1346]: 2024/03/04 18:16:40 websocket: failed to close network connection: close tcp 192.168.10.10:43786->8.210.103.219:443: use of closed network connection
3月 04 18:16:40 k8s-master01 xray[1346]: 2024/03/04 18:16:40 [Warning] [1423899102] app/proxyman/outbound: failed to process outbound traffic > proxy/vmess/outbound: failed to find an available destination > common/retry: [transport/
3月 04 18:16:42 k8s-master01 xray[1346]: 2024/03/04 18:16:42 127.0.0.1:47070 accepted //registry-1.docker.io:443 [http -> proxy]
3月 04 18:16:50 k8s-master01 xray[1346]: 2024/03/04 18:16:50 [Warning] [3280367621] app/proxyman/outbound: failed to process outbound traffic > proxy/vmess/outbound: failed to find an available destination > common/retry: [transport/
3月 04 18:16:50 k8s-master01 xray[1346]: 2024/03/04 18:16:50 websocket: failed to close network connection: close tcp 192.168.10.10:43890->8.210.103.219:443: use of closed network connection
3月 04 18:16:52 k8s-master01 xray[1346]: 2024/03/04 18:16:52 127.0.0.1:47164 accepted //registry-1.docker.io:443 [http -> proxy]
3月 04 18:16:58 k8s-master01 xray[1346]: 2024/03/04 18:16:58 websocket: failed to close network connection: close tcp 192.168.10.10:43974->8.210.103.219:443: use of closed network connection
3月 04 18:17:00 k8s-master01 xray[1346]: 2024/03/04 18:17:00 [Warning] [2142162998] app/proxyman/outbound: failed to process outbound traffic > proxy/vmess/outbound: failed to find an available destination > common/retry: [transport/
3月 04 18:17:10 k8s-master01 xray[1346]: 2024/03/04 18:17:10 [Warning] [1406668282] app/proxyman/outbound: failed to process outbound traffic > proxy/vmess/outbound: failed to find an available destination > common/retry: [transport/
3月 04 18:17:53 k8s-master01 xray[1346]: 2024/03/04 18:17:53 127.0.0.1:47750 accepted //registry-1.docker.io:443 [http -> proxy]
3月 04 18:18:03 k8s-master01 xray[1346]: 2024/03/04 18:18:03 127.0.0.1:47840 accepted //registry-1.docker.io:443 [http -> proxy]
3月 04 18:18:06 k8s-master01 xray[1346]: 2024/03/04 18:18:06 [Warning] [4145448540] app/proxyman/outbound: failed to process outbound traffic > proxy/vmess/outbound: failed to find an available destination > common/retry: [transport/
3月 04 18:18:13 k8s-master01 xray[1346]: 2024/03/04 18:18:13 127.0.0.1:47942 accepted //registry-1.docker.io:443 [http -> proxy]
3月 04 18:18:16 k8s-master01 xray[1346]: 2024/03/04 18:18:16 [Warning] [1365796855] app/proxyman/outbound: failed to process outbound traffic > proxy/vmess/outbound: failed to find an available destination > common/retry: [transport/
3月 04 18:18:23 k8s-master01 xray[1346]: 2024/03/04 18:18:23 127.0.0.1:48032 accepted //registry-1.docker.io:443 [http -> proxy]
3月 04 18:18:26 k8s-master01 xray[1346]: 2024/03/04 18:18:26 [Warning] [2392807403] app/proxyman/outbound: failed to process outbound traffic > proxy/vmess/outbound: failed to find an available destination > common/retry: [transport/
3月 04 18:18:33 k8s-master01 xray[1346]: 2024/03/04 18:18:33 127.0.0.1:48136 accepted //registry-1.docker.io:443 [http -> proxy]
3月 04 18:18:36 k8s-master01 xray[1346]: 2024/03/04 18:18:36 [Warning] [2814008583] app/proxyman/outbound: failed to process outbound traffic > proxy/vmess/outbound: failed to find an available destination > common/retry: [transport/
3月 04 18:18:46 k8s-master01 xray[1346]: 2024/03/04 18:18:46 [Warning] [2119998531] app/proxyman/outbound: failed to process outbound traffic > proxy/vmess/outbound: failed to find an available destination > common/retry: [transport/
3月 04 18:20:09 k8s-master01 xray[1346]: 2024/03/04 18:20:09 127.0.0.1:49040 accepted //registry-1.docker.io:443 [http -> proxy]
说实话,看了上面两个日志,我是摸不着头,因为userid和alterid都确认过都不知道多少次了,都感觉没问题
一度怀疑是xray的问题,于是换了一个客户端,采用v2ray的客服端
于是用v2ray进行本地服务配置,可还是出现同样的问题
后面网上说通过alter为0可以解决,然后还有其它乱七八着的解决方法,还是不行
终于,看到一条有用的信息,时间差
于是,更新centos的时间
ntpdate time.windows.com
再次查看
[root@k8s-master01 ~]# curl -x http://127.0.0.1:10809 https://www.google.com -v
* About to connect() to proxy 127.0.0.1 port 10809 (#0)
* Trying 127.0.0.1...
* Connected to 127.0.0.1 (127.0.0.1) port 10809 (#0)
* Establish HTTP proxy tunnel to www.google.com:443
> CONNECT www.google.com:443 HTTP/1.1
> Host: www.google.com:443
> User-Agent: curl/7.29.0
> Proxy-Connection: Keep-Alive
>
< HTTP/1.1 200 Connection established
<
* Proxy replied OK to CONNECT request
* Initializing NSS with certpath: sql:/etc/pki/nssdb
* CAfile: /etc/pki/tls/certs/ca-bundle.crtCApath: none
* SSL connection using TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
* Server certificate:
* subject: CN=www.google.com
* start date: 2月 19 08:19:14 2024 GMT
* expire date: 5月 13 08:19:13 2024 GMT
* common name: www.google.com
* issuer: CN=GTS CA 1C3,O=Google Trust Services LLC,C=US
> GET / HTTP/1.1
> User-Agent: curl/7.29.0
> Host: www.google.com
> Accept: */*
>
< HTTP/1.1 302 Found
< Location: https://www.google.com.hk/url?sa=p&hl=zh-CN&pref=hkredirect&pval=yes&q=https://www.google.com.hk/&ust=1710600070261911&usg=AOvVaw1xFQ6FZSUAQ0p_KF1PPren
< Cache-Control: private
< Content-Type: text/html; charset=UTF-8
< Content-Security-Policy-Report-Only: object-src 'none';base-uri 'self';script-src 'nonce-zeU1oF1mM8-Ul5Hpk8GhNw' 'strict-dynamic' 'report-sample' 'unsafe-eval' 'unsafe-inline' https: http:;report-uri https://csp.withgoogle.com/csp/gws/other-hp
< P3P: CP="This is not a P3P policy! See g.co/p3phelp for more info."
< Date: Sat, 16 Mar 2024 14:40:40 GMT
< Server: gws
< Content-Length: 372
< X-XSS-Protection: 0
< X-Frame-Options: SAMEORIGIN
< Set-Cookie: 1P_JAR=2024-03-16-14; expires=Mon, 15-Apr-2024 14:40:40 GMT; path=/; domain=.google.com; Secure
< Set-Cookie: AEC=Ae3NU9PNmRL7EUmFbkfvziLkI-U_QJBZOxNBfkb0OXkO9kOOvAlHiX_gSQ; expires=Thu, 12-Sep-2024 14:40:40 GMT; path=/; domain=.google.com; Secure; HttpOnly; SameSite=lax
< Set-Cookie: NID=512=A4a6jbVPAvqT8ipYJhTvbuS-FsX-hDEA90zLI0FhkT3oDJKoMsYaqQlRyllu2wH_Bw-_nTgAwCrvr4TogqxEOfh77CPlxc4A9jRMmHQBpWjqF7yFiByuBB6O6vgmQNDGALw5zZue0O8irX7h_2w4zRNUrOEZVA32rSLmYoJpl1s; expires=Sun, 15-Sep-2024 14:40:40 GMT; path=/; domain=.google.com; HttpOnly
< Alt-Svc: h3=":443"; ma=2592000,h3-29=":443"; ma=2592000
<
<HTML><HEAD><meta http-equiv="content-type" content="text/html;charset=utf-8">
<TITLE>302 Moved</TITLE></HEAD><BODY>
<H1>302 Moved</H1>
The document has moved
<A HREF="https://www.google.com.hk/url?sa=p&hl=zh-CN&pref=hkredirect&pval=yes&q=https://www.google.com.hk/&ust=1710600070261911&usg=AOvVaw1xFQ6FZSUAQ0p_KF1PPren">here</A>.
</BODY></HTML>
* Connection #0 to host 127.0.0.1 left intact
成功解决
问题排查方向
VMess: Invalid User 可能的原因:
1、客户端和服务器端的用户 ID 不匹配;2、客户端和服务器端的用户 alterId 不匹配;3、客户端与服务器的时间不匹配,误差不能超过90秒钟;