setting up my own lowping service for mmos

hmmm found alt method to diy locally with also good yields going to try this out first.

http://209.85.229.132/search?q=cach...tup&cd=4&hl=en&ct=clnk&gl=za&client=firefox-a
Sure but ignore spelling mistakes grammer etc ;)

Stuff you will need.

feather-0.7.5.iso http://mymirrors.homelinux.org/linux/feather-linux/
vmware server http://www.vmware.com/download/server/
TcpView for windows http://www.microsoft.com/technet/sysinternals/Utilities/TcpView.mspx

Once vmware server is installed open it up and click local host->then ok
Then click file.
Then click new->virtual machine click next
choose typical ->next->linux->version->(drop down menu)other version 2.4xkernel->next

Choose a name for it and the place u want to store the virtual machine
click next->use bridge networking->next
i did 1gb for disk capacity (you can make it smaller )then click finish.

Once that is done click host then virtual network settings->click host virtual network mapping
for vMnet0 choose your network adaptor u connect to the net with then leave the rest as they are ->click ok.


In the inventory window in vmware server right click on the virtual machine click settings then click memory choose 128mb.
Then click cd-rom click use iso image and point that to the feather-0.7.5.iso you downloaded click ok.
Now time to boot feather linux right click on the virtual machine in the inventory and click power on.

It takes a few seconds for it to start up.
For the setup routine choose the 2nd option xfdev press enter.
For the mouse choose no to usb mouse then yes to the next option.
Test to make sure your internet connection is working on the vm machine right click on desktop apps->net->firefox.
Now to get the ip for your wow server log a character into wow (leave vmware open :) )
alt+tab to desktop and run tcpview.exe scroll down until u find wow and right click and copy the ip address.and paste it into notepad or something.

Then close wow.

Go back into vmware linux and open console (its on the desktop) and type in Yarre's fix. (the stuff in caps are not a typo ;))

sudo iptables -t nat -A PREROUTING -p tcp -d your.wow.server.ip.address --dport 3724 -j REDIRECT --to-ports 3724 press enter

sudo socat -d -d -d TCP4-LISTEN:3724,nodelay,fork,reuseaddr,su=nobody TCP4:your.wow.server.ip.address:3724,nodelay press enter

now hopefully that should be working now open up a new console window and type ifconfig now in eth0 look for your inet addr that is the ip address of the virtual machine.You will need that to route wow traffic to your vmware linux.

Now go back into windows click start menu click run type cmd then ok, Now time to route your wow traffic through your vm linux.

From Baalzaman post on page 2.

Replace wow.server.ip with your wow server ip and replace vm.machine.ip with the vm machine ip
route -p ADD wow.server.ip MASK 255.255.255.255 vm.machine.ip

input that into the cmd window

(if u want to connect to wow not using the vm linux u will have to delete that route just type route delete wow.server.ip)

Now log into wow and it should be routing wow traffic to your vmware linux box and you should be enjoying lower pings.

Credit goes to Yarre for this excellent fix and Baalzaman for the route add cmd Thank you :).

If u want to install feather linux to your hdd righ click on the vm linux desktop and choose enhancements and extra and
choose hd install->install hard to hard disk-safer option and follow the prompts.

After you have installed it to the vmware hdd you can open up sciTE and save the iptables,socat cmds to disk and then all you have to do is copy the iptables,socat cmds
into the console (middle mouse button to paste) when you want to run it. (There is probably an easier way to save and run it later i dont know much about linux)
[ Post edited by Horgan ]
 
another tut
OK i've done a little writeup in a private forum on how to get a linux virtual machine setup with socat etc. This ISN'T necessarily the best way to do it, i'm a linux noob so I stuck with whats familiar to me so hold those flames :P

**************************************************************************

I used Debian for no other reasons than thats the only distro I have any experience with and apt-get is rather handy :). Please don't flame me for my choice :P

I don't claim the way i've done it is the best/cleanest or most noob friendly way of doing it, but it worked for me. Your mileage may vary!

Please note to run VMware + wow on the same pc the pc needs to have plenty of grunt. I'm doing this on a core 2 duo with 2 GB ram. Doing this with less is not recommended.

Quick and dirty setup:

Preparation: Download the following -

http://cdimage.debian.org/debian-cd/4.0_r1/i386/iso-cd/debian-40r1-i386-netinst.iso - I prefer netinstall ISO's as they are a lot smaller than a full CD image
http://www.vmware.com/download/server/ - make sure you get a key!
Some sort of virtual cd mounting tool, I use http://www.daemon-tools.cc - Daemon-Tools but on writing this I see the site is down at the moment. Otherwise simply burn the ISO to a blank CD. Also be warned Daemon-Tools is bundled with some adware but you can opt out of the install of that software so no big drama.

