Host Configuration¶
The host configuration is a YAML file that resides on the ParaDrop device and controls many aspects of system functioning, particularly network and wireless device configuration. The host configuration may also appear in JSON format when manipulating it through the Local HTTP API or through the cloud controller. This page describes the structure and interpretation of values in the host configuration.
Host Configuration Object¶
ParaDrop host configuration | ||||
type | object | |||
properties | ||||
|
Firewall settings that apply to all network interfaces. | |||
type | object | |||
properties | ||||
|
Refer to: firewall defaults object. | |||
host-config-firewall-defaults-schema | ||||
|
Configuration for LAN interfaces (wired and wireless). | |||
type | object | |||
properties | ||||
|
Refer to: dhcp object | |||
host-config-dhcp-schema | ||||
|
Firewall settings for the LAN interfaces. | |||
type | object | |||
properties | ||||
|
Refer to: firewall defaults object. | |||
host-config-firewall-defaults-schema | ||||
|
Settings for packet forwarding. | |||
type | object | |||
|
List of wired interfaces to include in the LAN bridge, e.g. eth1. | |||
type | array | |||
items | ||||
type | string | |||
|
IP address to use on the LAN bridge. | |||
type | string | |||
|
Network mask for LAN. | |||
type | string | |||
|
Method for setting interface IP address. ‘auto’ will choose a subnet that avoids conflict with the WAN interface. | |||
type | string | |||
enum | auto, static | |||
|
Configure Paradrop system behaviors. | |||
type | object | |||
properties | ||||
|
Enable automatically updating system software packages. | |||
type | boolean | |||
|
The IP network size to assign to each chute. | |||
type | integer | |||
maximum | 32 | |||
minimum | 0 | |||
|
The IP range available for chutes in CIDR notation or ‘auto’. ‘auto’ will choose a subnet that avoids conflict with the WAN interface. | |||
type | string | |||
|
Behavior if expected wireless devices are missing on boot. | |||
type | string | |||
enum | ignore, reboot, warn | |||
|
Configure telemetry function for collecting device measurements. | |||
type | object | |||
properties | ||||
|
Enable sending device measurements to cloud controller. | |||
type | boolean | |||
|
Reporting interval (in seconds). | |||
type | integer | |||
minimum | 1 | |||
|
Configure handling of VLAN tags on wired interfaces. | |||
type | array | |||
|
Configuration for WAN interface. | |||
type | object | |||
properties | ||||
|
Firewall settings for the WAN interface. | |||
type | object | |||
properties | ||||
|
Refer to firewall defaults object. | |||
host-config-firewall-defaults-schema | ||||
|
Name of interface to use for WAN. | |||
type | string | |||
|
Method of acquiring interface IP address. | |||
type | string | |||
enum | dhcp | |||
|
List of physical Wi-Fi devices and their configuration. | |||
type | array | |||
items | ||||
host-config-wifi-device-schema | ||||
|
List of virtual Wi-Fi interfaces and their configuration. | |||
type | array | |||
items | ||||
host-config-wifi-interface-schema | ||||
|
Configure ZeroTier service, which enables VPN-like functionality. | |||
type | object | |||
properties | ||||
|
Enable the ZeroTier service. | |||
type | boolean | |||
|
List of ZeroTier networks to join, using their string IDs. | |||
type | array | |||
items | ||||
type | string | |||
uniqueItems | True |
DHCP Object¶
ParaDrop host configuration - dhcp object | ||
type | object | |
properties | ||
|
Duration of client leases, e.g. 2h | |
type | string | |
|
Size of address range beginning at start value. | |
type | integer | |
minimum | 1 | |
|
Starting offset for address assignment. | |
type | integer | |
minimum | 0 |
Firewall Defaults Object¶
ParaDrop host configuration - firewall defaults object | |||
type | object | ||
properties | |||
|
|||
|
type | string | |
enum | ACCEPT, REJECT, DROP | ||
|
type | string | |
enum | ACCEPT, REJECT, DROP | ||
|
|||
|
List of source addresses or subnets to which SNAT should be applied. | ||
type | array | ||
items | |||
type | string | ||
uniqueItems | True | ||
|
type | string | |
enum | ACCEPT, REJECT, DROP |
Wi-Fi Device Object¶
Objects in the wifi array define physical device settings such as the channel and transmit power. These settings affect all interfaces in the “wifi-interfaces” array that use the corresponding device.
ParaDrop uses a deterministic system for identifying Wi-Fi devices, so that settings are applied to the same device on startup as long as there have been no hardware changes. ParaDrop numbers PCI and USB devices separately starting from zero, so a ParaDrop host with two PCI Wi-Fi cards and one USB card will have device IDs pci-wifi-0, pci-wifi-1, and usb-wifi-0.
The spectrum band is determined by the hwmode setting and the channel setting. They must be compatible. For 2.4 GHz channels (1-13), set hwmode to 11g. For 5 GHz channels (36-165), set hwmode to 11a.
Higher data rates and channel sizes (802.11n and 802.11ac) are configured with the htmode setting. For a 40 MHz channel width in 802.11n, set htmode=HT40 or htmode=HT40-. Plus means add the next higher channel, and minus means add the lower channel. For example, setting channel=36 and htmode=HT40+ results in using channels 36 and 40 as a 40 MHz channel.
If the hardware supports it, you can enable short guard interval for slightly higher data rates. There are separate settings for each channel width: short_gi_20, short_gi_40, and short_gi_80.
Defines a physical Wi-Fi device and its configuration. | ||
type | object | |
properties | ||
|
Wi-Fi channel number. | |
type | integer | |
maximum | 165 | |
minimum | 1 | |
|
Enable 802.11n or 802.11ac modes. | |
type | string | |
enum | None, HT20, HT40+, HT40-, VHT20, VHT40, VHT80 | |
|
Basic operating mode (11b for old hardware, 11g for 2.4 GHz, 11a for 5 GHz). | |
type | string | |
enum | 11b, 11g, 11a | |
|
Physical identifier, e.g. pci-wifi-1 or usb-wifi-0. | |
type | string | |
|
Indicates support for receiving frames using STBC. | |
type | integer | |
maximum | 1 | |
minimum | 0 | |
|
Enable short guard interval (higher data rates) in 20 MHz channels, must be supported by device. | |
type | boolean | |
|
Enable short guard interval (higher data rates) in 40 MHz channel, must be supported by device. | |
type | boolean | |
|
Enable short guard interval (higher data rates) in 80 MHz channel, must be supported by device. | |
type | boolean | |
|
Indicates support for transmitting frames using STBC. | |
type | integer | |
maximum | 1 | |
minimum | 0 |
Wi-Fi Interface Object¶
Objects in the wifi-interfaces array configure virtual interfaces. Each virtual interface has an underlying physical device, but there can be multiple interfaces per device up to a limit determined by the hardware. Virtual interfaces can be configured as APs or in other operating modes (with limited support).
The encryption setting can take a number of different values. The most common options are: “none” for an open access point, “psk2” for WPA2 Personal (PSK), and “wpa2” for WPA2 Enterprise. WPA2 Enterprise requires additional configuration to interact with an external RADIUS server.
ParaDrop host configuration - Wi-Fi interface section | ||
type | object | |
properties | ||
|
Physical device used by this interface, must match a device id in the wifi section. | |
type | string | |
|
Type of wireless network security to use, e.g. none, psk2, wpa2 (Enterprise). | |
type | string | |
|
Operating mode for the interface. | |
type | string | |
enum | airshark, ap, managed, monitor | |
|
Network name the interface should be attached to, typically lan for ap mode interfaces. | |
type | string | |
|
ESSID for ap and managed mode interfaces. | |
type | string |