Problem with IP address in Asterisk

When Asterisk invites ta destined SIP endpoint, does it always replace “From” IP address in the SIP header with its IP address?

 Because when I use SJphone, it detects that someone with the IP address of the asterisk server is calling instead of the caller IP address. 

 For example, A (10.34.10.14) calls B (10.34.10.15). When B receives a call, it detects that A@[asterisk-server-ip] is calling instead of A@10.34.10.14.

 Is there a way to fix this problem? or this is a normal behavior of Asterisk server???