You didn't reveal the app so I can't do more than write it's true. Many of these apps pick a random port then for the TRACKER they send where your server is at and what port. Your app may have a setting to lock the port down.
Now to the wayback machine. We're going to change it soon but for file pickup we are still running old FTP servers. Fixed location, low overhead and cheap are the reasons.
I need to dedicate a UDP and TCP address to a file sharing program. When I enter my Fios Router forwarding section, there is a list of 13 addresses. The first is titled local host. The next four are the only ones with a check box for applying or deleting. The first two of these are both 192.168.1.5; one directs TCP to 4662 and the other direct UDP to 4672. The next two both have address 192.168.1.199. The remaining addresses, which I have ignored all have TR69_001 in their titles. I find that if I assign the UDP and TCP to the 192.168.1.199 address as 4660 and 4670 respectively, that I get a full throttle connection. However, every morning that connection is tampered down. I then go back into port forwarding, delete the two settings for UDP and TCP, and then when I use the pull down menu for available addresses, I am now only able to select 192.168.1.200 and I have to assign 4680 and 4690. The next day it will be 192.168.1.201, and so on. How do I assign an address and make it stick??

Chowhound
Comic Vine
GameFAQs
GameSpot
Giant Bomb
TechRepublic