Thank you all for your replies so far. I’m looking forward to getting to the bottom of this!
Just to clarify, it is not 100% sure yet that the cellular connection stays active properly, just that it seems that traffic routing through ZT is dropping, whereas data going outside of ZT seems to stay alive. Also modem statistics keep showing a proper connection type and strenght, hence the suspection of ZT that I am trying to confirm/rule out.
So what I want to do to achieve this, is have the client (not a phone, but Linux computer), ping a zerotier address on a stable wired network, as well as some fixed ip (for example googles DNS server 8.8.8.8). At the same time I want to have another ZT node on a stable (different) wired network to also do the same. If the zerotier ping from the vehicle is getting high pings, while the Google DNS server pings are remaining low, it would point to ZT. If the DNS server pings are also high, it is more likely something in the connection itself.
@zt-travis
Not sure about the original poster’s issue. It depends on the carrier and region. This would be very hard to reproduce and try to improve. Is the phone getting new IP addresses frequently?
So far we’ve observed it regularly, so I want to do more tests. I will also try to figure out if the vehicle gets new ip addresses or not. That’s a good one, since it was just a hypothesis so far.
Try having your other device, the stationary one, ping
the mobile device.
This is exactly what I did, a fixed 3rd party computer on wired network, pinging both the static 4G device as the moving 4G/3G device. Here is where I observed the low ping for static, and very high-dropping ping for the moving one (~80km/h)
@timmmy
This might not be valid for all carriers/countries, but in my experience (in Europe), a mobile device should not switch IP when it switches towers. (At least not as long as it stays connected).
The current situation is in The Netherlands, but it has to work worldwide. I will however try to confirm if it changes IP or not.
The pings I mentioned are through the ZT network, as that is how the traffic that is dropping out is routed. As described above I want to also ping a fixed public IP address (8.8.8.8) from the moving vehicle, to compare.
Are you on IPv4/6?
“Physical IP” in my.zerotier shows a IPv4, but that I will also check and confirm.
Just a note: be aware that carriers tend to use CGNAT which might impact ping on the public IP addresses.
Yes, I’m aware that a ping might not be the most representative test, if you have another idea on how to diagnose this please let me know 
@HorizonsCT
I am testing a script that pings a known ZT address and if that address doesn’t respond for 15 seconds, it’ll restart the ZeroTier service. This can cut down reconnect times by up to 80% (ymmv)
Sounds like a workaround to try, but not really workable. To be honest, for our application 15s is already quite long. Obviously the timeout can be lowered, but it would be quite a hack to restart the service so often.