How to run EverQuest behind a restricted firewall.

Requirements:
A friend or the like with direct connection to the internet. (Either unfirewalled or able to port forward.)
Basic networking skills for forwarding ports or opening firewall on friends computer.
 

Ok, this program actually works, not like http-tunnel or socks2http which does not give you full UDP Support..

You will need some programs before we get started:

Java runtime Environment:
This allows you to run java on your computer.

http://java.sun.com/j2se/1.5.0/download.jsp
(Download J2SE 5.0 JRE)

ProxyCap:
Some people may have Permeo Security Driver or Sockscap32, but I was unable to get this working with those programs so please download this before you ask me for help.
This program is for forwarding the different TCP and UDP ports to the tunnel software.

http://proxylabs.netwu.com/download.html
(Download pcap201.msi)

Cubehub Tunnel:
This is the actual tunnel software.
Now there are 2 versions of the tunneling software, 1 that has debugging and 1 that does not, the one with debugging can have 20ms higher latency or so .. but I suggest that you start with that and switch to the other version when it's all working.

Download binary tunnel.jar
Download optimised log-free tunnel.jar

Setting it all up

Setting up the server on friends computer:
We are going to run this program as a simple console first, until we know it is all working.
Create a folder on a harddisk to put tunnel.jar into.
Im going to put it in c:\tunnel in this toturial.
Now install the Java runtime environment if you havn't already.

Do start - run - and write "cmd"
In the command prompt window do:

Now to check if you actually did install java correctly type in: Java -version

It should spit out the java version etc..
If it doesn't then you havn't installed java correctly and you should try and reinstall.

Ok now to start the tunnel.

Write

java -jar tunnel.jar --server -t 0.0.0.0:80

The last number after the : is the port, it can be any port you know is open behind the clients restrictive firewall .. like smtp: 25 or pop3: 110 or secure http: 443
Port 80 is usually always open because thats the port you use to surf the www with.

After writing this command you should get:



This was with the debugging tunnel.rar with the optimized version you would not get any output whatsoever.. so you would have no idea if it's working or not.

Now you need to forward port 80 or open it in the firewall on your friends computer.
This is hard to explain since there are so many different options, different firewalls different routers etc.. so if you have questions regarding this issue please write a comment and I will try to reply.

Ok you are done with the server.

Setting up the client on your own computer:

Ok you need to install the Java Runtime Environment if you havn't done so already.
After that you do the same as the server did .. create a folder and put tunnel.jar into it.

now you run cmd again (Start - Run - "cmd")

Do as on the server again get to C:\tunnel and write java -version
Check if it outputs the version if not you havn't installed java correctly.
Ok the command for the client is:

java -jar tunnel.jar -t FriendsServerIp:port -s 0.0.0.0:1080 -n 10


FriendsServerIp needs to be replaced by whatever IP your friend has, and port by whatever port you decided to use.
-s 0.0.0.0:1080 means it will listen on that port for local socks connections, if you don't know what this is for leave it be.
-n 10 means it will open up 10 connections, this can be experimented with, the developer of the tunnel said that 25 is optimal for Quake3 so 10 or maybe less is probably good for EQ.

Now you should get a whole lot of stuff spamming down your screen.

The tunnel is now set up.

Now you need to set up ProxyCap

1) Install proxycap and add the Socks5 server that you will create with the
tunnel client to the list of proxy's in proxycap. Select Remote DNS option and proxy UDP
(ignore warning or error regarding this when closing the window).



2) Click on the rules option on the left and add the following applications
to proxycap. Click on the new button and select specific application in the
window that shows up. Browse for EverQuest.exe in your EverQuest folder and open
that. Set the socks server from the proxy list as its assigned proxy.
Do the same for eqgame.exe which is also located in your EverQuest folder.



Running EverQuest

Yes this is it .. you are going to run EverQuest !!!

The patching can be slow to connect sometimes, but it will ..
If you can't seem to get patching to run make a shortcut to eqgame.exe with patchme at the end like this:



Sorry for the danish, but I didn't have a english OS handy at the time of writing this article.

I hope you get it working, I have spent many tireless nights trying to find a tunnel that worked, and finally did.

When you are sure your tunnel is working you can of course use the optimized .jar file instead on the server and client, and probably get a little better latency..

- Contact author (Alex Rodenberg)