How I fixed my Starcraft lag.
(If this is posted in the wrong section, please move it to the correct place)
DISCLAIMER:
This is simply my version of how I fixed my lag.
I am not responsible if you somehow manage to fuck up your internet or break your router/computer.
FOLLOW THIS GUIDE AT YOUR OWN DISCRETION
Why this guide?
I know how incredibly frustrating and time consuming this problem is. So I decided to give everyone who has this problem, my take on how I fixed it. After spending evenings, nights and weekends on this problem, i was literally in tears when I finally solved it. I hope this guide can help some of you out there.
The situation :
I'm on a network with about 5-6 other people, behind a router. Some of our connections are wireless, some are not. Mine is wired.
We only have 1 external(WAN) IP, which leads to the router having to split the incoming/outgoing data-stream through NAT(Network Address Translation).
This means that every computer connected to the router on the network has an IP in the form of :
10.0.0.x (x being a distinct number between 2-255, with 1 being my router ip).
The problem :
Totally unplayable lag when playing in a game with more than 2 players(me + opponent).
The symptoms :
2 green bars on any player beside the host(if you're joining a game)
In any game that you do join until start, the countdown will stop at 0, and freeze for 4-5 seconds before moving on to the next screen.
This was a problem ONLY occurring in Starcraft.
The solution:
Wow... where to begin?
I could probably write a whole book on how to become a master of Google-fu, and how I approached the problem from 100 different angles(which would probably be an interesting read by itself), but instead I'll just write down the recipe of the steps I belive helped solve the problem.(I say belive, because i tried so many things I'm not 100% sure which ones are essential and which ones that are redundant).
If you don't understand some of these steps, use Google, or simply ask.
TO ACCESS YOUR ROUTER CONFIGURATION TYPE IN YOUR ROUTER IP IN YOUR BROWSER. COMMON ROUTER IP'S ARE :
192.168.0.1 | 192.168.1.1 | 192.168.2.1 | 10.0.0.1
MY SYSTEM IS RUNNING WINDOWS XP PROFESSIONAL SP 2. MY GUIDE WILL REFLECT THAT. MY ROUTER IS A SPEEDTOUCH 585i v6 FROM ALCATEL/THOMSON
Ok here goes :
1: Disable any firewall you have installed on your computer and router, to make sure it doesn't interfere with anything. After you are have fixed the lag or you are finished with a session, you can turn them on again.(With ports forwarded)
2 : Set a static IP for yourself, and make sure that other on your network don't get assigned the same IP as you(by giving them static IP's as well or by other means). REMEMBER THAT YOUR DNS SHOULD NOT BE THE SAME AS YOUR DEFAULT GATEWAY.
Here's a guide :
http://portforward.com/networking/staticip.htm3: Your router should support UPNP, turn it ON.
Guide by ruXxar @
www.teamliquid.net4: Configure your router to forward port 6112 TCP AND UDP to your computer. 1 PORT CAN ONLY BE FORWARDED TO 1 IP ADRESS(computer) AT A TIME. Normally your router prevents you from doing this.
I also forwarded ports : 4000 TCP/UDP and ports 6113-6119 TCP/UDP(for other blizzard games)
Here's a guide :
http://www.portforward.com/english/routers/port_forwarding/routerindex.htm5: Go into services.msc by going : start->run->services.msc
These are the services I set:
Application layer gateway : Deactivated.
Universal Plug and Play Host Device : Automatic
Windows Firewall / Internet Connection Sharing (ICS) : Automatic
TCP/IP NetBIOS Helper : Automatic
SSDP Discovery Service : Automatic
6 : Go to your network connections : start->control panel->network connections.
Right click the module that connects to the internet and select properties.
Where it says «These elements are in use» I unchecked all but the Internet protocol(TCP/IP)
Click ok to save your settings.
7: Right click -> properties again.
This time click on «Internetprotocol(TCP/IP)» and select click properties.
Click advanced.
Click on the WINS tab.
Make sure that «Activate LMHOSTS» and «Activate NetBIOS over TCP/IP» are checked.
Click ok to save your settings.
8: Right click -> properties.
This time click the button «Configure» next to the name of your ethernet card.
My ethernet card is a standard on-board card that came with my motherboard.
Realtek RTL8168/8111 PCI-E Gigabit Ethernet NIC
The features I'm discussing here may not be available on your card, or they may have different names.
Go to the Advanced tab.
This is what each of my setting are set to :
-802.1Q/1p VLAN Tagging : Disable
-Flow Control : Enable
-Jumbo Frame : Disable
-Link Speed/Duplex Mode : 100Mbs/Full Duplex(always select Full Duplex if you pick another -speed)
-Network address : INSERT YOUR ROUTER IP HERE(The same IP you used to get into the web GUI). Mine is 10.0.0.1
-Offload Checksum : Tx/Rx Checksum
-Offload TCP_LargeSend : Enable
-Wake On-Lan After Shutdown : Enable
9: EDIT : CRUCIAL STEP
You may have have noticed that in your network connections there has appeared a new thing called «Gateway»-something. Right click on it and select properties. In the window that pops up select configuration. You will here have the ability to open ports. Make a new thing there called Starcraft(or whatever), type in your lan IP(your static IP) Select UDP, and type in 6112 in the 2 bottom left slots. Click ok and exit.
If it has NOT appeared, right click on your lan and disconnect. then rightclick again and select connect.
Sometimes after fixing my lag i have the problem reappear again. What has happened is that the router has somehow deleted the open ports i entered in step 9, and I therefore have to redo the procedure.
NOW RESTART YOUR SYSTEM(AND POSSIBLY YOUR ROUTER TOO, THROUGH THE ROUTER SETUP PAGE).
REMEMBER THAT WHEN YOU TURN ON YOUR FIREWALLS AGAIN, YOU NEED TO ALLOW PORT 6112 UDP