pfSense DHCP Commands

Synopsis

netapi pfsense dhcp show <INTERFACE>
netapi pfsense dhcp leases [OPTIONS]
netapi pfsense dhcp reservations <INTERFACE>

Commands

dhcp show

Show DHCP server configuration for interface.

netapi pfsense dhcp show opt1
netapi pfsense dhcp show lan
Sample Output
{
  "interface": "opt1",
  "enable": true,
  "range_from": "10.238.1.100",
  "range_to": "10.238.1.200",
  "domain": "inside.domusdigitalis.dev",
  "dns_servers": ["10.50.1.10", "10.50.1.11"],
  "gateway": "10.238.1.1",
  "lease_time": 86400
}

dhcp leases

List active DHCP leases.

netapi pfsense dhcp leases
netapi pfsense dhcp leases --format json
netapi pfsense dhcp leases --interface opt1

dhcp reservations

List static DHCP reservations.

netapi pfsense dhcp reservations opt1

Configuration via YAML

netapi pfsense dhcp update-from-file dhcp-config.yaml
dhcp-config.yaml
interface: opt1
enable: true
range:
  from: 10.238.1.100
  to: 10.238.1.200
domain: inside.domusdigitalis.dev
dns_servers:
  - 10.50.1.10
  - 10.50.1.11
gateway: 10.238.1.1
lease_time: 86400

reservations:
  - mac: 00:50:C2:39:F0:F7
    ip: 10.238.1.28
    hostname: insensix-rm101
    description: "Temperature sensor - Room 101"

CI/CD Integration

- name: Update DHCP reservations
  run: |
    netapi pfsense dhcp update-from-file dhcp/reservations.yaml
    netapi pfsense apply-config