Skip to content

Networking

Joel Goudswaard edited this page Aug 13, 2026 · 1 revision

The SCCS installer configures the Raspberry Pi as router. The wired ethernet port connects to the internal network (e.g. a 12V PoE ethernet switch) where the WAPs and touchscreens live. Internet is shared from the Wi-Fi or USB hotspot and distributed to the LAN/Wi-Fi. Pi-hole provides DNS, DHCP and ad-filtering. Routing is configured using in-built linux nftables. This is automatically configured by the installer or from running the network configuration option from the installer menu.

Architecture

Role Interface (default) Purpose
LAN/Wi-Fi Wired Ethernet Hosts LAN/Wi-Fi - screens, clients, WAP points
WAN wlan0 Upstream internet supplied by Wi-Fi/USB hotspot, Starlink, 5G modem

Installation

Networking is setup during the initial install and can be re-run from the main installer menu later via menu option 6. Networking can be configured without the SCCS core connected.

Default values

See Overrides to change these settings before running the installer.

Setting Value
LAN/Wi-Fi interface eth0
LAN/Wi-Fi address / Subnet 10.10.10.1/24
LAN/Wi-Fi IPv6 link-local only (ipv6.never-default) — needed for Google Home / Matter
DHCP Pool 10.10.10.50 – 10.10.10.200
DHCP Lease 12h
DHCP Gateway 10.10.10.1
DNS 10.10.10.1
Pi-hole domain lan
Upstream DNS (Cloudflare) 1.1.1.1, 1.0.0.1
WAN (default) wlan0
IP forwarding enabled
Pi-hole admin UI http://10.10.10.1:8080/admin
SCCS UI (nginx) http://10.10.10.1/

Pi-hole

Pi-hole is installed when networking is configured and is updated as part of the update checks when using menu option 2. DHCP listens on the LAN/Wi-Fi/wired ethernet port only.

Admin password

The password is generated during install. Show it with

sudo cat /root/.sccs-pihole-web-password

Access the web UI at: http://10.10.10.1:8080/admin
Change Password: pihole setpassword (or pihole -a -p).

The block list is updated when doing an update via menu option 2.

HTTP services (related ports)

Service Port Notes
nginx 80 Site: /etc/nginx/sites-available/sccs
SCCS 5000 Listens on the IP configured in sccs.conf
Pi-hole 8080 For configuring DNS, DHCP, blocklists etc.
Samba 139 / 445 Share path ~/sccs for editing config from another computer
SSH 22 Use credentials you set when imaging the SD card
HomeKit (HAP) 51826 Optional. Advertised on the LAN/Wi-Fi address only ([homekit] bind_address). See HomeKit.
Matter 5540 Optional Google Home bridge. IPv6 mDNS on the LAN/Wi-Fi. See Google Home.

SCCS UI: http://10.10.10.1/ (or the Raspberry Pi’s Wi-Fi IP if you are not on the LAN/Wi-Fi).

Phone Hotspot (menu option 7)

  1. Enable Hotspot on the phone.
  2. Plug into the Raspberry Pi; installer scans for interfaces such as eth1, usb0, rndis0, enx….
  3. The interface will be added as a WAN connection.
  4. If the Raspberry Pi is connected to Wi-Fi and a USB internet connection is plugged in, you can set the preferred connection in the settings tab of the UI.

Files Modified by the Installer

Path Role
/etc/nftables.conf Forward + masquerade rules
/etc/sysctl.d/99-sccs-forward.conf IP forwarding
/etc/polkit-1/rules.d/50-sccs-networkmanager.rules NM permissions for netdev
/etc/pihole/setupVars.conf Initial unattended Pi-hole seed (first install)
/etc/dnsmasq.d/02-sccs-wan-except.conf no-dhcp-interface on WAN
/etc/dnsmasq.d/99-sccs-static-dhcp.conf Comments / documentation for screen reservations
/root/.sccs-pihole-web-password Pi-hole admin password (mode 600)
/etc/nginx/sites-available/sccs Reverse proxy for the UI
NM connection sccs-lan (or existing eth profile) Static LAN/Wi-Fi addressing
NM connection sccs-usb-tether (if created) Phone USB uplink

Do not hand-edit the generated nftables or WAN-except files if you plan to re-run the installer as they are regenerated.

Environment overrides

Set before running the installer (or menu option 6 / --lan) to customise your installation:

Variable Default Meaning
LAN_IF auto / eth0 LAN/Wi-Fi interface name
LAN_ADDR 10.10.10.1 Raspberry Pi address on the LAN/Wi-Fi
LAN_CIDR 24 Prefix length
WAN_IF wlan0 Primary WAN
EXTRA_WAN_IF (empty) Extra WAN (e.g. tether)
WAN_IFS (from above) Space-separated WAN list (menu 7 sets this)
DHCP_RANGE_START 10.10.10.50 Pool start
DHCP_RANGE_END 10.10.10.200 Pool end
DHCP_LEASE 12h Lease duration
SCCS_UI_URL http://10.10.10.1/ Chromium homepage on touchscreens

Example:

sudo env LAN_ADDR=10.10.10.1 WAN_IF=wlan0 ./install.sh --lan

Touchscreens

Touchscreen on/off and brightness commands are sent via SSH. The installer has a guided setup for this, see the Software Configuration page for setup details.

Useful commands

# Status
ip -br addr
ip route
systemctl status nftables pihole-FTL nginx sccs
pihole status

# Pi-hole
sudo cat /root/.sccs-pihole-web-password
pihole -up                    # update Pi-hole + gravity (also done on SCCS “Update”)
pihole reloaddns

# NAT rules live here
sudo nft list ruleset
cat /etc/nftables.conf

# Re-apply LAN/Wi-Fi + Pi-hole + NAT
sudo ~/sccs/install.sh --lan
# or menu option 6

# Phone hotspot + refresh NAT
sudo ~/sccs/install.sh --usb-tether

← Previous: Google Home    |    Next: UniFi OS Server →

Clone this wiki locally