Процесс DNS на маршрутизаторе всегда обрабатывает запросы от других процессов маршрутизатора по преобразованию FQDN в IP-адрес (например, когда вы вводите ping mikrotik.com в командной строке маршрутизатора, процесс DNS переводит mikrotik.com в IP-адрес). У процесса есть два источника информации — локальные статические DNS-записи, которые вы настраиваете, и внешние DNS-серверы. Адреса внешних серверов можно задавать вручную и/или получать через протоколы динамической настройки, такие как DHCP или различные альтернативы, встроенные в PPP-подобные протоколы. Процесс кэширует ответы от внешних серверов.
allow-remote-requests=yes разрешает процессу DNS слушать входящие запросы на UDP-порту 53 и обрабатывать их. Самому процессу DNS безразличен исходный адрес этих запросов. Так что обслуживание конкретного клиента зависит от настроек фаервола. Обычно фаервол игнорирует любые пакеты с WAN-интерфейса, кроме тех, которые он распознаёт (благодаря отслеживанию соединений) как ответы на ранее отправленные с WAN интерфейса пакеты.
Порядок правил фаервола имеет значение, поэтому правило action=accept chain=input protocol=udp dst-port=53 должно стоять на правильном месте в списке, чтобы работать так, как вы ожидаете.
Однако открывать локальный DNS-сервер для запросов с любого места из интернета — плохая идея, так как DNS — это UDP-служба, и очень просто сделать так, чтобы ваше устройство участвовало в DDoS-атаке, если оно настроено отправлять ответный пакет на исходный адрес входящего пакета. Если я хочу атаковать UDP-порт X на адресе x.x.x.x, достаточно отправить на ваш UDP-порт 53 DNS-запрос с исходным адресом x.x.x.x и исходным портом X; ваше устройство отправит ответ на этот адрес и порт, а мой настоящий адрес останется невидимым для цели — с точки зрения цели, атаку ведёте именно вы.