Soft phone unregistering

I am having problems with my softphone x-lite unregistering itself after an hour or so… and asterisk will not register them again until i restart asterisk and forcing the host address to be static rather than dynamic

<sip.conf>

[general]
port = 5060
bindaddr = 0.0.0.0
allow = ulaw ; Allow all codecs
context = bogon-calls ; Send SIP callers that we don’t know about here

[2000]
type=friend
username=2000
secret=password
host=dynamic
context=from-sip
mailbox=2000
nat=no
canreinvite=no

[2001]
type=friend
username=2001
secret=password
host=dynamic
context=from-sip
mailbox=2001
nat=no
canreinvite=no

<extensions.conf>
[general]
static=yes
writeprotect=yes
[bogon-calls]

[from-sip]

exten => 2000,1,Dial(SIP/2000,20)
exten => 2000,2,Hangup

exten => 2001,1,Dial(SIP/2001,20)
exten => 2001,2,Hangup