Insurgency

Insurgency

Not enough ratings
Insurgency Dedicated Server Guide for 2025 THE CURRENT YEAR
By HATE AGENT
Insurgency Dedicated Server Guide for 2025
Comprehensive Crash Course without the Cargo Cult
   
Award
Favorite
Favorited
Unfavorite
GOTTA GO FAST EDITION


Detailed Edition follows this section.

SERVER PORT == HOST PORT
HOSTPORT (27015) UDP IN - Port Forward on Gateway/Router
HOSTPORT (27015) UDP IN & OUT - Open Firewall Port on Server Device

Port 27015 UDP is the default HOSTPORT but you MUST change it to 27016 UDP or higher if you have clients on the same local network or you will get socket conflicts. Both LAN and Online play require it. Lower ports (e.g. 27014) make the server invisible to LAN clients.

HOSTPORT UDP OUT should not actually require a rule, but it might. It is possible to have a working server that is publicly listed with only the single hostport opened and forwarded.

Insurgency Dedicated Server Dependencies
Windows - Microsoft Visual C++ 2010 and 2013 Redistributables
Linux - Depends on distribution, usually lib32gcc1, maybe more.
OSX - I dunno lol

Core files to create:
Startup script - e.g. startup.bat in Windows, startup.sh in Linux/OSX
Server config file - server.cfg in \Insurgency Dedicated Server\insurgency\cfg\ (A server.cfg.example file is already located there).

Dedicated Server installs automatically include ALL executables (Windows, OSX, Linux) so it is theoretically portable.

Full List of Ports
  • HOSTPORT 27015 UDP IN/OUT (change with launch parameter -port or CVAR +hostport)
  • RCON 27015 TCP IN (Probably Out too, linked to hostport)
  • CLIENTPORT 27005 UDP IN/OUT? (change with parameter -clientport or CVAR +clientport but may be deprecated and changes with serverport per Valve Developer Wiki)
  • Steam Service/VAC 26900/26901 UDP OUT? (Deprecated?)
  • Steam HLTV 27020 UDP OUT? (Deprecated?)


HIS MOTHER???

For each additional server you run, increase the hostport number (27017 and further).

It's possible to run the server with only the hostport open so:

¯\_(ツ)_/¯
Introduction
1. IP address - This is equivalent to a street address for each computer. There Public IP addresses and Private IP addresses. A Public IP is for the Internet, a Private IP is for Local Area Networks aka Intranet. Public IPs are important, Private IPs are made up and don't matter unless you're responsible for configuring your home network. Public IPs are handed out by Very Important People (usually some jerk) while Private IPs are given to you by your home Gateway (doofus). Modem + Router = Gateway, basically.

There are two kinds of IP address in common use: IPv4 and IPv6.
An IPv4 address is the most important and will usually come in the format of 0.0.0.0 up to 255.255.255.255. Most of these aren't used because they decided the rules for this in the 1970s and 80s, a time of many spectacular bad decisions such as disco, leaving the gold standard and "diversity."

Assigning a Public IP address is a Big Deal and you can look it up if you want to know more.
Some examples: 8.8.8.8 is a Public IP and Google's Domain Name Server and hasn't changed in over twenty years. 192.168.1.1 is a Private IP probably for your home internet gateway. There are a large number of Private IP addresses so feel free to get crazy with them and nobody will ever know. Nobody. 111.111.111.111 looks funny. Anyway, IPv6 is for nerds who created it so your washing machine can spy on you while newly online third world internet scammers abuse Google Voice and tell you to check out Windows Event Viewer so you'll send them prepaid Gift Card. Look, just don't worry about it.

Hard mode: Try not to think about the absolute state of current technology and the dystopian future that awaits.



You want to find out your own Public IP, which will ordinarily be given to your home Gateway by your Internet Service Provider (ISP). If your ISP doesn't give you a Public IP, then you won't be able to host a server. Some ISPs have something called "Carrier Grade NAT" where they are too cheap to reserve real IPs and instead give you a fake Private IP and you access the internet through routing rules like a sucker. Dealing with that is outside the scope of this guide because I can't be bothered.

