Counter-Strike 2

Counter-Strike 2

Not enough ratings
Playing Games From A NAS
By mnemonic
Basic tutorial on how to play games off of a network attached storage server, using iSCSI.
   
Award
Favorite
Favorited
Unfavorite
Disclaimer
This guide is meant to provide you with the guidance to further your own research, not be a step by step guide on how to set this up. This would be extremely complicated to explain, seeing every system is different depending on which you choose. For example if you choose to use Unraid over TrueNAS, the WEB GUI is completely different so I would need to cover both. If you are doing it over CLI, it should remain very similar if you are on the same core system (FreeBSD, GNU/Linux, OpenBSD, etc.) However I don't expect this to be the case for a lot of users.

This is meant to provide you with a few good resources, and terminology to setup your own machine.
A NAS?
A NAS, or Network Attached Storage (or a Storage Server), is in essence, a machine on your network that acts as a host for storage.

Why Would You Want A NAS
A NAS has many benefits, and you can do a wide range of things, but I want to focus here on storing and playing games off of the NAS. To be clear, this basically means games will be stored on the NAS instead of your local machine, and when you launch the game, all the files go from the NAS to the client requesting it.

Added Benefits
There are many benefits of having your data on a server as such, however one major one is redundancy. When using a file system such as ZFS, it offers many protections for your data to help bitrot, find and deal with errors, offer redundancy to help with potential drive failures, and much more.

You also have the added benefit of being able to store whatever, and have it essentially all offline. If you have movies, music, or tv shows on your NAS, you can watch it all offline as long as your router/firewall is turned on and the server and your computer is connected to it, you can do whatever you want and access your files. They are your files, you do not need to connect to the internet to reach them (unless the server is remote but that's a different situation).
You also own all of the data on it, for example Netflix can pull any data it wants at any time, where as the movies on your server will always be there until you delete it. You are free to do as you please with it.

What Do I Need?
For a basic introduction to hardware, and most other more technical things, a good place to start is reading up here: https://wiki.installgentoo.com/wiki/Home_server
You can choose to build one, gather old parts you have lying around, or buy a pre-made one.

Whichever path you go, I personally highly suggest using a Free and Open Source operating system such as TrueNAS, a minimal GNU/Linux distribution (such as Rocky Linux, Debian, or others), or other similar software. And avoid proprietary solutions such as Synology, or QNAP which can be privacy invasive and more restrictive (and often not free).

The biggest cost will probably end up being hard drives.
I suggest using ZFS personally, and suggest reading up on it. Here is a good video explaining ZFS.


Just remember, redundancy is not a backup. If you have important data, ALWAYS have a seperate backup on another system, or drives. Ideally have 2 backups (one off-site, and one local but offline or on another machine. Redundancy does not save you from a full machine failure which drives all fail at once (very rare but can happen), nor does it save you from a stupid user admin mistake such as accidentally deleting all of your data (far too common).


ALWAYS
HAVE
BACKUPS


Here is a good beginner setup guide on TrueNAS Core 12.0:
iSCSI
You have a few options as to connecting your NAS to your clients.

NFS for GNU/Linux devices, and SMB (Samba) if you are stuck with Windows.
However, both of these will most likely have issues with playing Games. This is why you must use iSCSI.

iSCSI is a protocol, that basically allows you to mount the network share as if it was a local drive on your machine, so now games think the server is a hard drive directly in your machine, versus just on your network. Some games may work over NFS or SMB, however you will quickly realize that most games complain. The simple solution is to use iSCSI.
There is one major downside for some users, that is you cannot have the same iSCSI share mounted on multiple machines at once without using symlinks.

How To Setup iSCSI?
Unfortunately, this is not something I can easily explain in this guide. It will vary a bit differently on every single platform, depending on whether you are using TTY or a WEB GUI, so I cannot give instructions here.
If you are using TrueNAS however, here is a good setup tutorial (which also goes over the basics of iSCSI).


I hope I have provided enough information to get you started. This was not meant to be a complete guide, as again it is impossible to predict what you want out of your server, but it should be enough information to help guide you to do a bit more of your own research, and setup your own server to play games from it.
Security
Security is important, and I want to remind users to always use full disk encryption as there is very minimal overhead on modern systems. And also consider your network security such as setting up isolated VLANs for your devices, your families devices, IoT devices, and guest devices, to keep them all separate, using secure passphrases for wireless, and consider using a dedicated firewall such as OPNsense instead of your ISP provided gateway.

If you plan on exposing your server publicly, I highly suggest knowing what you're doing. Otherwise keep it on LAN. Forwarding ports can put your network at risk if you don't understand what you are doing and compromise your network.
Lawrence Systems makes some good network security setup videos if you are interested in reading more.
3 Comments
yvvki 26 Jun @ 5:24am 
Does mapping the network into a drive label (D:\ in my case) helps with the issues? I have set "EnableLinkedConnections" for elevated apps (administrator) to have access them.
mnemonic  [author] 14 Jun @ 5:02pm 
Some games will fail to function properly if you just use a network share, because they want to see the drive as a local drive
Rooster_75428 28 May @ 5:49am 
So, I don't comment often, but the way I made this work is just to assign a custom location for a steam library in steam, rather than making a "local" drive. I'm getting 600+ MB transfer speeds to server, so games might take a bit longer to load, but that's to be expected.

To set a custom location, go into steam > settings > storage > dropdown menu at top of page > add drive > navigate to network share

OS - Windows 11
Server/NAS - Unraid 6.12.10