The res_stun_monitor module sends STUN requests to a configured STUN server periodically. If the monitor detects a change in the external ip or port provided by the STUN server an event is sent out internally within Asterisk
On Mon, Oct 8, 2018 at 5:03 PM Balraj Singh <balraj.si...@zemosolabs.com> wrote: > Ok Steve, thanks for the fast response, looks like it will help me get > more stun debug information. > I have made the required changes and please let me know what to do next > regarding this. Also correct me if I am wrong, regarding getting deeper > level of debug information after adding stunaddr in res_stun_monitor.conf. > > On Tue, Oct 9, 2018 at 1:46 AM Steve W <sw.wilkin...@gmail.com> wrote: > >> Hello Balraj, >> To start, also make stun changes in res_stun_monitor. >> >> On Mon, Oct 8, 2018 at 4:13 PM Balraj Singh <balraj.si...@zemosolabs.com> >> wrote: >> >>> Hi, >>> We have Asterisk Installed on AWS with following configs: >>> Asterisk Version: 15.4.0 with NAT and Gateway. >>> OS: CentOS. >>> >>> The problem we are facing is that we are getting Audio while calling >>> using a SIP Phone connected to our Asterisk using our Local IP. But, we are >>> facing no Audio issue on both sides when calling from an External IP. By >>> External IP I mean, calling from a connection outside of our Infrastructure. >>> >>> So for that, we have configured NAT settings and stun server in >>> pjsip.conf and rtp.conf respectively. But even then we are facing the same >>> problem, NO AUDIO!. >>> By turning on rtp debug on we can see the following logs: >>> >>> Logs while calling from External IP: >>> >>> Sent RTP packet to xxx:xxx:xxx:xxx:50654 <http://157.48.188.116:50654> >>> (type 00, seq 000569, ts 000160, len 000160) >>> Sent RTP packet to xxx:xxx:xxx:xxx:50654 >>> <http://157.48.188.116:50654/> (type 00, seq 000570, ts 000320, len 000160) >>> Sent RTP packet to xxx:xxx:xxx:xxx:50654 >>> <http://157.48.188.116:50654/> (type 00, seq 000571, ts 000480, len 000160) >>> Sent RTP packet to xxx:xxx:xxx:xxx:50654 >>> <http://157.48.188.116:50654/>(type 00, seq 000572, ts 000640, len 000160) >>> Sent RTP packet to xxx:xxx:xxx:xxx:50654 >>> <http://157.48.188.116:50654/> (type 00, seq 000573, ts 000800, len 000160) >>> Sent RTP packet to xxx:xxx:xxx:xxx:50654 >>> <http://157.48.188.116:50654/> (type 00, seq 000574, ts 000960, len 000160) >>> Sent RTP packet to xxx:xxx:xxx:xxx:50654 >>> <http://157.48.188.116:50654/>(type 00, seq 000575, ts 001120, len 000160) >>> Sent RTP packet to xxx:xxx:xxx:xxx:50654 >>> <http://157.48.188.116:50654/> (type 00, seq 000576, ts 001280, len 000160) >>> Sent RTP packet to xxx:xxx:xxx:xxx:50654 >>> <http://157.48.188.116:50654/>(type 00, seq 000577, ts 001440, len 000160) >>> Sent RTP packet to xxx:xxx:xxx:xxx:50654 >>> <http://157.48.188.116:50654/> (type 00, seq 000578, ts 001600, len 000160) >>> >>> Logs while calling from Local / Internal IP: >>> >>> Got RTP packet from xxx:xxx:xxx:xxx:50433 (type 00, seq 006608, ts >>> 3065984412, len 000160) >>> Got RTP packet from xxx:xxx:xxx:xxx:50433 (type 00, seq 006609, ts >>> 3065984572, len 000160) >>> Got RTP packet from xxx:xxx:xxx:xxx:50433 (type 00, seq 006610, ts >>> 3065984732, len 000160) >>> Got RTP packet from xxx:xxx:xxx:xxx:50433 (type 00, seq 006611, ts >>> 3065984892, len 000160) >>> Got RTP packet from xxx:xxx:xxx:xxx:50433 (type 00, seq 006612, ts >>> 3065985052, len 000160) >>> Got RTP packet from xxx:xxx:xxx:xxx:50433 (type 00, seq 006613, ts >>> 3065985212, len 000160) >>> Got RTP packet from xxx:xxx:xxx:xxx:50433 (type 00, seq 006614, ts >>> 3065985372, len 000160) >>> Got RTP packet from xxx:xxx:xxx:xxx:50433 (type 00, seq 006615, ts >>> 3065985532, len 000160) >>> Got RTP packet from xxx:xxx:xxx:xxx:50433 (type 00, seq 006616, ts >>> 3065985692, len 000160) >>> Got RTP packet from xxx:xxx:xxx:xxx:50433 (type 00, seq 006617, ts >>> 3065985852, len 000160) >>> Sent RTP packet to xxx:xxx:xxx:xxx:50433 *(via ICE)* (type 00, seq >>> 027738, ts 000160, len 000170) >>> Sent RTP packet to xxx:xxx:xxx:xxx:50433 *(via ICE)* (type 00, seq >>> 027739, ts 000320, len 000170) >>> Got RTP packet from xxx:xxx:xxx:xxx:50433 (type 00, seq 006618, ts >>> 3065986012, len 000160) >>> Sent RTP packet to xxx:xxx:xxx:xxx:50433 *(via ICE)* (type 00, seq >>> 027740, ts 000480, len 000170) >>> Got RTP packet from xxx:xxx:xxx:xxx:50433 (type 00, seq 006619, ts >>> 3065986172, len 000160) >>> Sent RTP packet to xxx:xxx:xxx:xxx:50433 *(via ICE)* (type 00, seq >>> 027741, ts 000640, len 000170) >>> Got RTP packet from xxx:xxx:xxx:xxx:50433 (type 00, seq 006620, ts >>> 3065986332, len 000160) >>> Sent RTP packet to xxx:xxx:xxx:xxx:50433 *(via ICE)* (type 00, seq >>> 027742, ts 000800, len 000170) >>> Got RTP packet from xxx:xxx:xxx:xxx:50433 (type 00, seq 006621, ts >>> 3065986492, len 000160) >>> Sent RTP packet to xxx:xxx:xxx:xxx:50433 *(via ICE)* (type 00, seq >>> 027743, ts 000960, len 000170) >>> >>> >>> What could go wrong for the difference in log? We are getting audio where >>> we are getting *VIA ICE.* >>> >>> Following is our rtp.conf and pjsip.conf respectively: >>> >>> *rtp.conf* >>> >>> [general]rtpstart=10002rtpend=20000rtcpinterval=9998rtpchecksums=nostrictrtp=noicesupport=yesstunaddr=stun.l.google.com:19302;stunaddr=xx.xx.xx.xx:3478 >>> ; >>> >>> *pjsip.conf* >>> >>> [global] >>> >>> type = global >>> >>> debug = no >>> >>> >>> [transport-udp-nat] >>> >>> type=transport >>> >>> protocol=udp >>> >>> bind=0.0.0.0 >>> >>> local_net=xxx.xxx.xxx.xxx/255.255.255.240 >>> >>> external_media_address=xxx.xxx.xxx.xxx ;public IP of gateway / tried with >>> AWS public IP too >>> >>> external_signaling_address=xxx.xxx.xxx.xxx ; same as external_media_address >>> >>> cert_file=some_pem_file >>> >>> ca_list_file=some_crt_file >>> >>> >>> [transport-udp] >>> >>> type = transport >>> >>> protocol = udp >>> >>> bind = 0.0.0.0:5060 ;tried with 0.0.0.0 too >>> >>> [transport-wss] >>> >>> type=transport >>> >>> protocol=wss >>> >>> bind=0.0.0.0 >>> >>> [transport-tls] >>> >>> type=transport >>> >>> protocol=tls >>> >>> bind=0.0.0.0:8089 ;tried with 0.0.0.0 too >>> >>> cert_file=some_pem_file >>> >>> cipher=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256 >>> >>> priv_key_file=some_priv_key >>> >>> ca_list_file=some_crt_file >>> >>> method=tlsv1 >>> >>> [some_context] >>> >>> type = aor >>> >>> max_contacts = 1 >>> >>> >>> [some_context] >>> >>> type = auth >>> >>> username = user_name >>> >>> password = password >>> >>> >>> [some_context] >>> >>> type=endpoint >>> >>> context=outgoing >>> >>> dtmf_mode=rfc4733 >>> >>> transport=transport-tls >>> >>> transport=transport-udp-nat >>> >>> rtp_symmetric=yes >>> >>> disallow=all >>> >>> allow=ulaw >>> >>> allow=opus >>> >>> ice_support = yes >>> >>> direct_media = no >>> >>> use_avpf = yes >>> >>> auth = some_context >>> >>> outbound_auth=some_context >>> >>> media_encryption=dtls >>> >>> media_use_received_transport=yes >>> >>> dtls_verify = fingerprint >>> >>> dtls_cert_file=some_pem_file >>> >>> dtls_ca_file=some_crt_file >>> >>> dtls_private_key=some_priv_key >>> >>> dtls_cipher=ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256 >>> >>> dtls_setup=actpass >>> >>> rtcp_mux=yes >>> >>> aors = some_context >>> >>> >>> Please help us out. What could go wrong?. Also if some configuration is >>> missing / needs to be changed or need more logs for debugging, please let >>> us know. >>> >>> -- >>> >>> *Thanks, * >>> >>> *Balraj Singh Saini,* >>> *ZeMoSo Technologies.* >>> -- >>> _____________________________________________________________________ >>> -- Bandwidth and Colocation Provided by http://www.api-digital.com -- >>> >>> Astricon is coming up October 9-11! Signup is available at: >>> https://www.asterisk.org/community/astricon-user-conference >>> >>> asterisk-dev mailing list >>> To UNSUBSCRIBE or update options visit: >>> http://lists.digium.com/mailman/listinfo/asterisk-dev >> >> -- >> _____________________________________________________________________ >> -- Bandwidth and Colocation Provided by http://www.api-digital.com -- >> >> Astricon is coming up October 9-11! Signup is available at: >> https://www.asterisk.org/community/astricon-user-conference >> >> asterisk-dev mailing list >> To UNSUBSCRIBE or update options visit: >> http://lists.digium.com/mailman/listinfo/asterisk-dev > > > > -- > *Thanks, * > *Balraj.* > -- > _____________________________________________________________________ > -- Bandwidth and Colocation Provided by http://www.api-digital.com -- > > Astricon is coming up October 9-11! Signup is available at: > https://www.asterisk.org/community/astricon-user-conference > > asterisk-dev mailing list > To UNSUBSCRIBE or update options visit: > http://lists.digium.com/mailman/listinfo/asterisk-dev
-- _____________________________________________________________________ -- Bandwidth and Colocation Provided by http://www.api-digital.com -- Astricon is coming up October 9-11! Signup is available at: https://www.asterisk.org/community/astricon-user-conference asterisk-dev mailing list To UNSUBSCRIBE or update options visit: http://lists.digium.com/mailman/listinfo/asterisk-dev