I need to transfer massive amounts of data to my server from different client systems around the world as fast as possible. My organisation has two redundant lines from different service providers (150 Mbps + 150 Mbps) which are not used at night. They are mapped to different public IP addresses. I have been given permission to use both lines in parallel to get the maximum possible throughput.
How do I configure the network settings (on my server) for a 2nd parallel connection? (I'm on CentOS). I'm using a java based file transfer tool (fdt) that transfers data over sockets.
The client (uploading the data) will run this tool on their system by specifying a public IP address (corresponding to Provider 1 or 2). This public IP is mapped to a private IP address on my server (by our company firewall/router). This works well. However, I now want the client to run two instances of the tool - one for each provider (thereby doubling the transfer bandwidth). We have two public IP addresses (one corresponding to each provider). So on my side (on the CentOS server), I have created another private IP address, and asked our IT team to map the 2nd public IP to that.
There will be two fdt instances running in server-mode on my server. I need each one to receive data from the respective client instances
I tried adding the 2nd IP address as an alias, with netmask = 255.255.255.255 but unable to ping it. What is the right way to achieve this.
Since you're using NAT (as far from I understood from your scheme along with explanations), you need to set up policy-based routing on the company firewall, so the replies to requests from the outer world coming to two different public IPs on the router will be answered through the respective channel. Details of setting up the PBR depends on the vendor/model of the company firewall device.
This solution, however, is only applicable when someone is initiating the transfer to your server - this way he will be able to initiate two transfers using two different public destination IPs. When your server is downloading something from the outer world, it needs to have tow sets of FIBs (routing tables instances) too (while still having working set of PBR rules), so it can use different default gateways. The detail level of yoyr scheme doesn't allow to provide more in-depth instruction, or even more scoped google search pattern.