Issue registering sip accounts

So I have installed asterisk correctly(I think) and created 2 sip accounts and altered the extentions.conf to create a simple dialplan which 2 users should be able to call each other, when whenever I innitate a call I get the following error, can anyone help?

Error:unable to create channel of type ‘SIP’ (cause 20 - Subscriber absent)

Sip.conf:
[general]
context=default
svrlookup=yes

[john]
type=friend
secret=welcome
qualify=yes
nat=no
host=dynamic
canreinvite=no
context=internal

[100]
type=friend
secret=welcome
qualify=yes
nat=no
host=dynamic
canreinvite=no
context=internal

Extentions.conf:
[internal]
exten => 100,1,Dial(SIP/100)
exten => 100,1,Dial(SIP/john)

Server is running in virtual box - ubuntu server 14.04.3
Softphone is zoiper - both accounts showing as registered.

Thank you in advance for any help!

Are they actually behind NAT? They are showing as absent because qualify is set to yes. When set to yes chan_sip will send a request and wait for a response, to make sure they are reachable. In this case it gets no response and marks them as unreachable.