Ysurac / openmptcprouter

OpenMPTCProuter is an open source solution to aggregate multiple internet connections using Multipath TCP (MPTCP) on OpenWrt
https://www.openmptcprouter.com/
GNU General Public License v3.0
1.92k stars 274 forks source link

Archives with FTP upload corrupted with Xray Vless #3692

Open 3dzug opened 2 days ago

3dzug commented 2 days ago

When using XRay Vless with Gloryrun UPD (also with off) uploaded compressed files like rar are corrupted.

Repro:

  1. Select XRay Vless , Gloryrun UDP
  2. Create a rar archive
  3. Upload with FTP FileZilla
  4. Download again
  5. Extract

Expected Behavior: files should be extracted

Actual Behavior: Archive Corrupted, (Unexptected End of Archive)

Here is a sample. The lower file was the sent one the upper the received. files

If I change to Shadowsocks I dont have this problem. This issue happens with on of my servers another one does not have that issue, so it seems not a generic issue. What can be the issue? Which data do you need?

openmptcprouter v0.61-6.6 r0

Ysurac commented 2 days ago

Please use template

3dzug commented 2 days ago

@Ysurac Template attached. Please let me know if you want ftp access for testing.

Expected Behavior

An Uploaded ftp file should have the exact byte size than the original file and should be not corrupted.

Current Behavior

Using XRay Vless or other protocols except Shadowsocks the filesize is not exact and the downloaded file is corrupt.

Nov 29 21:11:22 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(LanBridge) 192.168.100.160 f4:34:f0:70:1c:40 Nov 29 21:11:22 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPACK(LanBridge) 192.168.100.160 f4:34:f0:70:1c:40 BuroF43F0701C40 Nov 29 21:13:53 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(LanBridge) 192.168.100.212 0a:b4:fe:6b:02:e3 Nov 29 21:13:53 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPACK(LanBridge) 192.168.100.212 0a:b4:fe:6b:02:e3 repeaterbuero Nov 29 21:25:51 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(LanBridge) 192.168.100.124 d6:ca:ad:56:3a:fa Nov 29 21:25:51 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPACK(LanBridge) 192.168.100.124 d6:ca:ad:56:3a:fa iPhone Nov 29 21:26:32 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(LanBridge) 192.168.100.231 4e:5f:49:5c:16:a3 Nov 29 21:26:32 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPACK(LanBridge) 192.168.100.231 4e:5f:49:5c:16:a3 Nov 29 21:27:03 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(LanBridge) 192.168.100.231 4e:5f:49:5c:16:a3 Nov 29 21:27:03 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPACK(LanBridge) 192.168.100.231 4e:5f:49:5c:16:a3 Nov 29 21:27:50 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(LanBridge) 192.168.100.124 d6:ca:ad:56:3a:fa Nov 29 21:27:50 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPACK(LanBridge) 192.168.100.124 d6:ca:ad:56:3a:fa iPhone Nov 29 21:27:50 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(LanBridge) 192.168.100.124 d6:ca:ad:56:3a:fa Nov 29 21:27:50 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPACK(LanBridge) 192.168.100.124 d6:ca:ad:56:3a:fa iPhone Nov 29 21:28:31 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(LanBridge) 192.168.100.231 4e:5f:49:5c:16:a3 Nov 29 21:28:31 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPACK(LanBridge) 192.168.100.231 4e:5f:49:5c:16:a3 Nov 29 21:28:33 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(LanBridge) 192.168.100.231 4e:5f:49:5c:16:a3 Nov 29 21:28:33 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPACK(LanBridge) 192.168.100.231 4e:5f:49:5c:16:a3 Nov 29 21:30:45 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(LanBridge) 192.168.100.206 e8:aa:cb:94:9e:f7 Nov 29 21:30:45 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPACK(LanBridge) 192.168.100.206 e8:aa:cb:94:9e:f7 Samsung Nov 29 21:41:22 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(LanBridge) 192.168.100.117 9a:0f:51:2d:d5:f9 Nov 29 21:41:22 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPACK(LanBridge) 192.168.100.117 9a:0f:51:2d:d5:f9 Nov 29 21:44:56 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(LanBridge) 192.168.100.124 d6:ca:ad:56:3a:fa Nov 29 21:44:56 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPACK(LanBridge) 192.168.100.124 d6:ca:ad:56:3a:fa iPhone Nov 29 21:46:09 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(LanBridge) 192.168.100.228 74:56:3c:b5:0c:77 Nov 29 21:46:09 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPACK(LanBridge) 192.168.100.228 74:56:3c:b5:0c:77 Matthias-NG Nov 29 21:49:46 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPREQUEST(LanBridge) 192.168.100.216 02:4e:98:e3:fe:5a Nov 29 21:49:46 OpenMPTCProuter daemon.info dnsmasq-dhcp[1]: DHCPACK(LanBridge) 192.168.100.216 02:4e:98:e3:fe:5a Nov 29 21:52:21 OpenMPTCProuter daemon.err uhttpd[7329]: [info] luci: accepted login on / for root from 192.168.100.228

Possible Solution

Using Shadowsocks does not produce this issue

Steps to Reproduce the Problem

  1. Set Proxy to XRay Vless and VPN to Glorytun UDP
  2. Create a 250 mb zip and rar file with winrar
  3. Upload it via FTP to a server
  4. Download the file
  5. Check different filesizes
  6. Try to extract ( I can't)

Context (Environment)

I try to upload a compressed archive

If you cant create this problem please message me and I'll give you access to my server and you can test.

Specifications

Ysurac commented 1 day ago

Can you test latest snapshot: https://github.com/Ysurac/openmptcprouter/wiki/Snapshots (on both VPS and router) ? If it's still not work, can you give me the result of journalctl -u xray on the timestamp you try FTP upload ?

3dzug commented 1 day ago

Is there a description how I have to install the router snapshot? I have no skills on that topic.

Ysurac commented 1 day ago

Exactly like others images, but using the links in the previous link. Via System->Firmware update