Just in case anyone would also run into this:
I've contacted IT, they contacted a support representative, they contacted CheckPoint R&D.
I've demonstrated the issue during a live session and provided a script to reproduce the issue.
Here's their reply:
After reviewing the issue with R&D, we have a better understanding of the behavior observed during the VPN connection.
When the VPN reconnects, the client installs the required network routes and synchronizes the Windows Firewall configuration. These operations are performed synchronously during the connection process. As the number of IP addresses configured on the system increases, this process takes longer because part of the route installation checks every route against every available IP address.
In this environment, the additional virtual network adapter significantly increased the number of IP addresses on the system. Once the processing time exceeded the internal timeout, the VPN service watchdog assumed the service was no longer responding and automatically restarted it while the route installation was still in progress.
After the service restarted, it attempted to roll back the partially installed routes. However, the rollback process is designed to stop if it encounters an unexpected condition, such as a route or interface that has already been removed. As a result, the rollback could not complete successfully, leaving some routes in the Windows routing table.
Based on R&D's analysis, this is considered a product limitation rather than a software defect. The current implementation was not designed to handle environments with such a large number of IP addresses on an additional network adapter or to recover gracefully if the service restarts during the route installation process. Since this type of environment is uncommon, this limitation had not previously been encountered.
Please let us know if you have any questions.
I've also asked:
Well, personally, I really doubt that a timeout could be the root cause - the issue is way too reproducible (100% works with exactly 136 IPs in the system, and 100% fails with 137 IPs in the system).
And they replied:
I understand your point. However, based on R&D's analysis, there is no fixed limit in the client code for the number of IP addresses. Although the issue consistently appeared at around 136–137 IP addresses during our testing, this is not a hard-coded threshold. It simply reflects the point where the route installation and firewall synchronization took long enough for the VPN service watchdog to consider the process unresponsive and restart the service. Depending on the environment, this number could be different
Personally, I still doubt that this could be a "timeout". Even if there's no explicit hardcoded limit, there could be an implicit one.
TLDR: they acknowledged that the issue/limitation exists. They are not going to fix it.