带鉴权信息的SIP呼叫

时间:2023-03-08 17:25:43

带鉴权信息的SIP呼叫

INVITE sip:1000@192.168.50.34SIP/2.0

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-244fd550d2729557-1---d8754z-;rport

Max-Forwards: 70

Contact:<sip:1002@192.168.50.32:2445>

To: <sip:1000@192.168.50.34>

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 1 INVITE

Allow: INVITE, ACK, CANCEL,OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE, INFO

Content-Type: application/sdp

Supported: replaces

User-Agent: Bria Professionalrelease 2.4 stamp 49381

Content-Length: 596

v=0

o=- 1 2 IN IP4 192.168.50.32

s=CounterPath Bria Professional

c=IN IP4 192.168.50.32

t=0 0

m=audio 3564 RTP/AVP 107 119 100106 0 98 8 18 101

a=alt:1 3 : 3RJcASQD J+MIobg5192.168.50.32 3564

a=alt:2 2 : 7O4fx9KR Fs3hXCYf192.168.129.1 3564

a=alt:3 1 : 12zuNFYg Ya4ebcvU192.168.110.1 3564

a=fmtp:18 annexb=yes

a=fmtp:101 0-15

a=rtpmap:107 BV32/16000

a=rtpmap:119 BV32-FEC/16000

a=rtpmap:100 SPEEX/16000

a=rtpmap:106 SPEEX-FEC/16000

a=rtpmap:98 iLBC/8000

a=rtpmap:18 G729/8000

a=rtpmap:101 telephone-event/8000

a=sendrecv

a=x-rtp-session-id:56A9F9BE76774F7C962FD8ACDB1B86E1

发起一路呼叫,终端向server发送INVITE请求消息

Proxy Authentication Required

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-244fd550d2729557-1---d8754z-;rport

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

To:<sip:1000@192.168.50.34>;tag=043de7350

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 1 INVITE

Contact:<sip:1000@192.168.50.34:5060>

Proxy-Authenticate: Digest realm="soft3000",nonce="1dbb0165"

Content-Length: 0

,首先,用户在注冊时,必须带鉴权的认证消息;其次,server端必须开启呼叫鉴权

ACK sip:1000@192.168.50.34 SIP/2.0

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-244fd550d2729557-1---d8754z-;rport

To:<sip:1000@192.168.50.34>;tag=043de7350

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 1 ACK

Content-Length: 0

消息确认,告诉server端,client已经收到

INVITE sip:1000@192.168.50.34SIP/2.0

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-344b5a077e1cc11e-1---d8754z-;rport

Max-Forwards: 70

Contact: <sip:1002@192.168.50.32:2445>

To: <sip:1000@192.168.50.34>

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 2 INVITE

Allow: INVITE, ACK, CANCEL,OPTIONS, BYE, REFER, NOTIFY, MESSAGE, SUBSCRIBE, INFO

Content-Type: application/sdp

Proxy-Authorization: Digestusername="1002",realm="soft3000 ",nonce="1dbb0165",uri="sip:1000@192.168.50.34",response="eb3a7e40a4797c2e7b549a6c30d2d091",algorithm=MD5

Supported: replaces

User-Agent: Bria Professionalrelease 2.4 stamp 49381

Content-Length: 596

v=0

o=- 1 2 IN IP4 192.168.50.32

s=CounterPath Bria Professional

c=IN IP4 192.168.50.32

t=0 0

m=audio 3564 RTP/AVP 107 119 100106 0 98 8 18 101

a=alt:1 3 : 3RJcASQD J+MIobg5192.168.50.32 3564

a=alt:2 2 : 7O4fx9KR Fs3hXCYf 192.168.129.13564

a=alt:3 1 : 12zuNFYg Ya4ebcvU192.168.110.1 3564

a=fmtp:18 annexb=yes

a=fmtp:101 0-15

a=rtpmap:107 BV32/16000

a=rtpmap:119 BV32-FEC/16000

a=rtpmap:100 SPEEX/16000

a=rtpmap:106 SPEEX-FEC/16000

a=rtpmap:98 iLBC/8000

a=rtpmap:18 G729/8000

a=rtpmap:101 telephone-event/8000

a=sendrecv

a=x-rtp-session-id:56A9F9BE76774F7C962FD8ACDB1B86E1

