FTP Port redirect using OpenWrt router and windows clients

I'm having problems with FTP port redirection. I have OpenWrt device having two ethernet interfaces. The first one is in 192.168.1.0/24 network and there is another device with FTP server under 192.168.1.111. The other interface is in 10.47.0.0/24 and I'm connected to it under 10.47.0.10 with my host. The redirection configuration is as follows:

firewall.@redirect[2]=redirect
firewall.@redirect[2].dest='lan'
firewall.@redirect[2].target='DNAT'
firewall.@redirect[2].name='FTP1'
firewall.@redirect[2].src_dport='21'
firewall.@redirect[2].dest_port='21'
firewall.@redirect[2].src='service_zone'
firewall.@redirect[2].dest_ip='192.168.1.111'

firewall.@redirect[3]=redirect
firewall.@redirect[3].dest='lan'
firewall.@redirect[3].target='DNAT'
firewall.@redirect[3].name='FTP2'
firewall.@redirect[3].src_dport='20'
firewall.@redirect[3].dest_port='20'
firewall.@redirect[3].src='service_zone'
firewall.@redirect[3].dest_ip='192.168.1.111'

Now - on MacOS using lftp client - it works. Ubuntu FTP client in passive mode - it works. Windows clients - FTP in command line - 530 Could not create socket! 503 Bad sequence of commands. WinSCP - Bad sequence of commands. Total Commander - 530 Could not create socket! PORT Command failed.

Anyone experienced similar behavior? It does not seem to be the problem with the server and router, it has to be something in Windows hosts.

Fwiw, for passive mode FTP, I think you may need to specify ports for data transfer?

On the FTP server, I had to add these example settings for external users to be able to reach my server:

Add port forward rules on ISP facing router for remote internet user access.

kmod-nf-nathelper may also be needed with LEDE if I recall. (I don't use OpenWrt any more as my main router)

We use filezilla for Windows btw.