Asterisk 星号NAT SIP 2.0未经优化的401场景

Asterisk 星号NAT SIP 2.0未经优化的401场景,asterisk,sip,nat,Asterisk,Sip,Nat,首先,我已经了解了类似的问题,例如: 或 但它们不适用于我的情况,或者解决方案不能解决我的问题 我在站点A上有一个星号为1.8的方框。 站点A有一个公共静态IP和一个本地c类网络192.168.1.X,星号位于NAT后面。 有些电话在同一个本地网络上,而另一些在站点B上。 站点B有另一个公共静态IP和本地c类网络192.168.2.X。 因此,站点B上的电话也支持nat 奇怪的是,站点B上的一些手机可以注册,而另一些则不能。 最有趣的例子是grandstream gxp 2100。 此手机有

首先,我已经了解了类似的问题,例如:

但它们不适用于我的情况,或者解决方案不能解决我的问题

我在站点A上有一个星号为1.8的方框。 站点A有一个公共静态IP和一个本地c类网络192.168.1.X,星号位于NAT后面。 有些电话在同一个本地网络上,而另一些在站点B上。 站点B有另一个公共静态IP和本地c类网络192.168.2.X。 因此,站点B上的电话也支持nat

奇怪的是,站点B上的一些手机可以注册,而另一些则不能。 最有趣的例子是grandstream gxp 2100。 此手机有3个帐户,配置如下:

[1000]
deny=0.0.0.0/0.0.0.0
secret=xxxxxx
dtmfmode=rfc2833
canreinvite=no
context=from-internal
host=dynamic
trustrpid=yes
sendrpid=no
type=friend
nat=yes
port=5060
qualify=3000
qualifyfreq=60
transport=udp
encryption=no
callgroup=
pickupgroup=
dial=SIP/1000
mailbox=1000@device
permit=0.0.0.0/0.0.0.0
callerid=TONY - Lab Line 1 <1000>
callcounter=yes
faxdetect=no
cc_monitor_policy=generic

[3000]
deny=0.0.0.0/0.0.0.0
secret=xxxxxxx
dtmfmode=rfc2833
canreinvite=no
context=from-internal
host=dynamic
trustrpid=yes
sendrpid=no
type=friend
nat=yes
port=5060
qualify=3000
qualifyfreq=60
transport=udp
encryption=no
callgroup=
pickupgroup=
dial=SIP/3000
mailbox=3000@device


[9000]
deny=0.0.0.0/0.0.0.0
secret=xxxxxxxxxxx
dtmfmode=rfc2833
canreinvite=no
context=from-internal
host=dynamic
trustrpid=yes
sendrpid=no
type=friend
nat=yes
port=5060
qualify=3000
qualifyfreq=60
transport=udp
encryption=no
callgroup=
pickupgroup=
dial=SIP/9000
mailbox=9000@device
[1000]
拒绝=0.0.0.0/0.0.0.0
秘密=xxxxxx
dtmfmode=rfc2833
canreinvite=否
上下文=来自内部
主机=动态
trustrpid=yes
sendrpid=no
类型=朋友
nat=是
端口=5060
合格=3000
qualifyfreq=60
传输=udp
加密=否
呼叫组=
皮卡组=
拨号=SIP/1000
信箱=1000@device
许可证=0.0.0.0/0.0.0.0
callerid=TONY-实验室1号线
呼叫计数器=是
传真检测=否
cc_监视器_策略=通用
[3000]
拒绝=0.0.0.0/0.0.0.0
秘密=xxxxxxx
dtmfmode=rfc2833
canreinvite=否
上下文=来自内部
主机=动态
trustrpid=yes
sendrpid=no
类型=朋友
nat=是
端口=5060
合格=3000
qualifyfreq=60
传输=udp
加密=否
呼叫组=
皮卡组=
拨号=SIP/3000
信箱=3000@device
[9000]
拒绝=0.0.0.0/0.0.0.0
秘密=XXXXXXXXXX
dtmfmode=rfc2833
canreinvite=否
上下文=来自内部
主机=动态
trustrpid=yes
sendrpid=no
类型=朋友
nat=是
端口=5060
合格=3000
qualifyfreq=60
传输=udp
加密=否
呼叫组=
皮卡组=
拨号=SIP/9000
信箱=9000@device
只有帐户1000和3000能够注册,而帐户9000遇到以下错误:

