I've got a 2851 which functions as a NAT gateway to the Internet as well as running CME 4.1. While I can register phones internally without any trouble to the internal IP, I haven't been successful with doing so to the external global IP on the NAT outside interface.
I can't seem to get to TCP port 2000 on the otuside interface(telnet to this port will time out) however if I add a NAT rule to the internal IP (port 2000 tcp), I can connect - but the phone still won't register.
I have tried changing the ip source-address command under telephony-service but this hasn't solved the problem. I haven't explicitly blocked tcp port 2000 with any ACL.
IOS is 12.4(15)T1.
Please specify here the ACL you're using for NAT, if it's of the type "any any", that is causing lack of registration.
Hope this helps, please rate post if it does!