SIP Without Service Provider

I wrote earlier that a simple UA-UA call without any service provider is not used in practice. But do we really need a service provider if we are satisfied with SIP to SIP VoIP calls?

Outgoing Calls

Depending on the UA, no registration is necessary to initiate outgoing calls.

E.g. the Grandstream SIP phone can be configured to not register an account.

If we type a SIP URI like ‘sip:xxx@yyy.com‘ into our UA and press ‘send’, an INVITE wil be sent out. It might be, that there is a special SIP proxy necessary to reach this SIP URI. Usually the provider’s servers take care to find this out. But today many UAs have the capability to resolve this themselves! It’s just a simple DNS query for the the called SRV record. The SRV record for the SIP service would tell us proxy address and SIP port to be used to contact a specific SIP URI.
After acquiring the SIP proxy, the UA would send the INVITE to xxx@yyy.com e.g. via sipproxy.yyy.com. But in many cases it would be just yyy.com and no SRV query is necessary.

Publicly reachable SIP addresses, provider’s and PBXs, do not authenticate calling UAs. Calls are possible!

Outgoing calls are possible without any subscription or service provider infrastructure! If no special services like PSTN interworking, voice mail, etc, is needed, no third party is necessary for the outgoing call leg, except standard DNS services.

Unfortunately the Grandstream desktop phone has no keyboard to type a full SIP URI. It has just a number keypad and converts the dialed digits into a SIP URI. E.g. the dialed number would be used as the user part of a SIP URI, the domain part of the account / SIP provider as domain part (‘SIP Server’). The dialed number 8012345 used from the account ‘test.com’ would be sent out as ‘sip:8012345@test.com‘.
This scheme is meant for registered phones, the service provider’s server has to analyze the number and make routing decisions.

Outgoing calls calls from an unregistered UA with numeric keypad only can be made in following ways:

1) There might be some programmable keys or an integrated phonebook. Here it’s possible to store some fixed SIP destinations in alphanumeric form.

2) If mainly one or two destinations, who use internally SIP addresses with numeric prefix are to be called, special account’s can be created for those destinations. The Grandstream GXP2020 supports 6 SIP accounts.
E.g. company yyy has a PBX with SIP access. The extensions are reachable under 8xxxxxx@yyy.com. If a special non-registered account with ‘yyy.com’ as SIP server is created, typing 8xxxxxxx on the keypad using the ‘yyy.com’ line, would generate a correct INVITE message. The call would succeed. Potential problem: The caller ID would be something like zzzzz@yyy.com. Of course yyy.com could find out that the caller’s ID is fake and reject the call.

3) Some UAs support even enum queries. In this case the full number, usually in international format, would have to be dialed. The enum query would return a SIP address and normal SIP session setup can take place.

Incoming Calls

Dynamic DNS services allow terminating requests to non-static IP addresses, like behind a DSL. Together with SRV records, SIP requests can be directed to the correct IP and port.

Special attention in this scenario has to be paid to NAT routers. Because there is not provider support and mechanism to get across NAT, port forwarding needs to be configured for each SIP device behind the NAT router.

Conclusion

SIP to SIP calls are possible without any service provider. There are some limits for desktop phones without alphanumeric keypad.

Nevertheless, there are numerous service providers which offer SIP to SIP for free and make dialing more comfortable, especially for desktop phones, plus offer other services.

Providerless SIP phone calls are more of an experimental nature. But this shows that consumers get more independent of traditional telephony service providers. Decentralized services are thinkable.

Loading

You may also like...

Leave a Reply

Your email address will not be published. Required fields are marked *