Here's my setup:
I have trixbox 2.8.0.3 running on a Dell Pentium(R) Dual-Core CPU E5400 @ 2.70GHz.
The server is behind a Netgear Prosafe router/firewall.
The telephones (3) are a Polycom Soundpoint 550s behind a Sonicwall TZ180W, SIP trans is turned off, consistent NAT is turned on.

What happens:
I had quite a time getting these phones to work remotely with an older Sonicwall. The Polycoms would become 'unreachable' after a period of time. I added a couple of lines in the sip.cfg file to make the phones send keepalives, this made them more reliable but the problem wasn't really solved until we upgraded the Sonicwall to a version that had consistent NAT. Now the phones stay registered but when one of the is idle for an hour and is called from a telephone on the servers network I can hear the remote phone but they cannot hear me for up to 10 seconds (this varies) but if I call back the call works on both ends right away.

Global Settings:
----------------
UDP SIP Port: 5060
UDP Bindaddress: 0.0.0.0
TCP SIP Port: Disabled
TLS SIP Port: Disabled
Videosupport: Yes
Textsupport: No
AutoCreate Peer: No
Match Auth Username: No
Allow unknown access: Yes
Allow subscriptions: Yes
Allow overlap dialing: Yes
Allow promsic. redir: No
Enable call counters: No
SIP domain support: No
Realm. auth: No
Our auth realm asterisk
Call to non-local dom.: Yes
URI user is phone no: No
Always auth rejects: Yes
Call limit peers only: Yes
Direct RTP setup: No
User Agent: Asterisk PBX 1.6.0.10-FONCORE-r40
SDP Session Name: Asterisk PBX 1.6.0.10-FONCORE-r40
SDP Owner Name: root
Reg. context: (not set)
Regexten on Qualify: No
Caller ID: Unknown
From: Domain:
Record SIP history: Off
Call Events: Off
T38 fax pt UDPTL: No
SIP realtime: Disabled
Qualify Freq : 60000 ms

Network QoS Settings:
---------------------------
IP ToS SIP: CS3
IP ToS RTP audio: EF
IP ToS RTP video: AF41
IP ToS RTP text: CS0
802.1p CoS SIP: 4
802.1p CoS RTP audio: 5
802.1p CoS RTP video: 6
802.1p CoS RTP text: 5
Jitterbuffer enabled: No
Jitterbuffer forced: No
Jitterbuffer max size: -1
Jitterbuffer resync: -1
Jitterbuffer impl:
Jitterbuffer log: No

Network Settings:
---------------------------
SIP address remapping: Enabled using externip
Externhost:
Externip: xxx.xxx.xxx.xxx:5060
Externrefresh: 10
Internal IP: 127.0.0.1:5060
Localnet: 192.168.1.0/255.255.255.0
STUN server: 0.0.0.0:0

Global Signalling Settings:
---------------------------
Codecs: 0x28000c (ulaw|alaw|h263|h264)
Codec Order: ulaw:20,alaw:20
Relax DTMF: No
RFC2833 Compensation: No
Compact SIP headers: No
RTP Keepalive: 0 (Disabled)
RTP Timeout: 0 (Disabled)
RTP Hold Timeout: 0 (Disabled)
MWI NOTIFY mime type: application/simple-message-summary
DNS SRV lookup: Yes
Pedantic SIP support: No
Reg. min duration 60 secs
Reg. max duration: 3600 secs
Reg. default duration: 120 secs
Outbound reg. timeout: 20 secs
Outbound reg. attempts: 0
Notify ringing state: Yes
Notify hold state: Yes
SIP Transfer mode: open
Max Call Bitrate: 384 kbps
Auto-Framing: No
Outb. proxy:
Session Timers: Accept
Session Refresher: uas
Session Expires: 1800 secs
Session Min-SE: 90 secs
Timer T1: 500
Timer T1 minimum: 100
Timer B: 32000

Default Settings:
-----------------
Context: from-sip-external
Nat: Always
DTMF: rfc2833
Qualify: 0
Use ClientCode: No
Progress inband: Never
Language:
MOH Interpret: default
MOH Suggest:
Voice Mail Extension: *97

Telephone setting:

* Name : 101
Secret :
MD5Secret :
Context : from-internal
Subscr.Cont. :
Language :
AMA flags : Unknown
Transfer mode: open
CallingPres : Presentation Allowed, Not Screened
Callgroup :
Pickupgroup :
Mailbox : 101@default
VM Extension : *97
LastMsgsSent : 32767/65535
Call limit : 50
Dynamic : Yes
Callerid : "device" <101>
MaxCallBR : 384 kbps
Expire : 1076
Insecure : no
Nat : Always
ACL : Yes
T38 pt UDPTL : No
CanReinvite : No
PromiscRedir : No
User=Phone : No
Video Support: Yes
Text Support : No
Trust RPID : No
Send RPID : No
Subscriptions: Yes
Overlap dial : Yes
DTMFmode : rfc2833
Timer T1 : 500
Timer B : 32000
ToHost :
Addr->IP : Sonicwall Public Port 52297
Defaddr->IP : 0.0.0.0 Port 5060
Transport : UDP
Def. Username: 101
SIP Options : (none)
Codecs : 0x28000c (ulaw|alaw|h263|h264)
Codec Order : (ulaw:20,alaw:20)
Auto-Framing : No
100 on REG : No
Status : OK (59 ms)
Useragent : PolycomSoundPointIP-SPIP_550-UA/3.0.4.0061
Reg. Contact : sip:[email protected]:5060
Qualify Freq : 60000 ms
Sess-Timers : Accept
Sess-Refresh : uas
Sess-Expires : 1800 secs
Min-Sess : 90 secs