找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 3842|回复: 0

ippbx出现单通故障解决过程总结

[复制链接]
发表于 2022-3-10 19:14:05 | 显示全部楼层 |阅读模式
公司售出的一套ippbx,下联iad,通过sip协议对接e1板卡,e1板通过dss1协议对接公网联通的程控交换机,反馈呼出电话接通后有一段时间被叫听不到声音,但过一段时间能恢复。还有问题是拨号后听到“您说拨打的用户现在不方便接听,请稍后再拨”。9 q3 w( l2 X8 W' f1 o
+ s8 M( h: ~0 K* ^5 b
  远程登录上去抓包,没有抓到现象,用户反馈是偶发现象,为此登录ippbx启动远程抓包服务器,用wireshark对远程设备进行抓包,启动多文件抓包方法。如下图:: p) z3 N6 l1 C. C! o

# a6 u3 o% l4 T: ~" D1 R0 r. T2 o2 O; a

( w% P/ t1 C* n' W7 r  \多文件抓包,每个包50M,进行预过滤,过滤udp port  5060  or  udp  portrange  10000-65500的sip消息和rtp流消息。- r+ d1 b6 ^8 e2 @
; N6 f4 \6 M6 T* P
用户反馈发生故障后,记录了用户的号码和主被叫号码和发生大概时间。找到对应时间的抓包,对抓包进行分析发现,- x. L8 H; e2 R# c# R1 u) W

- ^5 W+ Q9 e" u
( }% S0 T( `: p! V/ Q  ~# C) i; z/ [3 M+ H. w9 \' L! T2 m
是固定电话拨打手机,听一下是那方通话掉了?
; G  p, e, @; q* C/ ~! x
* j+ l, t- h9 s3 J
0 y+ u0 F- d' p4 u" u* o  }- v, `
听到反馈的这次呼叫被叫说一段时间他听不到主机的声音,被叫的声音主叫听听着正常。被叫侧一段时间出现单通。
" ]& z5 q& T  j  b
  L5 j" J# K; L9 J9 |# E但单独听主叫发给被叫的声音,是连续的,没有中断,是e1板没有发出还是对方手机网络或者传输中间环节造成了单通?8 C, [9 p7 s% S" Z
! N4 K0 x) n6 f9 w- o
据此无法判断哪里故障,因为可能e1版有问题,或者手机网络有问题,或者中间经过节点出现了问题?( ^% B; @+ |. h% U
' r) b% Y8 L, }% X1 e: [

! c( c1 B: |6 w2 q: P
# X- f, x) e. l2 p; s5 O0 }; y2 n因为用户仅反馈都是拨打手机出现的问题,无法确定是否是e1板发出的包有丢的还是对方手机网络的问题。! ?9 e! J' M$ h. ?/ R4 ?; y* [

4 k" s# f2 P/ b觉得e1板硬件出问题,应该出去的所以呼叫都会有问题,现在反馈的仅仅是拨打手机出问题。8 P6 U; P* r8 q% c+ W
: a1 q4 n! N! i# x: p; u6 B$ T
没有头绪,不知道怎么查找,因为e1发出的码流无法抓取监听,不能确定e1发出的有没问题?
. h7 G4 O! H, n
4 {  V* Y) P3 n: K; H2 E再去查看拨出“听到无法接通“”提示音的问题,发现下面现象:) Q' J9 O6 i, z9 C) M
8 t# D# }  x) `! x7 f

; }5 u6 [: ?2 a0 u( ^6 ?5 W+ b1 J% M2 F' F( J

2 a7 k$ K7 q- X3 \5 K7 [- p
9 ~( B0 d- T: P2 u! y发现是转给e1板的呼叫没有收到后向消息,等超时后,ippbx给iad放音,释放了呼叫。
$ {1 c8 E9 ~' [3 o
* X6 |' x8 N5 Q! U) A% f转给e1板的消息没有应答,100trying没有收到,5秒超时,ippbx直接给下面的iad放音了,暂时无法接通。  g. \& F. @  h4 |( B0 j
& ?2 \' f# p- K( `5 q9 P0 b
奇怪为什么e1板回invite的响应呢?要么没收到,要么收到了没回?这两种情况。
4 F) v4 A9 L" O. r- ]! A) E8 W
9 s7 ]5 k: Y& G看这几个invite有啥特殊的地方?2 _5 B9 C" V' G+ C' b0 Z, f1 |

4 S( X+ {, W  Y2 Y' a' T% i7 {5 q) B3 k7 X

0 Z  h7 F; Q) u8 \8 R显然不是我司的产品00-0e-5e打头的mac地址。. p* n. W4 [2 K5 D7 l) {  M

1 ^: n& L' J/ g  \& O2 H: W1 U对比正常呼叫的mac地址7 h* c3 [& I' a: |7 ~& y5 T
$ }# `4 |9 |+ o0 F/ f6 Q

0 F+ `4 _0 r% t5 ^% Y( f2 u. G: q
/ a; a  t  N! {& f5 _据此,判断环境中存在两个172.31.234.108的ip地址,造成ippbx把invite消息发给了错误的mac地址,导致e1板没有收到这个invite消息,所以没有响应。当时没有抓arp包,应该是这个设备发出的查询172.31.234.220的mac地址,或者ippbx发出查询172.31.234.108的mac地址,这个冲突的设备回了,导致ippbx的mac地址被更新,导致的故障。
; t! Z! M0 i- u3 l
2 y( q" z! |. F! @检查下面的iad有一个172.31.234.108的设备:
; n& m- N1 I8 e# ]$ X: r- p( b5 S2 {
  H4 s$ N( s5 ~$ C( P

5 v& d! G2 X- i3 V, k8 a+ a让现场更改这个ip地址,防止和e1板冲突,后故障消除。6 K/ h+ v+ Q) ]4 R3 k

7 ?) C9 p: l2 N& Q+ a$ |9 ~8 G改天抓的包里:
6 ]  t2 x1 u% }
- u* c2 x6 o4 k# I  v  s. k! G; Y7 x8 W' [% G& v9 y3 j
  T$ j" L3 J6 {
改成了这个ip地址。
: x2 H. e/ z! G2 g: d1 @- k: ?2 K3 ^# s6 Y5 o
回头再去看单通的问题,发现单通的时间段里,消息发给了错误的mac地址。$ V! z- a+ o8 @( v

& i# N. o' M; }! F6 K: P; l" B) A: C/ R! r
+ |) B1 f1 L& u) [4 t% ?

8 I* y4 _& x8 {' |% z
) [, n, {0 w) Y. X: L7 v1 T) @2 x- E( I% |
" L8 D# P1 e  m: S) _  u

: s$ V' M# q% W- @+ l
( i, i5 n0 Y+ ^* r7 Z* ]2 Z1 p( d; j/ l4 ?: w( r

3 @9 H4 F# a/ ?) `$ b. Y
- r/ g4 F1 d& J" W+ A  k4 @* q& ]+ }
结论:ip冲突导致单通和呼叫不通,arp单播消息导致mac地址被更改为错误的,导致ip层消息发给错误的地方,导致奇怪现象的发生。改天抓的包如下:9 ^, G& a- W4 T' s* K
& B! C# ^. Z3 d' v& A  r7 N  S

6 W5 t* @) T& N+ H6 e
) T, ]5 D/ M4 B) ~5 B  c- B4 ^经验:不是下面那个拨叫不通听提示音的问题,还发现不了是ip冲突,以后遇到此类文件,还真得注意了,抓包要抓arp和sip协议和rtp协议和icmp协议(rtp发错地方会有icmp的提示),这样好排查故障。+ b" C- n- T3 P# h# w

; ]1 z0 n* @7 t& B: j wireshark里的ctrl+f可以快速找到字符串和16进制串,查找rtp的ssrc可以确定一个方向的语音流。sip contains 号码可以快速找到对应的通话流程包。
7 r7 @  g$ H8 W3 \+ T; p5 o* a, ?————————————————" C! Z# Y1 s+ R5 i7 ~$ m2 a$ t
版权声明:本文为CSDN博主「wj31932」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。2 ?) d: W$ l3 |# C) z
原文链接:https://blog.csdn.net/wj31932/article/details/100057318
& e- O* ]; d- ~/ j7 p# v
2 L3 w# G- t- m! x  }2 M  U
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|小黑屋|赛格电脑 华强北 电脑城 南山赛格 龙岗电子世界 龙华电脑城 沙井电脑城 松岗电脑城 pc4g.com ( 粤ICP备16039863号 )

GMT+8, 2026-3-7 03:26 , Processed in 0.117865 second(s), 16 queries .

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表