First of all - sorry if it's something well-known amongst testers, I'm not a tester at all but for now I must perform some kind of tests.
We have a distributed software layer distributed across different regions. Thus, we have to test how it works on different IPs (countries), and to check how it returns cookies and even images (just a country flag).
We don't need headless solutions such as phantomjs - in fact, that's just a simple thing and it's enough to test it manually (in other words - nobody gave us resources for writing normal tests).
We can use proxies to emulate different IPs.
How to run multiple browsers on a single machine? Each browser must be isolated from the others - that means, no shared cookies, cache, passwords or anything else. Also, at the same time, each browser must have unique proxy settings.
Firefox, Chrome, Opera or anything else - doesn't matter.
This should be executed on a linux OS (Ubuntu or Debian preferable).
P.S. Multiple virtual machines seem to be an overkill in this situation.