I have 2 servers from 2 different companies

The first server is a VPS where i host my websites (lets say it has IP The second server is a Minecraft server (lets say it has IP

On my VPS i have a domain and subdomain for the minecraft website (lets say its mc.example.com)

If you would go to mc.example.com on your browser, you would end up on and on the website.

What I'm trying to do is, from Minecraft when you go to mc.example.com, you would end up on

So for example:

mc.example.com:80       ->
mc.example.com:25565    ->

Now, my network interfaces are as follows I have two IPs on my VPS, the main one is venet0:0 (

This are the network interfaces

auto lo
iface lo inet loopback
        up ip route replace dev lo

# Auto generated venet0 interfaces
auto venet0
iface venet0 inet static
        up route add -net netmask dev venet0
        up route add default gw

auto venet0:0
iface venet0:0 inet static

auto venet0:1
iface venet0:1 inet static

Can someone please tell me what commands i would need to write in iptables in order to proxy that minecraft server from my VPS?

Thank you!


I would simply point mc.example.com to, otherwise you pay triple for all the minecraft traffic: incoming to, outgoing from and incoming to On I would set up a simple webserver that only sends redirects to something like mc-web.example.com, which would live on

And unless the network at both companies is set up in a fairly relaxed (broken) way, you will have to do SNAT to avoid asymettric routing. Thus any possible iptables solution also loses all accountability information: all traffic from comes from and know nothing about the real source of the traffic.

That said, this should do the trick:

iptables -t nat -A PREROUTING -d --dport 25565 -j DNAT --to
iptables -t nat -A POSTROUTING -d --dport 25565 -s '!' -j SNAT --to-source

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.