Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have two machines: Windows and Linux.

The Windows machine should make raw socket requests (send TCP/IP packets) to the internet through the Linux machine. It is not limited to HTTP.

The Linux machine has a lot of IP addresses. Each session from Windows machine should be performed with a single Linux's IP. But different sessions should be distributed among IPs.

I'm new to Linux and don't know how to implement such a proxy there.

Please give me some advises to start with.

share|improve this question

migrated from Nov 6 '09 at 18:27

This question came from our site for professional and enthusiast programmers.

Please edit your post to explain what you're trying to accomplish. – Ex Umbris Nov 6 '09 at 18:09
Sounds more like a gateway/router than a proxy to me, something you'd solve with simple iptables IP-masquerading rules rather than by programming anything. – bobince Nov 6 '09 at 18:10

Sounds like you want the Linux machine to be a firewall running NAT. I'm not sure why you need the Linux machine to have multiple IPs on the side facing the internal Windows system.

share|improve this answer

I suggest link below should be useful in this situation. I'm not sure you clearly understand what you really need.

An Advanced 4.4BSD Interprocess Communication Tutorial

As I see you're trying to get some proxy functionality for windows machine. Do you really need RAW sockets? What protocols do you really need to proxy? Why to use several IP interfaces on linux machine?

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.