B.A.T.M.A.N. with VLANs and DHCP

I am banging my head against B.A.T.M.A.N. and trying to convince it to allow devices to get their DHCP from my PFSense firewall. For the time being I’m just trying to get this done on a single node in the mesh so the network layout is pretty straightforward

Device -> AP -> Netgear managed switch -> PFSense

By my reading of the documentation the following configs should work to allow a device to connect to the “test” network and get an IP address:

config/network


config interface 'loopback'
	option device 'lo'
	option proto 'static'
	option ipaddr '127.0.0.1'
	option netmask '255.0.0.0'

config globals 'globals'
	option ula_prefix 'fddd:8c1e:6b22::/48'

config device
	option name 'br-lan'
	option type 'bridge'
	option stp '1'
	option igmp_snooping '1'
	option ipv6 '0'
	list ports 'bat0.11'
	list ports 'lan'

config interface 'lan'
	option device 'br-lan'
	option proto 'none'

config interface 'wan'
	option device 'wan'
	option proto 'static'
	option ipaddr '192.168.2.1'
	option netmask '255.255.255.0'

config interface 'wan6'
	option device 'wan'
	option proto 'dhcpv6'

config bridge-vlan
	option device 'br-lan'
	option vlan '1'
	list ports 'lan:t'

config interface 'management'
	option proto 'dhcp'
	option device 'br-lan.1'

config bridge-vlan
	option device 'br-lan'
	option vlan '11'
	list ports 'bat0.11:t'
	list ports 'lan:t'

config interface 'bat0'
	option proto 'batadv'
	option routing_algo 'BATMAN_V'
	option aggregated_ogms '1'
	option gw_mode 'server'
	option log_level '0'
	option orig_interval '1000'
	option bridge_loop_avoidance '1'
	option network_coding '0'
	option hop_penalty '30'
	option isolation_mark '0x00000000/0x00000000'

config interface 'nwi_mesh0'
	option mtu '2304'
	option proto 'batadv_hardif'
	option master 'bat0'

config interface 'test'
	option proto 'batadv_hardif'
	option device 'bat0.11'
	option master 'bat0'
	option type 'bridge'

config/wireless


config wifi-device 'radio0'
	option type 'mac80211'
	option path 'soc/40000000.pci/pci0000:00/0000:00:00.0/0000:01:00.0'
	option channel '149'
	option band '5g'
	option htmode 'VHT80'
	option cell_density '0'

config wifi-device 'radio1'
	option type 'mac80211'
	option path 'platform/soc/a000000.wifi'
	option channel '1'
	option band '2g'
	option htmode 'HT20'

config wifi-device 'radio2'
	option type 'mac80211'
	option path 'platform/soc/a800000.wifi'
	option channel '36'
	option band '5g'
	option htmode 'VHT80'
	option disabled '0'

config wifi-iface 'mesh0'
	option device 'radio2'
	option ifname 'mesh0'
	option mode 'mesh'
	option mesh_fwding '0'
	option mesh_id 'navis'
	option encryption 'sae'
	option key 'BooWillTakeCareOfTheDetails'
	option mesh_rssi_threshold '0'
	option network 'nwi_mesh0'

config wifi-iface 'wifinet2'
	option device 'radio1'
	option mode 'ap'
	option ssid 'test'
	option encryption 'none'

config wifi-iface 'wifinet3'
	option device 'radio0'
	option mode 'ap'
	option ssid 'test'
	option encryption 'none'
	option hidden '1'
	option network 'test'

Device is a GL-B2200 running the latest stable

I made a side by side comparison with my working almost similar configuration and edited a guestimate.

config device
	option name 'br-lan'
	option type 'bridge'
	option stp '1'
	option igmp_snooping '1'
	option ipv6 '0'
	list ports 'bat0'
	list ports 'lan'

config interface 'lan'
	option device 'br-lan'
	option proto 'none'

config interface 'wan'
	option device 'wan'
	option proto 'static'
	option ipaddr '192.168.2.1'
	option netmask '255.255.255.0'

config interface 'wan6'
	option device 'wan'
	option proto 'dhcpv6'

config bridge-vlan
	option device 'br-lan'
	option vlan '1'
	list ports 'lan:t'

config interface 'management'
	option proto 'dhcp'
	option device 'br-lan.1'

config bridge-vlan
	option device 'br-lan'
	option vlan '11'
	list ports 'bat0:t'
	list ports 'lan:t'

config interface 'bat0'
	option proto 'batadv'
	option routing_algo 'BATMAN_V'
	option aggregated_ogms '1'
	option gw_mode 'server'
	option log_level '0'
	option orig_interval '1000'
	option bridge_loop_avoidance '1'
	option network_coding '0'
	option hop_penalty '30'
	option isolation_mark '0x00000000/0x00000000'

config interface 'nwi_mesh0'
	option mtu '2304'
	option proto 'batadv_hardif'
	option master 'bat0'

config interface 'test'
	option proto 'dhcp'
	option device 'br-lan.11'