A problem about callerid number incoming from sip trunk

Hello everybody,
Please give me a helping hand.
I have two PC with asterisk. And I created a SIP trunk between them, the configuration like this:
host1, sip.conf

            register => fromhost1:password@host2
            [fromhost2]
            type = friend
            username = fromhost1
            fromuser = fromhost1
            language = en
            host = dynamic
            insecure = very
            nat = yes
            qualify = yes
            dtmfmode = auto
            canreinvite = no
            context = fromhost2-sip-incoming
            secret = password
            defaultip = host2

             host2, sip.conf
    
            register => fromhost2:password@host1
            [fromhost1]
            type = friend
            username = fromhost2
            fromuser = fromhost2
            language = en
            host = dynamic
            insecure = very
            nat = yes
            qualify = yes
            dtmfmode = auto
            canreinvite = no
            context = fromhost1-sip-incoming
            secret = password
            defaultip = host1

Now the SIP TRUNK can register successfully, and I can place a call through it. But, the problem is that the callerid number showed on the screen of the called party is not caller’s number but the trunk’s username. So I cannot call back to the real caller.

any suggestion?
Thanks!
BR