向代理server又一次发起带鉴权的INVITE消息,鉴权信息详见,Proxy-Authorization头域,兴许的呼叫流程和基本呼叫流程一样。

SIP/2.0 100 Trying

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-344b5a077e1cc11e-1---d8754z-;rport

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

To:<sip:1000@192.168.50.34>;tag=118336ef9

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 2 INVITE

Contact:<sip:1000@192.168.50.34:5060>

Content-Length: 0

INVITE sip:1000@192.168.50.32SIP/2.0

Via: SIP/2.0/UDP192.168.50.34:5060;branch=3f50f4d6

From: "1002"<sip:1002@192.168.50.34>;tag=78e8c5c7

Contact:<sip:1002@192.168.50.34:5060>

To: <sip:1000@192.168.50.32>

Call-ID: 13867544773b5f42984898934a7e8ef6ca@2232a8c0

CSeq: 238 INVITE

Max-Forwards: 70

Supported: timer

Session-Expires: 90

Content-Type: application/sdp

Content-Length: 340

v=0

o=root 1062270166 1062270166 IN IP4192.168.50.34

s=session

c=IN IP4 192.168.50.34

t=0 0

m=audio 45294 RTP/AVP 0 8 18 3 114101

a=rtpmap:0 PCMU/8000

a=rtpmap:8 PCMA/8000

a=rtpmap:18 G729/8000

a=rtpmap:3 GSM/8000

a=rtpmap:114 AMR/8000

a=fmtp:114octet-align=1;mode-set=7,0

a=rtpmap:101 telephone-event/8000

a=fmtp:101 0-16

SIP/2.0 100 Trying

Via: SIP/2.0/UDP192.168.50.34:5060;branch=3f50f4d6

From:"1002"<sip:1002@192.168.50.34>;tag=78e8c5c7

To: <sip:1000@192.168.50.32>

Call-ID: 13867544773b5f42984898934a7e8ef6ca@2232a8c0

CSeq: 238 INVITE

Content-Length: 0

SIP/2.0 180 Ringing

Via: SIP/2.0/UDP192.168.50.34:5060;branch=3f50f4d6

From:"1002"<sip:1002@192.168.50.34>;tag=78e8c5c7

To:<sip:1000@192.168.50.32>;tag=97865811

Call-ID: 13867544773b5f42984898934a7e8ef6ca@2232a8c0

CSeq: 238 INVITE

Contact:<sip:1000@192.168.50.32:18553>

Content-Length: 0

SIP/2.0 180 Ringing

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-344b5a077e1cc11e-1---d8754z-;rport

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

To:<sip:1000@192.168.50.34>;tag=118336ef9

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 2 INVITE

Contact:<sip:1000@192.168.50.34:5060>

Content-Length: 0

SIP/2.0 200 OK

Via: SIP/2.0/UDP192.168.50.34:5060;branch=3f50f4d6

From:"1002"<sip:1002@192.168.50.34>;tag=78e8c5c7

To:<sip:1000@192.168.50.32>;tag=97865811

Call-ID:Anta13867544773b5f42984898934a7e8ef6ca@2232a8c0

CSeq: 238 INVITE

Contact:<sip:1000@192.168.50.32:18553>

Allow-Events: telephone-event

Require: timer

Supported: timer

Session-Expires: 90;refresher=uac

Content-Type: application/sdp

Content-Length: 326

v=0

o=192.168.50.32 1074907112788190655 IN IP4 192.168.50.32

s=-

c=IN IP4 192.168.50.32

t=0 0

m=audio 26752 RTP/AVP 0 8 18 3 114101

a=rtpmap:0 PCMU/8000

a=rtpmap:8 PCMA/8000

a=rtpmap:18 G729/8000

a=rtpmap:3 GSM/8000

a=rtpmap:114 AMR/8000

a=fmtp:114 mode-set=0

a=rtpmap:101 telephone-event/8000

a=fmtp:101 0-16

ACK sip:1000@192.168.50.32:18553SIP/2.0

Via: SIP/2.0/UDP192.168.50.34:5060;branch=3f50f4d6

From: "1002"<sip:1002@192.168.50.34>;tag=78e8c5c7

To:<sip:1000@192.168.50.32>;tag=97865811

Call-ID:Anta13867544773b5f42984898934a7e8ef6ca@2232a8c0

