December 22, 2021 at 10:10 am #12001
Yes, Keepalive packets were sent through the SOCKS proxy, and it caused some problems. Please test the build below:
Normally, Handshakes are sent every two minutes, while Keepalive packets are sent if no other packets were sent after PersistentKeepalive interval.December 22, 2021 at 10:42 am #12002
I’ve tested it but unfortunately only first handshake sent and response received, the config has only one app to route in allowedapps and it is not running during test, so the expected behavior is that a keep-alive packet sent every 25 secs but there is nothing sent other than first handshake.
I’ve also tested it with firefox it works fine until I stop using firefox for about 30 sec then the connection dropped by ISP router (I think) and no keepalive packets are sent during this idle time.
Here are PCAP files: https://easyupload.io/rb00q9December 22, 2021 at 11:05 am #12003
I’ve looked through the capture logs. The problem is not in keepalive packet. After some timeout, connection to SOCKS proxy is broken (probably ISP NAT removes by timeout) and handshakes can’t reach the destination.
The build below attempts to refresh SOCKS proxy connection after fist non-responded handshake.December 22, 2021 at 11:33 am #12004
I’m afraid that the client only attempts to send only the first handshake and no more handshakes after that, the issue is still present unfortunately.
PCAP/log files: https://upload1.easyupload.io/2sz5coDecember 22, 2021 at 12:03 pm #12005
Logs are not representative, capture file for the tunnel is empty. Besides this, you could intersect with my tests stopping SOCKS proxy to simulate SOCKS server failure. Below is a slightly updated build, please give it a try. Also, please note that while you are not sending anything over the tunnel boringtun seems to sleep (I can’t see it generating any traffic), but when you start the tunneled application it immediately initiates the handshake and starts tunneling. So, after a pause, try to run something which is supposed to be tunneled.December 22, 2021 at 8:44 pm #12006
It works really good, thank you so much for your work.
I tried tunneling MSEdge and worked just fine then waited for couple of min and it still works, even when tunneled app is not running it seems to do just fine and continue working after starting the app.
PCAP files: https://upload1.easyupload.io/o3lf49December 22, 2021 at 8:46 pm #12007
Sorry, I can’t post for hours as it says my ip belongs to spam network!!
Another PCAP files: https://upload1.easyupload.io/a4vsj6December 22, 2021 at 9:01 pm #12008
Thank you for testing and feedback. I will devote some time to review the changes and create the final build. Maybe I will also add one SOCKS5 authorization method for the consistency. As soon as it is ready, I would appreciate if you give it a try in your environment. If you find out any issues with the current version, then please let me know. Please don’t hesitate to e-mail me directly at vadim(at)ntkernel.com.December 23, 2021 at 1:16 am #12009
I’ve done more testing with MSEdge, it works fine then I left my computer for about 15 min and when I came back no more websites load (dns address couldn’t be found).
I don’t know if connection dropped by ISP router again, I could test it again with persistentKeepalive=20 for example rather than 25.
PCAP files: https://easyupload.io/dp2r8qDecember 23, 2021 at 4:30 am #12010
I’ve tested it again but with persistentKeepalive=20 and it has been more than 3 hours, tunnel and websites work fine, so I guess it dropped connection and couldn’t get it up again last time.
- You must be logged in to reply to this topic.