So I ended up opening all of those ports except 68 & 69, as the phones look for the tftp server on 20001 first anyway...

We have a Cisco router, it has every possible thing you would imagine... Except it cannot NAT map a range of ports, which is ridiculous. I ended up using a know workaround (hack) to map these huge ranges.

Anyway, our IP phones are working so everything looks good...