<--- SIP read from UDP:95.254.61.X:5064 --->
REGISTER sip:95.231.94.6 SIP/2.0
Via: SIP/2.0/UDP 192.168.2.190:5064;branch=z9hG4bK1380984150;rport
From: <sip:9000@95.231.94.6>;tag=1294836145
To: <sip:9000@95.231.94.6>
Call-ID: 844020207-5064-1@BJC.BGI.C.BJA
CSeq: 2672 REGISTER
Contact: <sip:9000@192.168.2.190:5064>;reg-id=3;+sip.instance="<urn:uuid:00000000-0000-1000-8000-000B8251202A>"
X-Grandstream-PBX: true
Max-Forwards: 70
User-Agent: Grandstream GXP2100 1.0.5.23
Supported: path
Expires: 3600
Allow: INVITE, ACK, OPTIONS, CANCEL, BYE, SUBSCRIBE, NOTIFY, INFO, REFER, UPDATE, MESSAGE
Content-Length: 0

<------------->
--- (14 headers 0 lines) ---
Sending to 95.254.61.X:5064 (NAT)

<--- Transmitting (NAT) to 95.254.61.X:5064 --->
SIP/2.0 401 Unauthorized
Via: SIP/2.0/UDP 192.168.2.190:5064;branch=z9hG4bK1380984150;received=95.254.61.248;rport=5064
From: <sip:9000@95.231.94.6>;tag=1294836145
To: <sip:9000@95.231.94.6>;tag=as54ceb003
Call-ID: 844020207-5064-1@BJC.BGI.C.BJA
CSeq: 2672 REGISTER
Server: FPBX-2.10.1(1.8.21.0)
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY, INFO, PUBLISH
Supported: replaces, timer
WWW-Authenticate: Digest algorithm=MD5, realm="asterisk", nonce="47737672"
Content-Length: 0


<------------>

注册sip:95.231.94.6 sip/2.0
Via:SIP/2.0/UDP 192.168.2.190:5064;分支=z9hG4bK1380984150;港口
发件人:;标签=1294836145
致:
电话号码:844020207-5064-1@BJC.BGI.C.BJA
CSeq:2672寄存器
联系人:;注册id=3+sip.instance=“”
X-Grandstream-PBX:正确
最大前锋:70
用户代理:Grandstream GXP2100 1.0.5.23
支持:路径
有效期:3600
允许:邀请、确认、选项、取消、再见、订阅、通知、信息、参考、更新、消息
内容长度:0
---(14个标题0行)---
发送至95.254.61.X:5064(NAT)
SIP/2.0 401未经授权
Via:SIP/2.0/UDP 192.168.2.190:5064;分支=z9hG4bK1380984150;已接收=95.254.61.248;rport=5064
发件人:;标签=1294836145
致:;标签=as54ceb003
电话号码:844020207-5064-1@BJC.BGI.C.BJA
CSeq:2672寄存器
服务器:FPBX-2.10.1(1.8.21.0)
允许:邀请、确认、取消、选项、再见、参考、订阅、通知、信息、发布
支持:替换、定时器
WWW-Authenticate:Digest algorithm=MD5,realm=“asterisk”,nonce=“47737672”
内容长度:0
您认为是什么导致了此问题?
提前感谢您的支持和帮助

这是星号的正常行为

星号回答与新的nonce数据包不匹配。之后,客户机再次使用该nonce计算的md5sum进行回答


在您的情况下,由于某些原因(nat设置不正确、防火墙等),客户端很可能没有收到该数据包。

哦,谢谢!我可以问一下,为什么在“Via:SIP/2.0/UDP 192.168.2.190:5064”行中,它发送的是内部ip,而不是公共ip“通过用于更好nat遍历的头。这很正常。是的,在手机端进行捕获,以查看手机是否A)收到响应,B)发送带有适当授权标头的新注册。此处指定了身份验证协议: