DHCP not serving Guest WLAN

Hello, I am trying to set-up a separate WLAN for my guests with a simple password;
I have successfully created PERLUR Guest WLAN on 2,4GHz interface, it is visible and devices can connect to the network. If I configure their IP addresses manually, everything works perfectly, but DHCP is not serving this WLAN… I am trying to set-up a little paranoid configuration here and allow my guests on connect only using HTTP, HTTPS, SSH and Google DNS.

I have following in /etc/config/network:

config interface 'guest'
	option _orig_ifname 'wlan1-1'
	option _orig_bridge 'false'
	option proto 'static'
	option ipaddr '192.168.0.1'
	option netmask '255.255.255.0'

Following in /etc/config/dhcp:

config dhcp 'guest'
	option leasetime '12h'
	option interface 'guest'
	option force '1'
	option start '50'
	option limit '203'
	list dhcp_option '6,8.8.8.8,8.8.4.4'
	list dhcp_option '3,192.168.0.1'

and following in /etc/config/firewall:

root@turris01:~# cat /etc/config/firewall

config defaults
	option syn_flood '1'
	option input 'ACCEPT'
	option output 'ACCEPT'
	option forward 'REJECT'

config zone
	option name 'lan'
	option input 'ACCEPT'
	option output 'ACCEPT'
	option forward 'ACCEPT'
	option network 'lan'

config zone
	option name 'wan'
	option input 'REJECT'
	option output 'ACCEPT'
	option forward 'REJECT'
	option masq '1'
	option mtu_fix '1'
	option network 'wan wan6'

config forwarding
	option src 'lan'
	option dest 'wan'

config rule
	option name 'Allow-DHCP-Renew'
	option src 'wan'
	option proto 'udp'
	option dest_port '68'
	option target 'ACCEPT'
	option family 'ipv4'

config rule
	option name 'Allow-Ping'
	option src 'wan'
	option proto 'icmp'
	option icmp_type 'echo-request'
	option family 'ipv4'
	option target 'ACCEPT'

config rule
	option name 'Allow-IGMP'
	option src 'wan'
	option proto 'igmp'
	option family 'ipv4'
	option target 'ACCEPT'

config rule
	option name 'Allow-DHCPv6'
	option src 'wan'
	option proto 'udp'
	option src_ip 'fe80::/10'
	option src_port '547'
	option dest_ip 'fe80::/10'
	option dest_port '546'
	option family 'ipv6'
	option target 'ACCEPT'

config rule
	option name 'Allow-MLD'
	option src 'wan'
	option proto 'icmp'
	option src_ip 'fe80::/10'
	list icmp_type '130/0'
	list icmp_type '131/0'
	list icmp_type '132/0'
	list icmp_type '143/0'
	option family 'ipv6'
	option target 'ACCEPT'

config rule
	option name 'Allow-ICMPv6-Input'
	option src 'wan'
	option proto 'icmp'
	list icmp_type 'echo-request'
	list icmp_type 'echo-reply'
	list icmp_type 'destination-unreachable'
	list icmp_type 'packet-too-big'
	list icmp_type 'time-exceeded'
	list icmp_type 'bad-header'
	list icmp_type 'unknown-header-type'
	list icmp_type 'router-solicitation'
	list icmp_type 'neighbour-solicitation'
	list icmp_type 'router-advertisement'
	list icmp_type 'neighbour-advertisement'
	option limit '1000/sec'
	option family 'ipv6'
	option target 'ACCEPT'

config rule
	option name 'Allow-ICMPv6-Forward'
	option src 'wan'
	option dest '*'
	option proto 'icmp'
	list icmp_type 'echo-request'
	list icmp_type 'echo-reply'
	list icmp_type 'destination-unreachable'
	list icmp_type 'packet-too-big'
	list icmp_type 'time-exceeded'
	list icmp_type 'bad-header'
	list icmp_type 'unknown-header-type'
	option limit '1000/sec'
	option family 'ipv6'
	option target 'ACCEPT'

config include
	option path '/etc/firewall.user'

config include
	option path '/usr/share/firewall/turris'
	option reload '1'

config include
	option path '/etc/firewall.d/with_reload/firewall.include.sh'
	option reload '1'

config include
	option path '/etc/firewall.d/without_reload/firewall.include.sh'
	option reload '0'

config rule
	option src 'wan'
	option dest 'lan'
	option proto 'esp'
	option target 'ACCEPT'

config rule
	option src 'wan'
	option dest 'lan'
	option dest_port '500'
	option proto 'udp'
	option target 'ACCEPT'

config include 'miniupnpd'
	option type 'script'
	option path '/usr/share/miniupnpd/firewall.include'
	option family 'any'
	option reload '1'

config zone
	option forward 'REJECT'
	option name 'guest'
	option network 'guest'
	option output 'REJECT'
	option family 'ipv4'
	option input 'REJECT'

config rule
	option target 'ACCEPT'
	option src 'guest'
	option dest 'wan'
	option dest_port '80'
	option proto 'tcp'
	option name 'GUEST_ALLOW_HTTP_WAN'

config rule
	option target 'ACCEPT'
	option dest 'wan'
	option proto 'tcp'
	option src 'guest'
	option dest_port '443'
	option name 'GUEST_ALLOW_HTTPS_WAN'

config rule
	option target 'ACCEPT'
	option src 'guest'
	option dest 'wan'
	option name 'GUEST_ALLOW_DNS01_WAN'
	option dest_ip '8.8.8.8'
	option dest_port '53'
	option family 'ipv4'

config rule
	option target 'ACCEPT'
	option src 'guest'
	option dest 'wan'
	option name 'GUEST_ALLOW_DNS02_WAN	'
	option family 'ipv4'
	option dest_port '53'

config rule
	option target 'ACCEPT'
	option src 'guest'
	option dest 'wan'
	option name 'GUEST_ALLOW_SSH_WAN'
	option proto 'tcp'
	option dest_port '22'

config zone
	option output 'ACCEPT'
	option name 'dmz'
	option network 'dmz'
	option input 'REJECT'
	option forward 'ACCEPT'

config forwarding
	option dest 'wan'
	option src 'dmz'

config forwarding
	option dest 'dmz'
	option src 'lan'

config rule
	option target 'ACCEPT'
	option src 'wan'
	option proto 'tcp'
	option dest_port '22'
	option name 'ALLOW_SSH_FROM_CZKO'
	option family 'ipv4'
	option src_ip '82.209.54.72/29'
	option dest_ip '82.209.54.74'

config rule
	option target 'ACCEPT'
	option name 'GUEST_ALLOW_DHCP01'
	option family 'ipv4'
	option proto 'udp'
	option src 'guest'
	option dest_ip '192.168.0.1'
	option dest_port '67'

config rule
	option enabled '1'
	option target 'ACCEPT'
	option proto 'udp'
	option dest_port '68'
	option name 'GUEST_ALLOW_DHCP02'
	option family 'ipv4'
	option src 'guest'
	option dest_ip '192.168.0.1'

config forwarding
	option dest 'guest'
	option src 'dmz'

config forwarding
	option dest 'guest'
	option src 'lan'

root@turris01:~# 

But any client connected to the WLAN does not get assigned IP from DHCP, am I missing some DHCP rules?

Client requesting IP from DHCP sends DHCP discover packet as broadcast (with destination IP address 255.255.255.255) and not unicast 192.168.0.1. I would say, you only need to change ‘guest’ zone option input ‘REJECT’ to ‘ACCEPT’ similarly as it is for ‘lan’ zone.

Guest WLAN is done simply in Foris … you mean wifi ?

This was my first thought - why you ( @marek-stopka ) didn’t want to use “default” guest WLAN and used this approach?

I added following rule:

config rule
option target 'ACCEPT'
option name 'GUEST_ALLOW_DHCP01'
option family 'ipv4'
option proto 'udp'
option src 'guest'
option dest_port '67-68'

it solved the issue.