That sounds like a good plan Jameel. Usually, I don’t see these types of audio issues for systems where all the phones and the pbx are on the same subnet with no NAT between them, especially when it’s not consistent, and assuming there are no IP collisions going on. As for the packet tracing, there are different ways to go about it. I think many like to use tcpdump, but for a simple check of the rtp flow, before digging deeper, I like to use tshark just because I’m used to it.
From the PBX command line, I’d do the following:
[root@freepbx]# tshark host 10.12.21.65
In this example, my phone is at 10.12.21.65, and my PBX is at 10.12.4.11. While tshark is running, I will place a call from my test phone. The output that flies by will look something like:
1 0.000000000 10.12.21.65 → 10.12.4.11 SIP/SDP 1111 Request: INVITE sip:[email protected] |
2 0.018268165 10.12.4.11 → 10.12.21.65 SIP 592 Status: 401 Unauthorized |
3 0.055583814 10.12.21.65 → 10.12.4.11 SIP 407 Request: ACK sip:[email protected] |
4 0.068091626 10.12.21.65 → 10.12.4.11 SIP/SDP 1399 Request: INVITE sip:[email protected] |
5 0.104914332 10.12.4.11 → 10.12.21.65 SIP 394 Status: 100 Trying |
6 1.090579212 10.12.4.11 → 10.12.21.65 SIP 659 Status: 180 Ringing |
7 1.115429589 10.12.4.11 → 10.12.21.65 SIP/XML 1218 Request: NOTIFY sip:[email protected]:5060;ob |
8 1.147347429 10.12.4.11 → 10.12.21.65 SIP 659 Status: 180 Ringing |
9 1.157864282 10.12.21.65 → 10.12.4.11 SIP 590 Status: 200 OK |
10 1.975603976 10.12.21.65 → 10.12.4.11 SIP 566 Request: REGISTER sip:10.12.4.11:5060 |
11 1.977003543 10.12.4.11 → 10.12.21.65 SIP 600 Status: 401 Unauthorized (0 bindings) |
12 1.980277889 10.12.21.65 → 10.12.4.11 SIP 855 Request: REGISTER sip:10.12.4.11:5060 |
13 1.984652942 10.12.4.11 → 10.12.21.65 SIP 546 Status: 200 OK (1 bindings) |
14 2.004116904 10.12.4.11 → 10.12.21.65 SIP 672 Request: NOTIFY sip:[email protected]:5060;ob |
15 2.018600766 10.12.21.65 → 10.12.4.11 SIP 414 Status: 200 OK |
16 2.701966854 10.12.4.11 → 10.12.21.65 SIP/SDP 1096 Status: 200 OK |
17 2.846513984 10.12.4.11 → 10.12.21.65 RTP 214 PT=ITU-T G.722, SSRC=0x64CADBD9, Seq=18456, Time=1976200720
18 2.861299491 10.12.4.11 → 10.12.21.65 RTP 214 PT=ITU-T G.722, SSRC=0x64CADBD9, Seq=18457, Time=1976200880
19 2.870240161 10.12.21.65 → 10.12.4.11 RTP 214 PT=ITU-T G.722, SSRC=0xC06C8722, Seq=62174, Time=2068152745
20 2.875086836 10.12.4.11 → 10.12.21.65 RTP 214 PT=ITU-T G.722, SSRC=0x64CADBD9, Seq=18458, Time=1976201040
21 2.889239405 10.12.21.65 → 10.12.4.11 RTP 214 PT=ITU-T G.722, SSRC=0xC06C8722, Seq=62175, Time=2068152905
22 2.894463921 10.12.4.11 → 10.12.21.65 RTP 214 PT=ITU-T G.722, SSRC=0x64CADBD9, Seq=18459, Time=1976201200
23 2.909481741 10.12.21.65 → 10.12.4.11 RTP 214 PT=ITU-T G.722, SSRC=0xC06C8722, Seq=62176, Time=2068153065
24 2.918681238 10.12.4.11 → 10.12.21.65 RTP 214 PT=ITU-T G.722, SSRC=0x64CADBD9, Seq=18460, Time=1976201360
25 2.929525192 10.12.21.65 → 10.12.4.11 RTP 214 PT=ITU-T G.722, SSRC=0xC06C8722, Seq=62177, Time=2068153225
26 2.945471823 10.12.4.11 → 10.12.21.65 RTP 214 PT=ITU-T G.722, SSRC=0x64CADBD9, Seq=18461, Time=1976201520
27 2.949280087 10.12.21.65 → 10.12.4.11 RTP 214 PT=ITU-T G.722, SSRC=0xC06C8722, Seq=62178, Time=2068153385
28 2.956528507 10.12.4.11 → 10.12.21.65 RTP 214 PT=ITU-T G.722, SSRC=0x64CADBD9, Seq=18462, Time=1976201680
…a lot more of this…
200 4.669428890 10.12.21.65 → 10.12.4.11 RTP 214 PT=ITU-T G.722, SSRC=0xC06C8722, Seq=62264, Time=2068167145
201 4.689204523 10.12.21.65 → 10.12.4.11 RTP 214 PT=ITU-T G.722, SSRC=0xC06C8722, Seq=62265, Time=2068167305
202 4.709188690 10.12.21.65 → 10.12.4.11 RTP 214 PT=ITU-T G.722, SSRC=0xC06C8722, Seq=62266, Time=2068167465
203 4.729021260 10.12.21.65 → 10.12.4.11 RTP 214 PT=ITU-T G.722, SSRC=0xC06C8722, Seq=62267, Time=2068167625
204 4.748711515 10.12.21.65 → 10.12.4.11 RTP 214 PT=ITU-T G.722, SSRC=0xC06C8722, Seq=62268, Time=2068167785
205 4.768801404 10.12.21.65 → 10.12.4.11 RTP 214 PT=ITU-T G.722, SSRC=0xC06C8722, Seq=62269, Time=2068167945
206 4.788601085 10.12.21.65 → 10.12.4.11 RTP 214 PT=ITU-T G.722, SSRC=0xC06C8722, Seq=62270, Time=2068168105
207 4.808806558 10.12.21.65 → 10.12.4.11 RTP 214 PT=ITU-T G.722, SSRC=0xC06C8722, Seq=62271, Time=2068168265
208 4.828580204 10.12.21.65 → 10.12.4.11 RTP 214 PT=ITU-T G.722, SSRC=0xC06C8722, Seq=62272, Time=2068168425
209 4.848547744 10.12.21.65 → 10.12.4.11 RTP 214 PT=ITU-T G.722, SSRC=0xC06C8722, Seq=62273, Time=2068168585
210 4.866766218 10.12.4.11 → 10.12.21.65 SIP 476 Request: BYE sip:[email protected]:5060;ob |
In this example, I can see RTP packets going back and forth between the PBX and phone. In some cases with audio issues, you’d just see the flow going in one direction which can lead to clues as for what to look at next.