Setting Up a Home Lab

The main compoennets of the home software lab

home software lab

Computing power

This is the main horsepower of your lab and consists of the physical server and CPU(s) your intend to use. The more physical processors the better, as well as the more CPU cores too.

Memory

The amount of memory(RAM) your labs makes available for use is an intrinsic component of your lab. Unless you run specific workloads, you may be surprised to find out that the total amount of RAM in your lab can be more important than the amount of computing power you have available.

Storage

Networking

Uninterruptible Power Supply(UPS)

A UPS allows your lab to run without power for a short amount of time when the input power source fails. This can be critical for preserving the health and longevity of your lab’s data.

Backup

Top Software for Your Homelab

  • [Pi-Hole] The Pi-hole is a DNS sinkhole that protects your devices from unwanted content, without installing any client-side software.

Pi-Hole and AdGuard Home.

  1. they are nearly exactly the same, and use effectively the same method of blocking ads, trackers, and bad websites.
  • Geeting Started

    • Prerequisties

      • IP Addressing Pi-hile needs a static IP address to preperly function (a DHCP reservation is just fine).
      • Ports | Service | Port | Protocol | Notes | | pihole-FTL | 53(DNS) | TCP/UDP | | | pihole-FTL | 67(DHCP)| IPv4 UDP| The DHCP server is an optional feature that requires additional ports | | pihole-FTL | 547(DHCPv6)| IPv6 UDP| The DHCP server is an optional feature that requires additional ports. | | lighttpd | 80(HTTP) | TCP | You can change the port on which lighttpd listens, which allows you keep both Web servers running. | | pihole-FTL | 4711 | TCP | FTL is our API engine and uses port 4711 on the localhost interface. This port should not be accessible from any other interface. |
    • Installation

      • One-Step Automated Install

        curl -sSL https://install.pi-hole.net | bash
        
      • Updating

        pihole -up
        
  • Pi-hole Core Pi-hole makes use of many commands, and here we will break down those required to administer the program via the command-line Interface.

  • Databases Pi-hole uses the well-known relational database management system SQLite3 both for its long-term storage of query data and for its domain management.

    • Query database
  • [AdGuard Home]

    • AdGuard Home Features
      • Blocking ads, trackers, phishing, and malware domains: Block ad and tracker networks by using various lists of known ad/tracker DNS entries. Also allows you to add/delete lists.
      • Customizing blocklists: Similar to above, you can customize any of the added lists, or write your own filters to block specific services/sites
      • Built-in DHCP server: Assign addreses to devices in your network if you don’t want your ISP router to do it for you.
      • Act as a local DNS resolver: Easily re-write DNS requests to route to your local machine via local IP address instead of a public one. This alos allows you to use any custom domain name for local resources!
      • Admin interface: Provides an easy-to-use GUI for settings and statistics.
  • [Plex Media Server]

  • GitLab