Цитата:
Программа с ПК должна по FTP соединиться с другой машиной, по 21 порту. Но не соединяется.
21 порт это управляющий порт для FTP протокола, по нему идут только команды. Данные же идут по другим портам, назначенным либо клиентом (входящие соединения, активный режим) либо сервером (исходящие соединения, пассивный режим). Данные это не только файлы, но и листинги например. (Я когда-то писал мобильный FTP клиент, ковырял протокол плотно).
Если нет данных, в каком режиме что работает, натравите сниффер (Wireshark например) и смотрите, на чём происходит "затык". Еще посмотрите настройки роутера.