2. Port - This is a door to the building if your IP address is the street address and your computer is the building. Your computer has 65,536 doors with IPv4 (numbered 0-65,535). Each port will be single-tasked to a specific program, so you could theoretically have 65,536 different programs communicating online on a single IP before you would need another IP. This is not how IPs or Ports are actually used but it's important that you know how it could work if it had been done properly.

3. Socket - This is the combination of an IP address with a Port ex: 55.55.55.55:27015

4. Firewall - Software that locks/unlocks Ports on devices.

5. Port Forwarding - Your Gateway translating your Public IP and Port (Socket) into a Private Socket so the packets are sent to the right device. e.g. 136.36.16.0:27016 to 192.168.1.2:27016 You can do Fancy Things with routing tables like port mapping but if you have time for that then you have time to go look it up yourself.

6. Protocol - How the packets are formed for sending data. UDP and TCP are the main protocols but there are many others. UDP sprays packets constantly while TCP is more careful about making sure packets are received and in the right order. UDP is effectively faster and frequently used for game data transmission.

You now know enough strange terminology to frighten and confuse the old and disabled. Use this power wisely.
Firewall and Port Forwarding
There are two steps that are essential to making your server available over the internet:
1. Opening the firewall ports on your server device.
2. Port forwarding the correct port on your Gateway (router) to your device. (This should simultaneously open the Gateway firewall as well, but maybe it won't. Who knows and your router documentation probably won't tell you.)

It's theoretically possible that both of these steps can happen automatically when you just run the server. This would be A-B where
A - Firewall rules get automatically created (Windows can do this if you allow ALL traffic for srcds.exe or srcds_x64.exe)
B - Universal Plug n Play (UPnP) works for port mapping somehow (it almost never does and it is a meme)
If you have ever had success with any manufacturer's Gateway UPnP actually working post a comment below this guide with photographic evidence.

The firewall port at minimum is 27015 UDP Inbound, this rule is fine for a remote server that is located in a data center or your summer beach house, but it will conflict with any clients on its local network. Change the server port (and firewall rule) to 27016 or higher to prevent this. How you actually change this port comes later, but note it now. You can choose port 27014 and it works with the online server listings, but the server will not show up as a LAN server on this port.

The minimum port forwarding is also 27015 UDP Inbound, but again, change it for the correct server port. Figuring out Port forwarding will often depend on the router and how badly the Chinese manufacturer mangled the settings and translation. If in doubt, leave fields blank and try it. If it doesn't work hope you can find a solution somewhere.
Some common issues
- Make sure you're on the actual Port Forwarding tab and not somewhere else in the router configuration menus that has a confusingly similar name.
- If there's a WAN IP field, leave it blank
- If there's a port range required, you should be able to make the Start and End Ports the same e.g. 27016-27016 for a single port

Additional ports.
Steam VAC - 26900 (Outbound? UDP?)
Steam Client Port - 27005 (Outbound? UDP?)
Server Port - 27015 UDP Inbound (outbound also but should not require a new rule)
RCON Port - 27015 TCP Inbound (outbound also but should not require a new rule)
SourceTV transmission - 27020 UDP Outbound

You can just open and forward all the ports from 26900-27020 but there may be cases where you want finer control and less is more anyway.
Downloading the Dedicated Server Software
Client - Accessing a server (Game Client, Steam Client)
Server - Serving a Client (Game Server, Steam Server)
Clever, or pedantic?



Download the software with the Steam Client or SteamCMD.

The Steam Client function is simplest, Insurgency Dedicated Server is located in Tools, right click, download.

Once it has downloaded, if you are running Windows you MUST copy the folder to a different location anywhere but the Steam Client directory, and you must not run the Steam Client until the server has run first and is successfully idling. The Steam Client will detect the dedicated server as the Game Client (main game) and will consider Insurgency to be "running" and you won't be able to launch the Game Client. This may also occur with certain Linux distributions.

SteamCMD instructions
https://developer.valvesoftware.com/wiki/SteamCMD

Once you have SteamCMD and you are running it, it has a command prompt:
1. Command: "force_install_dir PATH" - chooses to install in a different directory than the default inside of the SteamCMD directory. Skip if you want.
2. Command : "login anonymous" - logs you into the Steam service anonymously
3. Command: "app_update 237410 validate" - Downloads and Validates Insurgency Dedicated Server. Wait for it to finish and that's it.
4. Command "exit" - quits SteamCMD
Dependencies and First Config
Once you have the server files, you're not finished.
You need more files - dependencies.

