Asterisk & 2 softphone in a LAN

I am new in asterisk and I’ve got 2 problems:
this is the configuration I’m tryng:
I’ve got a server asterisk (behind a router); the asterisk is connected to a voip provider; I’ve got 2 softphones: one is connected to the asterisk and the other is connected directly with the voip provider (every softphones has a different account on the voip provider). when I try to call from a hard phone the two number, only the softphone connected to the asterisk rings even if I dialed the number of the softphone connected directly to the provider. I think it’s a problem of address in the SIP messages. But I don’t know what to set.
the second problem is that anyway when I answer the call on the softphone connected to the asterisk I can hear my voice and everything is well… but after about 20 seconds I get an error : the CLI of asterisk says that has been exceeded the numer of retries for the transmission of a critical packet and then the call is stopped.
Can you help me?