1) Install VMware. Click "yes" when it moans about IIS. The VMware install is straightforward just rather lengthy (it seems to spend a while apparently doing very little). I left 'auto-run' enabled btw.

2) Make sure the Debian cd is in your CD drive or the ISO image is mounted via something like daemon-tools

3) Set up a new virtual machine. Give the virtual machine one processor, and allow it say 512 MB ram (I have 2 GB so plenty of room), and allocate 1 GB hard drive space (again got heaps so didn't care :P). With its networking select the top option (bridging). I most creatively named my virtual machine "Debian". :P. The machine type btw is linux 2.6

4) Boot the virtual machine, all going well it should detect the CD and auto run the Debian install

5) Go through the Debian install. It is self explanatory just make sure you read each page before mindlessly clicking yes :P

6) When you reach the part about the APT repository select the mirror closest to you (there is a couple in NZ).

7) When prompted for package selection I unchecked the desktop option and clicked continue (no need for a x windows system).

8) When asked about GRUB install say yes to installing on the MBR.

9) Soon after this the install will complete. you will need to eject or unmount the CD and click continue. The virtual machine will then reboot.

10) The new debian install will boot and you will soon reach a login prompt. Log in under your user account name that you gave during the install

11) Once logged in you will need superuser privileges to carry out the following steps so to gain that type at the command prompt su and press enter, then type the admin password you set during the install. Press enter.

12) Place the Debian install CD back in the CD drive (or re mount it if using a virtual drive)

14) Type the following: apt-get install iptables and allow the install to complete. This is probably unnecessary it should already be installed - this step is just making sure.

15) Type the following: apt-get install socat and allow the install to complete.

Note i'm skipping sudo because setting that up involves editing /etc/sudoers which will be beyond a noob :) (but if you really must, run the command visudo)

16) Type the following ifconfig and press enter. Note this screen is a bit complicated but what you are looking for is the virtual machines ip address. You are looking for a entry beside the Eth0 entry that will probably be something like 192.168.1.3 (for example). This will vary depending on your network setup. If anyone has an easier/noob friendly way of determining the ip address post it below!! Write down this address.

17) Refer to http://forums.worldofwarcraft.com/thread.html?topicId=2518019717&sid=1 for your wow servers IP address. For Blackrock its 12.129.225.21

18) Type the following iptables -t nat -A PREROUTING -p tcp -d your.wow.server.ip.address --dport 3724 -j REDIRECT --to-ports 3724

If you play on multiple servers then you can set up multiple iptables entries simply by substituting in the server ip addresses you need.

19) Type the following socat -d -d TCP4-LISTEN:3724,nodelay,fork,reuseaddr,su=nobody TCP4:your.wow.server.ip.address:3724,nodelay (note I removed 1 -d from Yarre's example to reduce the screen spam)
If you want to play of a different server you'll need to hit CTRL-C to kill the socat screen and re-enter the above command with the correct ip for the new server. There are better ways to do this of course but i'm going for noob friendly here :)

Your linux virtual machine is now ready to do its magic. You now need to set up your windows pc to send data to the linux virtual machine.

to do this you will need the ip address you wrote down earlier for your linux virtual machine (example 192.168.1.3)

20) Press START then RUN and type cmd and press enter

21) type the following:

Code:
route -p ADD your.wow.server.ip.address MASK 255.255.255.255 your.linux.virtual.machineip.address

so for example for Blackrock and using the virtual machine IP address of 192.168.1.3 the command would be:

route -p ADD 12.129.225.21 MASK 255.255.255.255 192.168.1.3

If you play on multiple servers you can add a route per server.

If the command is successful then you will be returned to the command prompt with no message. If you get a error please double check what you are typing in.

Now, fire up wow, and all going well you will be able to play on your server with a substantially lower ping!

Hopefully this all makes some sense.

Lots of credit to Yarre (for coming up with the idea) and Jax!!
 
Nice find there Necuno i think the only problem is getting a hold of the leading company and asking for the rights or permissions to setup a host server :rolleyes:
 
Nice find there Necuno i think the only problem is getting a hold of the leading company and asking for the rights or permissions to setup a host server :rolleyes:

why? afaik you know a hosting company that allows proxy servers on their servers at cheap rates without throttling.

im going to try the linux route tonight or tomorrow as well as to fine tune windows via the "window" (tcp stack, no not the ack as i understand) and then a remote server in uk/us to a realm.
 