Windows
Install Visual C++ 2010 Redistributable (x86 AND x64)
https://www.microsoft.com/en-us/download/details.aspx?id=26999
Install Visual C++ 2013 Redistributable (x86 AND x64)
https://www.microsoft.com/en-us/download/details.aspx?id=40784

The 2013 Redistributable was not listed in any guides currently available, which was one of the major headaches that led to the creation of this guide in the first place.

Linux
Not comprehensive but these are possible dependencies. Start from the top and work your way down.
  • lib32gcc1
  • lib32ncurses5
  • lib32z1
  • lib32gomp1
  • lib32quadmath0
  • lib32stdc++6
  • lib32tinfo5
  • libc6-dev-i386

OSX
?????? - You tell me.

Once you have the dependencies installed, you're ready for first config
You can try to run the executable on its own but you won't get a functioning server out of it, to get something usable you need

1. Command line options (-parameters and +CVARs) in a startup script (.bat in Windows, .sh in Linux). You could use a "shortcut" as well with launch options instead of a script.
https://developer.valvesoftware.com/wiki/Command_line_options#Source_Dedicated_Server
Some -parameters and +CVARs are duplicated, some CVARs can be moved into server.cfg, and others should be moved further down to game mode .cfg or map .cfg files. You will have to figure out the order on your own since there are 4,388 CVARs. Enjoy!

2. server.cfg (put in \Insurgency Dedicated Server\insurgency\cfg\)
THERE IS AN EXAMPLE FILE "server.cfg.example" IN THAT DIRECTORY.
All of the "default_server_XXXX" files can be renamed (better to leave an old copy in case you mess up, however) to "server_XXXX" to be turned into custom files for those game modes.

You can possibly skip the server.cfg entirely if you have enough command line options, especially if you use a playlist, and there are many different configuration options at different stages (game mode, map load) which you will have to figure out, but the important thing to remember is that each subsequent change or configuration will be overwritten from server start to map load, except for "playlists" which will force revert configurations to the playlist settings.

Windows Sample startup script:
1.Open notepad
2. write the following
start srcds.exe -port 27016 +hostname "Marky Market" +sv_playlist "nwi/coop_hardcore" +map "market_coop checkpoint"
3. Save As start.bat in your server directory (make sure to save as "All Files" and not " *.txt " in the bottom
4. Double click start.bat to run

Parameters always have to be written in this script, but many cvars can go into your server.cfg. Some will have to go into other config files.

Linux
If you're using linux you're probably aware enough to at least look up how shell scripts work, and there's a default shell script with automatic server restart code (srcds_run)

OSX
It's BSD so probably the same as Linux.
Getting Fancy
There's a lot more you can do, I'll include links and switches in no particular order

https://developer.valvesoftware.com/wiki/Command_line_options#Source_Dedicated_Server

important parameters include
-usercon

Important CVARs
rcon_password "YourPasswordHere"
log on (server logs)
sv_logbans 1
sv_logecho 1
sv_logfile 1
sv_log_onefile 0 (new log files so they don't get overwritten)

The server.cfg can be left to your imagination

NWI Playlists, use sv_playlist PLAYLIST either as a launch +CVAR or in server.cfg
comp conquer coop coop_elite coop_hardcore pvp_sustained pvp_tactical

There are other playlists and examples. Most files are accessible just by browsing the directories and using a text editor, but most core games files are packed in VPK files which must be opened with VPKEdit or GCFScape.

https://developer.valvesoftware.com/wiki/VPKEdit
https://developer.valvesoftware.com/wiki/GCFScape

Be careful because it is possible to corrupt the file and thus your server. Modding VPKs or extracting VPKs and recreating directory structure in \custom\ is best left to other guides.

Very last note: There is a LOT of cargo cult type "knowledge" out there. People will redundantly add launch parameters, CVARs, and other nonsense. In the world of tech, less is more, simpler is better, and always test what people say because maybe they're dumb or something changed.

Good luck and have fun.