Need EXE, will run on Win7, 8, 10 - because need TCP stacks of these systems, all sorts of Linux does not suit this solution.
1. We put on the virtual machine a modem 3G huavei.
2. Run the EXE, EXE connects to the server, the server sees N modems and their status.
3. With third-party software (for example, in the browser we make the SOCKS 5 setting) we prescribe the IP of this server and the port through which the external IP of this modem with the TCP stack of the Windows on which the EXE is launched will be issued.
4. API support is needed so that third-party software in PHP or another language can manage these modems: reconnect connections to change IP, turn off connections, see how many are online, on which systems are running.
5. If we need to reconnect the modem, then the server will need to send something in the form of an API command, the controller sends a command to the EXE file and the modem must perform the action, disconnect the connection and connect again after N seconds, report that it is ready to work.
In what language the EXE will be written - it does not matter, to use the RAS API to work with the modem, exclude any bats and other crutches at once.
All proxies must be on SOCKS 5.