why? afaik you know a hosting company that allows proxy servers on their servers at cheap rates without throttling.

im going to try the linux route tonight or tomorrow as well as to fine tune windows via the "window" (tcp stack, no not the ack as i understand) and then a remote server in uk/us to a realm.

no no hosting isnt an issue its creating that public server for people to play on where i know you have to get certain permissions or rights from either the distributers of the game or developing company :)
 
no no hosting isnt an issue its creating that public server for people to play on where i know you have to get certain permissions or rights from either the distributers of the game or developing company :)

im bit confused here the server will do the following:


1) a client connects to it with something like putty
2) server in turn accepts the connection and does a little routing via best possible path to the realm of the game in question.

x) it is not a host of the mmo as a realm
x) it is not a emulation of the game
x) it not a game server like saix
x) it is something like gamemax

how then do i need permission from a gaming company if the only thing i going to do is simple routing and a different implementation of the tcp stack ?

let me state it again, it is a DYI locally or remote of something like www.gamemax.org, it is no hosting of any of the binaries of the game and in its simplest form a reroute of traffic which your router and os already does.

it seems that you are confusing it with something like a pirated or legit realm of a mmo.
 
Last edited:
<--- ish downloading feather (should call it winston edition actually if it can beat telkom normally :p) will let u know if i das getting it working
 
god i cant get it to work lol; you will need port 7777 (auth) and 2106 (game)

server range guess for gorgos 206.127.147.0/24 or and not sure 206.127.156.0/24 (auth???)
feather linux directly to network, NAT not working for me. maybe it is ??

ex
sudo iptables -t nat -A PREROUTING -p tcp -d 206.127.156.0/24 --dport 7777 -j REDIRECT --to-ports 7777
sudo iptables -t nat -A PREROUTING -p tcp -d 206.127.147.0/24 --dport 2106 -j REDIRECT --to-ports 2106

(2 separate windows)
socat -d -d -dTCP4-LISTEN:7777,nodelay,fork,reuseaddr,su=nobody TCP4:206.127.156.0/24:7777,nodelay

socat -d -d -dTCP4-LISTEN:2106,nodelay,fork,reuseaddr,su=nobody TCP4:206.127.147.0/24:2106 ,nodelay

then in windows's cmd (10.10.10.5 is the vm's ip)
route add 206.127.147.0/24 mask 255.255.255.255 10.10.10.5
route add 206.127.156.0/24 mask 255.255.255.255 10.10.10.5

/wish i knew more bout linux
/going to try other distro
 
Last edited:
i wonder if there isn't another way around this like setting up a proxy in the linux box and have all its connections "tuned", windows client connects to that...
 
ok might take a while got into a prob, for some reason its giving my virtual card a 5. something address when its set to bridge mode
 
206.127.156.166:7777 - auth

gorgos: (first two i have)
206.127.156.175:10241 - game
206.127.147.28:2106 -???/game
 
got it working using exactly these three:
206.127.156.166:7777 - auth

gorgos: (first two i have)
206.127.156.175:10241 - game
206.127.147.28:2106 -???/game

Code:
sudo iptables -t nat -A PREROUTING -p tcp -d 206.127.156.166 --dport 7777 -j REDIRECT --to-ports 7777

sudo iptables -t nat -A PREROUTING -p tcp -d 206.127.156.175 --dport 10241 -j REDIRECT --to-ports 10241

sudo iptables -t nat -A PREROUTING -p tcp -d 206.127.147.28 --dport 2106 -j REDIRECT --to-ports 2106

3 different windows

sudo socat -d -d -d TCP4-LISTEN:10241,nodelay,fork,reuseaddr,su=nobody TCP4:206.127.156.175:10241,nodelay

sudo socat -d -d -d TCP4-LISTEN:7777,nodelay,fork,reuseaddr,su=nobody TCP4:206.127.156.166:7777,nodelay

sudo socat -d -d -d TCP4-LISTEN:2106,nodelay,fork,reuseaddr,su=nobody TCP4:206.127.147.28:2106,nodelay

and windows (non permanent till i figure it out, otherwise you would have used a -p at end)
Code:
route add 206.127.156.166 mask 255.255.255.255 10.10.10.6

route add 206.127.156.175 mask 255.255.255.255 10.10.10.6

route add 206.127.147.28 mask 255.255.255.255 10.10.10.6

my question then is can't i just use a range instead of a set ip what if the server uses multiple ips like GW did between different places ?
 
Last edited:
getting around 659 ms on shaped is.

same about for unshaped. sigh this damned US servers...
 
Last edited:
Back
Top