CSeq: 238 ACK

Max-Forwards: 70

Content-Length: 0

SIP/2.0 200 OK

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-344b5a077e1cc11e-1---d8754z-;rport

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

To:<sip:1000@192.168.50.34>;tag=118336ef9

Call-ID: OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 2 INVITE

Contact:<sip:1000@192.168.50.34:5060>

Content-Type: application/sdp

Content-Length: 199

v=0

o=root 113824166 113824166 IN IP4192.168.50.34

s=session

c=IN IP4 192.168.50.34

t=0 0

m=audio 41182 RTP/AVP 0 101

a=rtpmap:0 PCMU/8000

a=rtpmap:101 telephone-event/8000

a=fmtp:101 0-16

ACK sip:1000@192.168.50.34:5060SIP/2.0

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-bd168751863dd812-1---d8754z-;rport

Max-Forwards: 70

Contact: <sip:1002@192.168.50.32:2445>

To:<sip:1000@192.168.50.34>;tag=118336ef9

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 2 ACK

Proxy-Authorization: Digestusername="1002",realm="ASG Switch",nonce="1dbb0165",uri="sip:1000@192.168.50.34",response="eb3a7e40a4797c2e7b549a6c30d2d091",algorithm=MD5

User-Agent: Bria Professionalrelease 2.4 stamp 49381

Content-Length: 0

BYE sip:1000@192.168.50.34:5060SIP/2.0

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-61057e021325140c-1---d8754z-;rport

Max-Forwards: 70

Contact:<sip:1002@192.168.50.32:2445>

To:<sip:1000@192.168.50.34>;tag=118336ef9

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

Call-ID:OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 3 BYE

Proxy-Authorization: Digestusername="1002",realm="ASGSwitch",nonce="1dbb0165",uri="sip:1000@192.168.50.34:5060",response="b24a55d3ca4420c406eef5a2797e6411",algorithm=MD5

User-Agent: Bria Professionalrelease 2.4 stamp 49381

Reason: SIP;description="UserHung Up"

Content-Length: 0

SIP/2.0 200 OK

Via: SIP/2.0/UDP192.168.50.32:2445;branch=z9hG4bK-d8754z-61057e021325140c-1---d8754z-;rport

From:"1002"<sip:1002@192.168.50.34>;tag=f2698931

To:<sip:1000@192.168.50.34>;tag=118336ef9

Call-ID: OTUzZGM2MzQ2ODZkM2Q0NTczOTgxZDhlOWY5MjA3ODU.

CSeq: 3 BYE

Contact:<sip:1000@192.168.50.34:5060>

Content-Length: 0

BYE sip:1000@192.168.50.32:18553SIP/2.0

Via: SIP/2.0/UDP192.168.50.34:5060;branch=3f50f4d6

From: "1002"<sip:1002@192.168.50.34>;tag=78e8c5c7

To:<sip:1000@192.168.50.32>;tag=97865811

Call-ID:Anta13867544773b5f42984898934a7e8ef6ca@2232a8c0

CSeq: 239 BYE

Max-Forwards: 70

Content-Length: 0

SIP/2.0 200 OK

Via: SIP/2.0/UDP192.168.50.34:5060;branch=3f50f4d6

From:"1002"<sip:1002@192.168.50.34>;tag=78e8c5c7

To:<sip:1000@192.168.50.32>;tag=97865811

Call-ID:Anta13867544773b5f42984898934a7e8ef6ca@2232a8c0

CSeq: 239 BYE

Content-Length: 0

带鉴权信息的SIP呼叫

消息流程图

发起一路呼叫,终端向server发送INVITE请求消息。

响应,表示代理server要求终端带上鉴权信息。

向server发送INVITE消息,并带上鉴权信息。

回100Trying响应,表示呼叫已经在处理中。

终端转发INVITE请求消息。

向代理server回100Trying响应,告知代理server呼叫正在处理。

振铃,终端向代理server回180ring响应。

转发180ring响应。

向代理server回200OK响应消息,表示连接成功。

转发200OK响应消息。

收到200OK消息后,向代理server发送ACK消息进行确认。

通话建立成功。

挂机,并向代理server发送BYE消息。

收到BYE消息后,向代理server发送200OK消息。

18)通话结束。