Problems registering grandstream 2000 phone outside firewall

I have been having an issue where a grandstream phone has not been able to register on my pbx. It was able to register, but recently it quit.

Here is the log from my pbx:

<— SIP read from UDP://118.101.50.233:5060 —>
REGISTER sip:linuxpbx.inetstpeters.net SIP/2.0
Via: SIP/2.0/UDP 118.101.50.233;branch=z9hG4bK117f5f02752a57f1
From: “2031” sip:2031@linuxpbx.inetstpeters.net;tag=d834ff442f2a958e
To: sip:2031@linuxpbx.inetstpeters.net
Contact: sip:2031@118.101.50.233
Call-ID: 6645f2d54a712829@192.168.0.25
CSeq: 10001 REGISTER
Expires: 3600
User-Agent: Grandstream GXP2000 1.0.2.13
Max-Forwards: 70
Allow: INVITE,ACK,CANCEL,BYE,NOTIFY,REFER,OPTIONS,INFO,SUBSCRIBE,UPDATE,PRACK
Content-Length: 0

<------------->
— (12 headers 0 lines) —
Sending to 118.101.50.233 : 5060 (NAT)
pbxemail*CLI>
<— Transmitting (NAT) to 118.101.50.233:5060 —>
SIP/2.0 401 Unauthorized
Via: SIP/2.0/UDP 118.101.50.233;branch=z9hG4bK117f5f02752a57f1;received=118.101.50.233
From: “2031” sip:2031@linuxpbx.inetstpeters.net;tag=d834ff442f2a958e
To: sip:2031@linuxpbx.inetstpeters.net;tag=as23f94bec
Call-ID: 6645f2d54a712829@192.168.0.25
CSeq: 10001 REGISTER
User-Agent: Asterisk PBX 1.6.0.6
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY
Supported: replaces, timer
WWW-Authenticate: Digest algorithm=MD5, realm=“asterisk”, nonce="0ee34c9f"
Content-Length: 0

<------------>
Scheduling destruction of SIP dialog ‘6645f2d54a712829@192.168.0.25’ in 32000 ms (Method: REGISTER)
pbxemail*CLI>
<— SIP read from UDP://118.101.50.233:5060 —>
REGISTER sip:linuxpbx.inetstpeters.net SIP/2.0
Via: SIP/2.0/UDP 118.101.50.233;branch=z9hG4bK117f5f02752a57f1
From: “2031” sip:2031@linuxpbx.inetstpeters.net;tag=d834ff442f2a958e
To: sip:2031@linuxpbx.inetstpeters.net
Contact: sip:2031@118.101.50.233
Call-ID: 6645f2d54a712829@192.168.0.25
CSeq: 10001 REGISTER
Expires: 3600
User-Agent: Grandstream GXP2000 1.0.2.13
Max-Forwards: 70
Allow: INVITE,ACK,CANCEL,BYE,NOTIFY,REFER,OPTIONS,INFO,SUBSCRIBE,UPDATE,PRACK
Content-Length: 0

<------------->
— (12 headers 0 lines) —
Sending to 118.101.50.233 : 5060 (NAT)

<— Transmitting (NAT) to 118.101.50.233:5060 —>
SIP/2.0 401 Unauthorized
Via: SIP/2.0/UDP 118.101.50.233;branch=z9hG4bK117f5f02752a57f1;received=118.101.50.233
From: “2031” sip:2031@linuxpbx.inetstpeters.net;tag=d834ff442f2a958e
To: sip:2031@linuxpbx.inetstpeters.net;tag=as23f94bec
Call-ID: 6645f2d54a712829@192.168.0.25
CSeq: 10001 REGISTER
User-Agent: Asterisk PBX 1.6.0.6
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY
Supported: replaces, timer
WWW-Authenticate: Digest algorithm=MD5, realm=“asterisk”, nonce="0ee34c9f"
Content-Length: 0

<------------>
Scheduling destruction of SIP dialog ‘6645f2d54a712829@192.168.0.25’ in 32000 ms (Method: REGISTER)

I have natting turned on in my sip.conf file. In the users.conf, the user is setup with nat=yes.

What other things should I check?

Thanks

Eric