We currently use network interface information to derive a unique machine ID (ClusterNodeInfo.getMachineId()). Among the 6-byte addresses, we use the "smallest".
At least on Windows machines, connecting through a VPN inserts a new low machineID into the list, causing the machineID to vary depending on whether the VPN is connected or not.
I don't see a clean way to filter these addresses. We could inspect the names of the interfaces and treat those containing "VPN" or "Virtual" to be less relevant. Of course that would be an ugly hack, but it would fix the problem for now.