Skip to content

Installation on FreeBSD 14.3

What the server needs, and how to prepare FreeBSD 14.3 to receive it. The gateway software itself is installed by NetvynX during onboarding — this page covers everything you do before that, so the box is ready when we arrive.

Hardware requirements

Sizing is per deployment — these are the floors. Peak concurrent sessions, busy-hour packet rate and which services you enable all move the numbers, and we size against them before you buy anything.

text
CPU        x86-64, 16 cores minimum, single socket preferred
           AVX2 required; constant TSC and no C-state overrides
Memory     32 GB minimum; 64 GB+ for large session or NAT tables
           all DIMM channels populated, single NUMA node preferred
NICs       2 minimum (core-facing + subscriber-facing)
           Intel or Mellanox recommended; ask us before buying
Management 1 separate NIC, never one of the data ports
Disk       120 GB SSD; more if compliance logs are kept locally
BIOS       VT-d / IOMMU enabled, hyper-threading either way

Supported release

FreeBSD 14.3 is the primary development and soak platform and the reference target for validation runs. Install the release version rather than STABLE or CURRENT — the kernel modules the data plane needs are built against a specific kernel, and a moving target breaks that.

text
Release    FreeBSD 14.3-RELEASE, amd64
Profile    server, no desktop, no jails required
Filesystem ZFS or UFS — either is fine
Swap       equal to RAM, or 16 GB, whichever is smaller

Installing the OS

A plain server install. Take the defaults unless noted. Install the source tree — the kernel modules are built against it, and adding it later means a reboot at an inconvenient moment.

shell
# in bsdinstall, select these distribution sets:
#   base   kernel   src

# after first boot
pkg update && pkg upgrade -y
freebsd-update fetch install

Management network

Give the box a static management address on an interface that is not one of the data ports. The data NICs are handed to the fast path during install and will disappear from the OS — if management is on one of them, you lose the box at that moment.

ini
# /etc/rc.conf
hostname="bng01.example.net"
ifconfig_em0="inet 198.51.100.20 netmask 255.255.255.0"
defaultrouter="198.51.100.1"
sshd_enable="YES"
ntpd_enable="YES"
ntpd_sync_on_start="YES"

Time synchronisation

Not optional. Compliance records are only useful if their timestamps hold up, and a lawful-intercept request answered from a clock that drifted is worth nothing. Point NTP at a source you trust and confirm it is stepping before the gateway carries traffic.

shell
service ntpd start
ntpq -p              # confirm a peer is selected (*)
date

Access we need

Bring-up is done with your team, not behind your back. We need SSH to the management address, an account that can escalate, and out-of-band console access — IPMI, iDRAC, iLO or a serial concentrator. The console matters: binding the data NICs is exactly the step that can cut a network path, and recovering from that without a console means a site visit.

Readiness checklist

When these are all true, the box is ready for us. Send the output of the last three with your handover note and the first session usually completes in under an hour.

shell
freebsd-version                # 14.3-RELEASE
sysctl hw.ncpu hw.physmem      # cores and RAM
pciconf -lv | grep -B3 Ethernet # adapter inventory