SIP Client port in INVITE message

Good day, everyone!

Then make call to SIP, i see INVITE message.
For example:

Summary

Session Initiation Protocol (SIP as raw text)
INVITE sip:45077@10.15.81.30 SIP/2.0\r\n
Via: SIP/2.0/TCP 10.1.96.65:39995;branch=z9hG4bKyy3U73Sy0aygN\r\n
Max-Forwards: 70\r\n
From: sip:77772257247@10.15.81.30;tag=y968t478j6tQj\r\n
To: sip:45077@10.15.81.30\r\n
Call-ID: ObPgw3yUySsdES9tuC9x5AG\r\n
CSeq: 983001120 INVITE\r\n
Contact: sip:77772257247@10.1.96.65:39995;transport=tcp\r\n
User-Agent: Janus WebRTC Server SIP Plugin 0.0.9\r\n
Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, REFER, MESSAGE, INFO, NOTIFY\r\n
Supported: replaces\r\n
Content-Type: application/sdp\r\n
Content-Disposition: session\r\n
Content-Length: 795\r\n
\r\n
v=0\r\n
o=- 254732666825406433 4258817811759427564 IN IP4 10.1.96.65\r\n
s=-\r\n
t=0 0\r\n
m=audio 39538 RTP/AVP 111 63 9 0 8 13 110 126\r\n
c=IN IP4 10.1.96.65\r\n
a=rtpmap:111 opus/48000/2\r\n
a=fmtp:111 minptime=10;useinbandfec=1\r\n
a=rtpmap:63 red/48000/2\r\n
a=fmtp:63 111/111\r\n
a=rtpmap:9 G722/8000\r\n
a=rtpmap:0 PCMU/8000\r\n
a=rtpmap:8 PCMA/8000\r\n
a=rtpmap:13 CN/8000\r\n
a=rtpmap:110 telephone-event/48000\r\n
a=rtpmap:126 telephone-event/8000\r\n
a=mid:0\r\n
a=extmap:1 urn:ietf:params:rtp-hdrext:ssrc-audio-level\r\n
a=extmap:2 http://www.webrtc.org/experiments/rtp-hdrext/abs-send-time\r\n
a=extmap:3 http://www.ietf.org/id/draft-holmer-rmcat-transport-wide-cc-extensions-01\r\n
a=extmap:4 urn:ietf:params:rtp-hdrext:sdes:mid\r\n
a=msid:7a7b60f2-6bf2-42ab-9150-93ae4b9f42f5 db27268b-2352-4b9c-8a42-e2d8c17fca93\r\n
a=rtcp-fb:111 transport-cc\r\n

And my question about port in “Via:”

Via: SIP/2.0/TCP 10.1.96.65:39995;branch=z9hG4bKyy3U73Sy0aygN\r\n

Is there a way to control the range from which a given port is selected?

Best Regards, Vitaliy.

1 Like

I don’t think Sofia SIP has a configuration property for setting a port range for signalling. If you can find one, we can add a way to configure it in the plugin.

1 Like

I want to hide janus’s ports from the outside world. I have put a proxy service infront of it, which will talk to janus-gateway server.
I know the rtp port range for sip side, and for webrtc side. I found them in janus.sip.plugin.jcfg and janus.jcfg respectively. I can expose them in the security rules of Ec2 instances.

But what about signalling ports? How do I know which ports to expose so that signalling can be established between janus-gateway and freeswitch running inside another VPC in a private subnet(with VPC peering on).
I think sofia-sip uses this ephemeral port range for signalling-Please correct me if I am wrong.

ubuntu@ip-172-31-90-234:~$ sysctl net.ipv4.ip_local_port_range
net.ipv4.ip_local_port_range = 32768	60999

My next question is, if I have multiple Janus containers running inside the same EC2, then won’t there be a port conflict? How can I assign them separate port ranges?