Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

History

26 Commits

Repository files navigation

SaltLAN

Single-server LAN party

What

The goal of SaltLAN's network and server infrastructure was designed to be small, single-system, and cheap, while meeting all of our requirements: Caching, Game servers, monitoring, and 100Mb/s to the client.

I wanted to build SaltLAN after attending a LAN party in May, 2016. While the LAN was a lot of fun and it featured a great giveaway, awesome unlimited drinks and cool people, however, there were some massive networking problems.

  1. No dedicated LAN servers for games like TF2. People had to try and host local games, but nobody could see/connect to the game.
  2. Bad switches/using home routers instead of an unmanaged switch with distribution switches. Nobody could talk to each other.
  3. Slow internet (20Mbps max). Not everybody had certain games, and the day of the LAN, there was a massive TF2 update. It killed the network several times.

Configuration

Server

//side note: For anyone who's wondering why I'm releasing so much information on the setup and the possibility that this information might lead to a breach of network security:

  1. I am moderately confident in our network security and IDS.
  2. ALL of the network information is readily available to anyone who runs a basic nmap scan at the event.
  3. I want this information to be public. I spent a lot of time piecing pieces of information together from tons of sites and I want it to be available to anybody who looks.
ComponentHardware
CPUXeon E3 1220v5
RAM32GB DDR4
Storage512GB Samsung EVO SSD
3TB WD BLACK HDD
Networking3x 1Gbps NICS
1x 1Gbps NIC for WAN
2x 1Gbps NICs bonded for 2Gbps into LAN

Network

ComponentHardware
Core switch1x Cisco SLM 2048 48 port Gigabit switch
Disribution switches6+x Netgear Prosafe 24 port 10/100 switch with 2x 1Gbps uplink

Software

ComponentSoftware
OSUbuntu server 16.04
DHCPDnsmasq
DNSDnsmasq
CachingDocker
Game serversLinux Game Server Manager
Usage monitoringGrafana
Usage storageInfluxDB
Usage collectionTelegraf

Address definition

IP AddressHostnamePortInterfaceServiceComments
10.0.0.1router.saltlan.orgN/Aeno2RouterBasic NAT and IPv4 forwarding
10.0.0.1dns.saltlan.org53eno2DnsmasqDNS
10.0.0.1dhcp.saltlan.orgN/Aeno2DnsmasqDHCP
10.0.0.2steam.cache.saltlan.org80eno2:2DockerSteam cache
10.0.0.3blizzard.cache.saltlan.org80eno2:3DockerBattle.net cache
10.0.0.4origin.cache.saltlan.org80eno2:4DockerOrigin cache
10.0.0.5uplay.cache.saltlan.org80eno2:5DockerUplay cache
10.0.0.6ps4.cache.saltlan.org80eno2:6DockerSony (PS4)
10.0.0.7microsoft.cache.saltlan.org80eno2:7DockerMicrosoft
10.0.0.8 - 9ReservedN/AN/AN/A
10.0.0.10csgo.server.saltlan.org27015eno2:10LGSMCS:GO server
10.0.0.11tf2.server.saltlan.org27015eno2:11LGSMTF2 server
10.0.0.12q3.server.saltlan.org27015eno2:12LGSMQuake 3 server
10.0.0.13insurgency.server.saltlan.org27015eno2:13LGSMInsurgency server
10.0.0.14ss3.server.saltlan.org27015eno2:14LGSMSerious Sam 3 server
10.0.0.15chiv.server.saltlan.org27015eno2:15LGSMChivalry server
10.0.0.16starbound.server.saltlan.org27015eno2:16LGSMStarbound server
10.0.0.17factorio.server.saltlan.org27015eno2:17LGSMFactorio server
10.0.0.18 - 19ReservedN/AN/AN/AN/A
10.0.0.20 - 250DHCP RangeN/AN/AN/AN/A
10.0.0.251 - 253ReservedN/AN/AN/AN/A
10.0.0.254core.network.saltlan.org80/443N/ACiscoSLM2048 core switch
10.0.0.255BroadcastN/AN/AN/AN/A

Netmap

Network Map

About

SaltLAN infrastructure stack

Resources

Stars

2 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages