Hello folks,
I’m fairly new to the topic and I’m trying to wrap my head around all of the concepts that the beautiful and powerful world of SIP offer.
Background
Until now I just had very simple Asterisk setups with two asterisk machines, on public IPs and I was authorizing clients by IP directly in PJSIP
Where I’d want to go
Due to scaling/manageability concerns, I wanted to transition to something in which I didn’t have to spawn a new pair of servers every time a new client is coming up, which led me to Kamailio and Asterisk setup.
I sketched my (partial) understanding before actually going there, trying to catch some early pitfalls.
I’ve a few open questions that I hope you might be able to give a direction:
1) Keep Kamailio simple?
If possible (and suggested), I would like to keep Kamailio as easy as possible, no authorizations, etc… but just provide a disaptcher.lst and forget. Is this possible, is there a good configuration for this?
I saw a ton of “sample” configurations for this but I imagine that the second I start using those, being just sample they give me the impression that they are not robust at all. Do you have any go-to template/github that I should consider?
I was looking https://github.com/dOpensource/dsiprouter but it seems already fairly complex and that tries managing the authentication
The reason is: I like managing all of the PJSIP authorization/configurations through Asterisk due to the PJSIP familiarity I have and flexibility it offers (IP/auth/pointing out servers/inbound vs outbound etc…) since my dialplan are fairly complex.
2) Does Kamailio need RTP_PROXY? Will that bring scalability concerns?
3) If I want to do the authorization in Asterisk, can I avoid putting the Kamailio IPs in PJSIP?
I’m scared that if I put Kamailio IPs, all of the messages going through Kamailio will be authenticated as legit
4) Can my customers just put the Kamailio IPs in their PJSIP? Do they also need the NAT one?
I have inbound and outbound calls. Ideally if I could have all of the communication going through Kamailio, those Ip would be the only ones I should share
Feel free to share any code or github!
I hope this can be an opportunity to share and consolidate some of the learning in this kind of set up since I imagine a few people are going through this learning path
Resources:
PJSIP NAT (but doesn’t consider Kamailio):
https://wiki.asterisk.org/wiki/display/AST/Configuring+res_pjsip+to+work+through+NAT