OK this might be in the wrong place if so sorry, however might be of use and maybe can be used to dev some work arounds when tethering...
Intro seemingly ATT US have started to spot people who are tethering BUT not on a data plan that "alows" tehtering (we can argue the rights and wrongs of that but this isnt about that issue)
People where asking about how they could tell, I found the following on The Register
QQQ
For all you wondering how they can tell:
All IP packets have something called a TTL associated with them. It stands for Time To Live. Every "hop" along the network from one router to the next reduces the TTL by one. When it reaches 0, the packet is dropped. This was introduced to keep routing problems from overloading the network. If for example, by some error a packet was going around in a circular path, the TTL would eventually reach 0 and prevent a packet storm.
The thing is, ALL routing devices do this. OSes use standard TTLs. For example, let's say both your iPhone and laptop use 127 for the TTL. AT&T will receive packets from your iPhone with a TTL of 127, but since the packets from your laptop pass through your iPhone first, they arrive at AT&T with a TTL of 126. They can detect a tethered device this way.
Apple uses a TTL of 64 for the iPhone, by the way. So change the TTL on your computer to "65" and there should be no problem. Here's how to do it:
1. Click Start - Search and type “regedit”. This launches the WIndows Registry.
2. In the registry, navigate to the following registry key [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters] HKEY_LOCAL_MACHINE
\SYSTEM
\CurrentControlSet
\Services
\Tcpip
\Parameters
3. In the right pane, right-click and select New – DWORD (32-bit value) and set its name as “DefaultTTL” and set its value anything between “0? and “255?. The value sets the number of Hops or links the packet traverses before being discarded.
Kudos to Ryan Laster1. I don't have an iPhone to test this.
UQUQUQ
Ok for most that is straight forward and simple little process, however we would need to know what the TTL for the Hero (or all HTC's) is and then either alter it when using tehtering (alter the tethering APK) or write a script that when tathering alters the computers TLL too Hero+1
Ok so hope th above makes somesense and it can be used by some one
If not... carry on the good work
Note that there are more ways to detect stuff like hidden network segments, not just TTL - although TTL spoofing certainly doesn't hurt.
Although it's safer when done directly on the device *behind* the tethered phone, not on the phone itself.
Just a question about this way to hide tethering. I have a captivate that at&t does not know is a smartphone. If I tether will at&t know I have a smartphone. As there are many older phones that would tether (so to speak). As at&t does not have a non smartphone tethering plan. Can I just say I am tethering with a non smartphone?
I need to change it to 1400, but after endless searches I have no clue. Is there any way to change the mtu settings and what is the default mtu setting for the vibrant (is it 1500?).
I found this thread, but it deals with windows mobile phones.
I need to do this because many downloads time out and need to reconnect.
Not sure you I understand the need but here is a basic description:
If things are working correctly MTU is "discovered" when the session is initiated.
MTU can change anyplace in the path. There is so much equipment there is no way to know for sure.
The one place that MTU size has a large impact is when the do not fragment flag is set. Normally a device that cannot pass it will return a messages via ICMP that says fragmentation required but the flag is set and drop the packet. The client then resends it with a smaller MTU. When a firewall blocks this message (some people do not know ICMP is not always ping) you get very strange and hard to debug issues.
Packet fragmentation used to be a much larger issue. Depends what device is doing the reassembly of the packet. PCs now days have plenty of power and so do most routers and firewalls.
There is also the issue of extra overhead for the tcp header on the fragments but bandwidth is huge so that also makes little difference.
The only MTU settings that make a large performance difference is when you can run jumbo frames but this is limited to equipment that can support this.
I think the timeouts may be a result of tower traffic kick off and slow transfer rate, and changing the MTU probably won't make a difference unless you are trying to connect to a specific site.
Hope that helps...
when I tether my phone to my pc, I had trouble d/l files because they would time out and the tether connection would be dropped as a result
After changing the mtu for this connection on my pc from the default of 1500 down to a lower value, the files downloaded properly and there was no dropping of connection.
Now when I download directly from my phone (no tethering), the same thing happens where the downloads time out. I'm wondering if there is a similar process where I could change the mtu settings on my phone like I did on my pc so that it only accepts a certain size of packets plus header instead of the default which I think is 1500.
Just a reminder to get it on top of the list again
It is becoming rather difficult to compare all the different statements about Wifi performance and the speed results determined with Speedtest.Net
Don't use the bars at the bottom of the screen.
These are just a graphical image representing that something is going on with Wifi. If the parameters in the firmware are changed you can get as much bars as you want.
Furthermore the bars don't say anything about the quality of the Wifi connection.
Don't use Speedtest.Net
Speedtest.Net doesn't measure Wifi speed but the speed of the connection you are having with a remote Speedtest.Net server on the internet. The speed it indicates is the speed of the weakest link in the routing. So congestion on the internet (not your Wifi) is represented in a slower speed.
When your family or housemates are streaming Youtube the speed it indicates is the speed for the remainder of the bandwith that is left over for you.
Use only Iperf!!! (it's free)
With Iperf you set up a server and a client in your home network . By executing Iperf with different parameters you can get a lot of different info about your Wifi like bandwith, lost packets, jitter, sent and recieved data, etcetera.
For the noob it seems complicated but it isn't. There is a good tutorial on http://openmaniak.com/iperf.php
Please do me, the community and yourself a favor.
Use Iperf.
That way we can get data we can compare.
And maybe someday it will get us somewhere
Thank you very much in advance
PS: Don't just do one test. Do multiple tests. This is something you can automate with Iperf. Set it to do 20 (or more) tests and get some coffee.
using -c<ip> -d I get the following in the same room of my 300mbps wireless n router:
Client connecting to 192.168.1.100, TCP port 5001
TCP window size: 8.00 KByte (default)
------------------------------------------------------------
[256] local 192.168.1.102 port 49792 connected with 192.168.1.100 port 5001
[ ID] Interval Transfer Bandwidth
[256] 0.0-10.0 sec 8.52 MBytes 7.13 Mbits/sec
[280] 0.0-10.1 sec 36.1 MBytes 30.1 Mbits/sec
[288] local 192.168.1.102 port 5001 connected with 192.168.1.100 port 58706
i'm going to assume that this is bad...
Edit: Another test doing -t 25 -i 1:
I get an average transfer of about 4.4 MBytes and Bandwidth of an average of about 38MBits/sec
dingdonggggg said:
Just a reminder to get it on top of the list again
It is becoming rather difficult to compare all the different statements about Wifi performance and the speed results determined with Speedtest.Net
Don't use the bars at the bottom of the screen.
These are just a graphical image representing that something is going on with Wifi. If the parameters in the firmware are changed you can get as much bars as you want.
Furthermore the bars don't say anything about the quality of the Wifi connection.
Don't use Speedtest.Net
Speedtest.Net doesn't measure Wifi speed but the speed of the connection you are having with a remote Speedtest.Net server on the internet. The speed it indicates is the speed of the weakest link in the routing. So congestion on the internet (not your Wifi) is represented in a slower speed.
When your family or housemates are streaming Youtube the speed it indicates is the speed for the remainder of the bandwith that is left over for you.
Use only Iperf!!! (it's free)
With Iperf you set up a server and a client in your home network . By executing Iperf with different parameters you can get a lot of different info about your Wifi like bandwith, lost packets, jitter, sent and recieved data, etcetera.
For the noob it seems complicated but it isn't. There is a good tutorial on http://openmaniak.com/iperf.php
Please do me, the community and yourself a favor.
Use Iperf.
That way we can get data we can compare.
And maybe someday it will get us somewhere
Thank you very much in advance
PS: Don't just do one test. Do multiple tests. This is something you can automate with Iperf. Set it to do 20 (or more) tests and get some coffee.
Click to expand...
Click to collapse
Just a reminder to get the thread a liitle bit higher on the list again.
Lot's of people asking the same question
I have a grandfathered Unlimited Verizon Data Plan that my company is paying me to have. I do not like Verizon, and am out of contract, so I recently purchased a Nexus 5 and plan on paying monthly with Ting. I have to maintain a "company phone" but using Google Voice, and importing all my accounts, it is really trivial that I would be using the Nexus 5 on a different carrier, since they only subsidize their employees, the device does not actually belong to them.
Instead of leaving my GS3 in a shoe box somewhere or selling it, I wanted to try using it as a dedicated hotspot for my apartment since I live in an area that has capped data from ISP's and no real solution (read FIOS) yet.
I purchased a Netgear Wireless Bridge Adapter WNCE2001 and set it up to connect to the phone's wifi hotspot and plugged that into the WAN "internet" port of my router running Tomato 1.28 firmware.
All seemed ok as far as ability to surf the web, use netflix from my TV, etc however there was a huge problem with some of the things I host from my internal network, such as media servers Subsonic, and Plex.
I am not able to access anything hosted on my internal network from any external network, even though I have not touched or altered my configurations - just replaced the WAN / "internet" port of my router with the tethered data connection.
After days of research and reading I have attempted a few fixes, although none have truly worked so far:
1) I tried connecting the phone to an open VPN server and then routing that traffic through the built in wifi tethering . This indeed worked - I followed some threads linked below, and was able to verify that now everything on my network was using the Open VPN connection - however I could not figure out a way to forward the ports appropriately and access Subsonic or Plex from the outside world.
http://forum.xda-developers.com/showthread.php?t=1993689
http://forum.xda-developers.com/showthread.php?t=2317841
2) I attempted using SSH tunnel from a remote Linux Server and although I could verify tha the tunnel was getting data piped through, I could not actually access Subsonic or PLex from the outside world. I tried to use tsocks to force all traffic for each service to use an established SSH tunnel but did not have much success.
It is important to note that these methods were tested on a shared server of a friend of mines, as far as I know they do not have root access and can not alter the open VPN or Open SSH configs or manually open ports on the server side. I wanted to just test it out to verify that it could work because I do not have a dedi or vps at the moment, I would consider getting something small from digital ocean or Amazon EC2 if this could actually work.
3) Lastly, I tried to use this port forwarding app, which as far as I can tell did absolutely nothing
Any help or direction is much appreciated, at this point I am more frustrated because after hours of reading and trying things out I feel as though I am now even more confused as to why this isn't / can't / could be working?!?!
Another thread I found here that seems like maybe it could be similar is the ability of getting NAT free with XBL using tethered data. I dont play video games, but I am wondering if something similar could be done using a crossover cable to allow for opening up ports through the wireless ISP as well? The older computer I use to host my media stuff from is running Ubuntu, and I have a Macbook Laptop, I only run Win7/8 in VM's on occasion - ideally though I want to find a solution that only uses the Linux Laptop, the phone, and the router - I can't leave my laptop home.
TLDR;
Halp! :silly:
[old desktop]- - - - ->{ROUTER]- - - - - >[WIFI ADAPTER]- - - ->[TETHERED GS3]- - - >[VZW]- - -> INTERNETS :good:
How to I send media servers from one side to the other and avoid all the NATing and dynamic IP's ? :victory:
I use versavpn with verizon and connect with openvpn. They give 3 ports to forword and dedicated ip. You chose the ports u want to forward on there web site. I have plex and remote desktop and a ftp server running on my unlimited data Verizon plan 300 gigs used a month for 3 years now. This has worked OK for me. I also ditched the tethered phone and went for a 4glte router instead much less hassle.
Sent from my LG-VS980 using XDA-Developers mobile app
Got a free n200 through tmobile to use as a hotspot device for my pc. I was previously getting the job done by using a galaxy note 3 and setting my pc's ttl to 65 but apparently that doesn't work with the newer phones.
I did some searching online and haven't been able to get a definitive solution to bypassing the hotspot throttle, as people seem to have varying results.
Had a lot of issues with PDAnet+, so it's definitely not a long-term solution for me.
Just sent an unlock request to OnePlus, hopefully by next week I'll get the unlock file and I'll root the phone. I'm assuming that rooting the phone will expand my options for what I want to do. Anyone have a solution that worked for them?
Yo, it's like dns hijacking, in fact, this is what you have to do to bypass this.
I'll paint a scenario, see what you make of it...
I plug my sim into a wifi router, in the control panel of this router, I set the wifi to use the 2nd ip, (yes, all isp's actually give you 2 ip's, one that is public, one the isp use's to spy on you, and the one you see in your ethernet card, usually 192.168.1.1.
Your wifi router runs adb, so it is on a different network, being 192.168.0.1, if you set your connecting device to your public ip shown by the router, and nxbogus domain your isp's private number seen in the router, (usually 100.whatever) and their dns, then set your prefered dns in the connecting device, you will bypass the throttling, but you will notice something else...
They throttle you by lowering your phones coverage lol...
Notice in your wifi setup pages your signal will drop from say 75% to 25%, and if you check the config logs, you'll see your limited 90% by the isp..
Yup, I'm isp level in this department..
didn't understand half of what you said. can you break it down a lil bit more?
l0csta said:
Got a free n200 through tmobile to use as a hotspot device for my pc. I was previously getting the job done by using a galaxy note 3 and setting my pc's ttl to 65 but apparently that doesn't work with the newer phones.
I did some searching online and haven't been able to get a definitive solution to bypassing the hotspot throttle, as people seem to have varying results.
Had a lot of issues with PDAnet+, so it's definitely not a long-term solution for me.
Just sent an unlock request to OnePlus, hopefully by next week I'll get the unlock file and I'll root the phone. I'm assuming that rooting the phone will expand my options for what I want to do. Anyone have a solution that worked for them?
Click to expand...
Click to collapse
you could always use this classic app been around for yrs its called pdanet/Foxfi........ http://foxfi.com/
PopCaps1996 said:
you could always use this classic app been around for yrs its called pdanet/Foxfi........ http://foxfi.com/
Click to expand...
Click to collapse
yea i'm using easytether rn, very similar to foxfi and pdanet+... not a permanent solution however, as it tends to randomly disconnect and i often get kicked out of games due to "network lag". Speeds are exponentially faster than the throttled hotspot, however, so i wont complain.
still, would be nice if there was a solution to this for the native hotspot/tether features... tried everything with apns and changing the ttl on the phone but it didn't work.
looks like someone found a solution for the moto g 5g here, maybe i'll try to implement this for the n200, could be a possible workaround.
l0csta said:
yea i'm using easytether rn, very similar to foxfi and pdanet+... not a permanent solution however, as it tends to randomly disconnect and i often get kicked out of games due to "network lag". Speeds are exponentially faster than the throttled hotspot, however, so i wont complain.
still, would be nice if there was a solution to this for the native hotspot/tether features... tried everything with apns and changing the ttl on the phone but it didn't work.
looks like someone found a solution for the moto g 5g here, maybe i'll try to implement this for the n200, could be a possible workaround.
Click to expand...
Click to collapse
moto g solution you posted requires a special kernel. usb tethering through PDAnet+ paid version works fine, the key is you dont enable it thru the native tethering, instead enable USB tethering through the PDAnet app and leave the phone on charging mode so it can make a ADB connection. Make sure ADB is working and you can establish a working adb connection from PC to phone first prior to attempting to tether since it will use ADB. i get full speeds tethering using the paid version.
AiM2LeaRn said:
moto g solution you posted requires a special kernel. usb tethering through PDAnet+ paid version works fine, the key is you dont enable it thru the native tethering, instead enable USB tethering through the PDAnet app and leave the phone on charging mode so it can make a ADB connection. Make sure ADB is working and you can establish a working adb connection from PC to phone first prior to attempting to tether since it will use ADB. i get full speeds tethering using the paid version.
Click to expand...
Click to collapse
yeah i've been doing this via easy tether, gets the job done for the most part
For me, PDAnet has low throughput while EasyTether runs full speed and can be used with OpenWRT. They both disconnect randomly though.
No reason to deal with that if you have root. AdGuard+VPNHotspot+noprovisioning is easy to setup and works fine for most networks.
l0csta said:
didn't understand half of what you said. can you break it down a lil bit more?
Click to expand...
Click to collapse
Only connection is WAN to WAN!
Ok, first, I use an lte wifi router, enter gui, goto lan, change router login ip to any ip not 192.168.1.1 or 192.168.0.1, the latter is hidden in router, but when trying to connect 2nd router, using this ip, problems appear, because the 1st router has adb enabled due to the lte section of 1st router being android 6, and uses's it.
So in effect, I set 1st routers address to 192.168.1.5, 255.255.254.0, 192.168.1.3 ie, this is 1st router login address. In the 2nd router I set mac address of 1st router to use 192.168.1.3, having been set in the 1st.
I do this because if I set 2nd router to match 1st routers address, the 2nd router auto changes address, when plugged in to first, and the 1st router changes too.
So now that you can goto 192.168.1.1 in 2nd router with 1st plugged in, try 192.168.1.3.
First part over, now the tricky part...
Disconnect 2nd router (this Will become your MAIN router)
Start 1st router with sim in, only to obtain public ip, because you need to set this ip in WAN of 2nd router. If your ip changes every reboot, you need to check public ip from first router match's what you set the wan ip to in 2nd router.
Now when you are in 1st router's network/lan settings, look for option to use 2nd ip. enable it, in the ip box put your public ip, ie your internet ip, and remove all access to anything else, including disabling wifi, both 2.5 and 5g.
So now plug in 2nd router WAN to first routers WAN.
Go into 2nd router, and block the PRIVATE ip seen in 1st router, the ip the isp shows you, and NX=bogusdomain your isp's private dns
In your WAN page of 2nd router, set preferred dns.
Voila.
70-80% increase in response.
The hardware method to block dns hijacking
Ps any reboot of the first router will change its ip due to being lte, so remember to check 2nd router match's after any power outage...