Sip 如何在kamailio中配置测试用户?

Sip 如何在kamailio中配置测试用户?,sip,voip,sip-server,kamailio,Sip,Voip,Sip Server,Kamailio,我刚刚(第一次)按照指南编译并安装了kamailio。对于配置,我遵循文档 我正在尝试测试一个新的SIP用户。我用以下方法创建了它: » kamctl add test testpasswd 用户在那里: » kamctl db show subscriber |----+----------+--------------------+------------+---------------+----------------------------------+----------------

我刚刚(第一次)按照指南编译并安装了kamailio。对于配置,我遵循文档

我正在尝试测试一个新的SIP用户。我用以下方法创建了它:

» kamctl add test testpasswd
用户在那里:

» kamctl db show subscriber
|----+----------+--------------------+------------+---------------+----------------------------------+----------------------------------+------|
| id | username | domain             | password   | email_address | ha1                              | ha1b                             | rpid |
|----+----------+--------------------+------------+---------------+----------------------------------+----------------------------------+------|
|  5 | test     | tethys.wavilon.net | testpasswd |               | 5cf40781f33c6f43a26244046564b67e | eb898de815bc16092e4c2e8c04bfe188 | NULL |
|----+----------+--------------------+------------+---------------+----------------------------------+----------------------------------+------|
我尝试连接sip客户端,注册超时(
请求超时(408)
)。我已尝试通过以下操作来验证发生了什么:

» kamailio -l <my-ip> -E -ddddd -D 1
kamailio-l-E-DDD-D 1 我看到很多信息,其中一条很有趣:

0(15818) DEBUG: auth [api.c:86]: pre_auth(): auth:pre_auth: Credentials with realm '<my-ip>' not found
0(15818)调试:auth[api.c:86]:pre_auth():auth:pre_auth:未找到域为“”的凭据

但我不知道如何解决这个问题。如何验证配置了哪些与领域
关联的凭据?什么是“王国”?我找不到任何关于
kamailio
的初学者指南。关于如何设置简单的
kamailio
配置,是否有一个简单的操作指南?

kamailio是一个代理。它并不简单,所以如果你想要简单的东西,试着去做。Kamailio配置需要了解SIP

对于这个问题:您在某个地方(在配置文件或数据库中)设置了领域,但没有将其用于注册。可能的解决办法是:

  • 删除域或将其设置为正确的域名(并使用它!)。在默认配置中,这意味着禁用域
  • 使用订户表中所述的
    tethys.wavilon.net

  • 有关更多信息,请访问Kamailio网站并阅读。

    Kamailio是一个代理。它并不简单,所以如果你想要简单的东西,试着去做。Kamailio配置需要了解SIP

    对于这个问题:您在某个地方(在配置文件或数据库中)设置了领域,但没有将其用于注册。可能的解决办法是:

  • 删除域或将其设置为正确的域名(并使用它!)。在默认配置中,这意味着禁用域
  • 使用订户表中所述的
    tethys.wavilon.net

  • 有关更多信息,请访问Kamailio站点并阅读。

    您在问题中粘贴的日志消息是为了调试目的(因此是调试级别),并且可以为没有证书的第一个SIP请求打印(例如,第一个寄存器)——在这种情况下,一切正常。这些请求通过401个回复进行身份验证,然后通过电话在自动化头中使用凭据重新发送

    如果对于那些具有凭据的请求,您没有获得与质询函数参数中使用的域相同的域(例如,www_challenge()、auth_challenge()…),则SIP电话可能配置错误。通常,域与SIP域相同,以确保其唯一性,但这不是必须的。对于默认的kamailio配置,领域是From头URI域

    但是,如果您说您获得了408个注册超时,那么问题可能是其他问题。当找不到与领域匹配的凭据时,将返回401reply,而不是408

    超时的原因可能是寄存器没有到达kamailio或kamailio试图将其发送到其他地方。您应该查看kamailio服务器上的SIP流量,看看会发生什么。您可以为此目的使用ngrep,如:

    ngrep -d any -qt -W byline . port 5060
    

    观察寄存器是否到达kamailio服务器,以及是否试图将其发送到另一个IP。

    您在问题中粘贴的日志消息用于调试目的(因此是调试级别),并且可以为没有证书的第一个SIP请求打印(例如,第一个寄存器)——在这种情况下,一切正常。这些请求通过401个回复进行身份验证,然后通过电话在自动化头中使用凭据重新发送

    如果对于那些具有凭据的请求,您没有获得与质询函数参数中使用的域相同的域(例如,www_challenge()、auth_challenge()…),则SIP电话可能配置错误。通常,域与SIP域相同,以确保其唯一性,但这不是必须的。对于默认的kamailio配置,领域是From头URI域

    但是,如果您说您获得了408个注册超时,那么问题可能是其他问题。当找不到与领域匹配的凭据时,将返回401reply,而不是408

    超时的原因可能是寄存器没有到达kamailio或kamailio试图将其发送到其他地方。您应该查看kamailio服务器上的SIP流量,看看会发生什么。您可以为此目的使用ngrep,如:

    ngrep -d any -qt -W byline . port 5060
    

    观察寄存器是否到达kamailio服务器,以及是否试图将其发送到另一个IP。

    我遇到了同样的问题。我在kamailio.cfg中添加了别名记录,效果很好

    alias="tethys.wavilon.net"
    

    我也有同样的问题。我在kamailio.cfg中添加了别名记录,效果很好

    alias="tethys.wavilon.net"
    

    我从asterisk转到kamailio(对于SIP部分),因为我在asterisk中遇到了NAT问题。我知道kamailio非常复杂,功能丰富,但是一个简单的“hello world”设置将非常有用。我想每个人都想在第一次尝试时使用sip客户端连接到kamailio,所以我希望有一个关于如何为测试用户设置此功能的示例。kamailio上的Nat要复杂得多。默认配置提供了简单的设置,但正如你所说,你有问题。当然,有很多例子。不知道为什么你不能实现任何。有很多教程,包括项目起始页的简单教程:。请注意,正确的nat并不简单。我正在从asterisk移动到kamailio(对于SIP部分),因为我在asterisk中遇到了nat问题。我知道kamailio非常复杂,功能丰富,但是一个简单的“hello world”设置将非常有用。我想每个人都想在第一次尝试时使用sip客户端连接到kamailio,所以我希望有一个关于如何为测试用户设置此功能的示例。kamailio上的Nat要复杂得多。D