Skip to content
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

Connection slows over time #14

Open
PaxiTheAlchemist opened this issue Jan 20, 2023 · 2 comments
Open

Connection slows over time #14

PaxiTheAlchemist opened this issue Jan 20, 2023 · 2 comments

Comments

@PaxiTheAlchemist
Copy link

Connection slows over time

Hello! I've been following this guide and have successfully been able to route my data from my phone. Unfortunately, as time passes, I would notice that my speeds would degrade significantly to which restarting the process would be the only way to restore it. As a note, I am aware that the speeds provided by this process does not offer the full bandwidth of the data, but even with the slower initial speed, it degrades even further with time.

Modifications and Oddities

Script
TERMUX_USER="u0_a249"
TERMUX_IP="192.*.254.*"
TERMUX_PORT="8022"
HOSTNAME="hostName"
sshuttle -r $TERMUX_USER@$TERMUX_IP:$TERMUX_PORT 0/0 --exclude $HOSTNAME

As of writing this, I am on Linux using the Sshuttle method to route data from my phone. Using the provided Linux example, I was unfortunately unable to get it to work. With this, I found two solutions to my issue. One solution was to omit the --exclude $hostname 0/0 section of the example while for the other solution, I replaced the $hostname with $HOST. From what I understand, due to the fact that $hostname is an empty variable on my system, it may have broke the example. With this, removing it or replacing it with $HOST, which has my hostname, resolved my issue and allowed the routing to work.

With this issue regarding the hostname, I also would like to point out that for the IP address that I found using ifconfig, no entries had a 192.*.43.* address. Instead, my wlan had an entry for 192.*.254.* to which I adapted accordingly within my script

Are these modifications the possible cause of my issue? With this, What exactly is the reason why we are excluding the host?

Behaviors of Possible Interest

When running the modified script, logs pertaining to channels being closed will repeatedly appear every few minutes or even seconds:

Log
[local sudo] Password: 
c : Connected to server.
Failed to flush caches: Unit dbus-org.freedesktop.resolve1.service not found.
fw: Received non-zero return code 1 when flushing DNS resolver cache.
c : warning: closed channel 9 got cmd=TCP_DATA len=1336
c : warning: closed channel 9 got cmd=TCP_EOF len=0
 s: warning: closed channel 9 got cmd=TCP_STOP_SENDING len=0
c : warning: closed channel 11 got cmd=TCP_DATA len=1336
c : warning: closed channel 27 got cmd=TCP_STOP_SENDING len=0
 s: warning: closed channel 27 got cmd=TCP_EOF len=0
...

Is this behaviour normal for Sshuttle? If this is not, can someone point me to some solutions to fixing this issue?

Additional Info

Client OS: Linux x86_64 (EndeavourOS)
Server OS: Android 12 aarch64

If there is any extra information that would be of help that I can provide, please let me know!

@felikcat
Copy link

felikcat commented Feb 1, 2023

Tunneling traffic through SSH or SSL always incurs slowdown, with a severe increase in bufferbloat.
Use a different method instead: https://github.com/felikcat/unlimited-hotspot

@PaxiTheAlchemist
Copy link
Author

Tunneling traffic through SSH or SSL always incurs slowdown, with a severe increase in bufferbloat. Use a different method instead: https://github.com/felikcat/unlimited-hotspot

Unfortunately the guide you provided involves root to which I am unable to move forward with. I have a newer model of Samsung which unfortunately has it's bootloader locked and as of writing this has no known vulnerabilities or methods to get around this lock. As far as I know, this guide, along with other utilities like pdanet, are my only ways of circumventing usage without rooting.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants