This is the manual for GNU Gatekeeper 5.5.
An English manual for your version is in your GnuGk download archive.

Chapters: Contents · Introduction · Installation · Getting started · Basic Config · Routed Mode & Proxy · Routing · RAS Config · Authentication · Accounting · Neighbors · Per Endpoint Config · Advanced Config · Monitoring · Advanced Topics

Download GnuGk    Get support

The GNU Gatekeeper Manual Chapter 7

7. RAS 配置

7.1 [ReplyToRasAddress]

从端点到网守的信令消息(GatekeeperRequest,RegistrationRequest and InfoRequestResponse)包含rasAddress元素 ,端点告诉网守将这些响应的消息发送到目的地。 默认情况下,GnuGk将忽略该地址,并响应从其接收请求的IP和端口。原因是某些端点依赖于此项,如在某些情况下,使用NAT,则若将响应发送到另一个IP和端口, 则该响应可能不会到达发送方。一般,端点无论如何都会从其RAS端口发送RAS消息,都没有区别。

本部分允许自定义GnuGk接收到的消息中,何时使用rasAddress,而不是接收消息的地址。

句法:

network=True|False

该网络由IP加上可选的CIDR指定,例如,192.168.1.0/24。网络指定从其接收RAS消息的IP,该设置指定是否使用rasAddress。 默认是不使用它。使用网络掩码最长的网络规则(最具体)。

例:

在此示例中,来自192.168.0.0/18的消息将使用rasAddress,但来自192.168.4.0/24网络的消息除外。

[ReplyToRasAddress]
192.168.0.0/18=True
192.168.4.0/24=False

7.2 [RasSrv::GWPrefixes]

本部分配置如何将拨打的E.164号码路由到指定网关。

Format:

gw-alias=prefix[:=priority][,prefix[:=priority],...]

注意,必须指定网关的别名,若网关已使用指定的别名注册,则所有以前缀开头的数字都将路由到该网关。 特殊字符 . and ! 可在此处用于匹配任何数字或禁用前缀。可为每个网关的每个前缀赋予一个优先级(using := syntax), 若多个网关与所拨打的号码匹配,则会选择前缀优先级最高的网关来路由呼叫(当ActivateFailover开关为ON时, 呼叫将按照前缀优先级的顺序路由到所有选定的网关)。较小的值对应较高的优先级。默认值为1。 若前缀优先级与GatewayPriority重复(请参阅 [EP::...]部分),则将优先使用前缀优先级。

在以下示例中,网关"test-gw"将负责优先级为3的前缀"02" 和 "03",以及优先级为1的前缀 "04"。

例:

test-gw=02,03:=3,04:=1

7.3 [RasSrv::PermanentEndpoints]

在本节中,可配置不支持RAS或不想过期的端点。他们的记录将始终保留在GK的注册列表中。但仍然可以通过控制端口取消注册。特殊字符. and ! 可以在此处与前缀一起使用,以匹配任何数字并禁用前缀。 可使用:= 语法以与 [RasSrv::GWPrefixes] 部分相同的方式设置前缀优先级。

确保为所有网关至少添加一个前缀,即使在其他位置(例如[EP::...]部分中分配了前缀)也是如此,否则端点将不被视为网关,并且这些设置也不会被视为网关申请!

网关条目还可以选择包含与网关记录一起存储的供应商信息

Format:

IP[:port]=alias[,alias,...;prefix[:=priority][,prefix[:=priority]]...;[vendor,product]

例:

对于网关,

10.0.1.5=MyGW;009,008:=2,0.7:=3
10.0.1.5=MyGW;009,008:=2,0.7:=3;yate,4.1.0
对于终端,
10.0.1.10:1720=700

7.4 [RasSrv::RRQFeatures]

  • AcceptEndpointIdentifier=1
    默认:1

    是否接受完整RRQ中指定的endpointIdentifier

  • AcceptGatewayPrefixes=1
    默认:1

    网关可以通过在RRQ的terminalType字段中发送supportedPrefixes 向网守注册其前缀。 此选项定义是否接受网关的指定前缀。

  • AcceptMCUPrefixes=1
    默认:1

    MCU可以通过在RRQ的terminalType字段中发送supportedPrefixes向网守注册其前缀。 此选项定义是否接受MCU的指定前缀。

  • OverwriteEPOnSameAddress=1
    默认:0

    有些网络中,端点的IP地址可能会意外更改。当端点使用PPP连接(例如调制解调器或ADSL)时,可能会发生这种情况。 此选项定义了如何处理与我们存储的IP地址不匹配的IP地址的注册请求(RRQ)。默认操作是拒绝请求。 启用此选项后,冲突的请求将导致针对现有IP地址发送注销请求(URQ),并删除条目,从而允许端点向新地址注册。

  • IRQPollCount=0
    默认:1

    当网守在TimeToLive时间段内未从端点接收到保持活动的RRQ时,它将发送IRQ消息以“轮询”端点并检查其是否还处于活动状态。 发送IRQPollCount消息且未收到任何答复后,将取消注册端点。要禁用此功能(并在TimeToLive超时后立即注销端点), 请将此值设置为0。IRQ轮询间隔为60秒

  • SupportDynamicIP=1
    默认:0

    当端点的IP地址更改时,网守可以保持注册。若IP地址更改,这将强制EP完全重新注册。

  • AccHTTPLink=https://billing.mysite.com?account=%a&password=%p
    默认:N/A

    可以为客户分配一个URL,以供其查看账单信息。若用PacPhone,还可以添加通配符供客户端使用,以便客户端H323ID和密码可用于直接访问其帐户信息。 %a - H323ID %p - password

  • AliasTypeFilter=terminal;h323id,dialeddigits
    默认:N/A

    在端点发送多个H225_AliasAddress且某些别名在多个注册之间共享的情况下,请使用此设置。可以过滤出任何给定端点类型的共享别名类型。 这些注册将保留过滤器设置中列出的所有别名类型,并删除所有其他类型。 每个端点类型必须具有单独的AliasTypeFilter条目。 有效的端点类型是:网守,网关,mcu和终端。有效过滤器为:h323id,拨号数字,URL,传输,电子邮件和会议室号码。 注意:若未找到与过滤器匹配的别名,则将注册所有别名。

  • GatewayAssignAliases=0
    默认:1

    若已配置AssignedAliases::SQL,则将分配应用于网关注册(默认)。当将此开关设置为0时,可以将其与网关一起使用additionalRegistration, 以便在注册时不会全部分配assignedAliases,而仅在进行additiveRegistration时才分配。这样可以确保仅当前注册的端点出现在端点列表中。

  • AuthenticatedAliasesOnly=1
    默认:0

    在注册期间,此开关将删除所有未通过身份验证的TerminalAliases。 支持的身份验证模块是SQLAuth,SimplePasswordAuth和SQLPasswordAuth。

7.5 [RasSrv::ARQFeatures]

  • ArjReasonRouteCallToGatekeeper=1
    默认:1

    若启用,则网守将拒绝应答的ARQ,而不会在CallTable中找到已存在的CallRec,原因是路由模式下的routeCallToGatekeeper。端点应立即释放呼叫,然后将呼叫建立重新发送给网守。

  • RemoveTrailingChar=#
    默认:(space)

    destinationInfo中指定要删除的结尾字符。例如,若端点在destinationInfo中错误地包含终止符(如,‘#’),则可以使用此选项将其删除。

    此开关也适用于未注册的呼叫。

  • RoundRobinGateways=0
    默认:1

    若有多个网关与拨打的号码匹配,则启用/禁用循环网关选择。若禁用,将选择第一个可用网关。否则,后续呼叫将以循环方式发送到网关。

    此开关也适用于未注册的呼叫。

  • LeastUsedRouting=1
    默认:0

    路由呼叫时选择最少使用的网关,以实现更均匀的使用。 此开关在逻辑上与轮询不兼容。

    此开关也适用于未注册的呼叫。

  • SendRIP=9000
    默认:0

    收到ARQ后,发送带有此延迟值的RequestInProgress (RIP)消息。此开关可用于延长呼叫者等待应答的持续时间。当延迟ist设置为0时,不发送RIP。

  • CheckSenderIP=1
    默认:0

    验证ARQ是从与RRQ相同的IP发送的。

7.6 [RasSrv::AssignedAlias]

这允许根据H323ID或注册端点的显示源IP地址分配网守。检查GRQ中收到的H323ID,以查看其是否具有分配的网守的前缀或IP是否在分配的网守的范围内。 然后,建议GCF中的端点向该网守注册。一个特定的前缀可能有多个网守。第一个被分配为主数据库,其他则为备用数据库。(需要H.323v6)

例:

[RasSrv::AssignedAlias]
1234=3323465777,[email protected] 

7.7 [AssignedAliases::SQL]

本节将GnuGk配置为从数据库读取分配的别名。可使用 [SQLPasswordAuth]中定义的相同数据库参数。

  • Query=SELECT ...
    默认:N/A

    定义用于从数据库检索分配的网守的SQL查询。

    定义了一个参数:

    • %u - 端点别名

    示例查询字符串:

    SELECT assignedalias FROM users WHERE alias = '%u' AND active
    

7.8 [RasSrv::AlternateGatekeeper]

本部分允许你从[Gatekeeper::Main]部分覆盖某些IP或IP范围的 AlternateGKs全局定义。 有关配置选项的详细定义,请参见此处。

该网络由IP加上可选的CIDR指定,例如,192.168.1.0/24。使用网络掩码最长的网络规则(最具体)。

例:

在此示例中,192.168.1.10被分配了GnuGk10作为备用网守,而192.168.0.0/18网络的其余部分将使用GnuGk4。所有其他网络中的端点将使用全局定义的备用网守。

[RasSrv::AlternateGatekeeper]
192.168.0.0/18=1.2.3.4;1719;true;1;GnuGk4
192.168.1.10=1.2.3.10;1719;true;1;GnuGk10

7.9 [RasSrv::AssignedGatekeeper]

这允许根据H323ID或注册端点的显示源IP地址分配网守。检查GRQ中收到的H323ID,以查看其是否具有分配的网守的前缀或IP是否在分配的网守的范围内。 然后,建议GCF中的端点向该网守注册。一个特定的前缀可能有多个网守。第一个被分配为主数据库,其他则为备用数据库。(需要H.323v6)

示例:

[RasSrv::AssignedGatekeeper]
;;对于别名以01234开头的端点
01234=192.168.1.100:1719
;;对于以999开头的别名的端点
999=[2a01:4f8:61:2243::99]:1719
;;适用于195.71.129.0/24或195.71.131.0/24范围内的端点
^195\.71\.(129|131)\.[0-9]+$=10.10.0.5:1719
;;对于以^2a01拖皮的端点:
^2a01:=[2a01:4f8:61:2243::199]:1719

7.10 [AssignedGatekeepers::SQL]

本部分允许 GnuGk从数据库读取分配的网守。 可使用 [SQLPasswordAuth]中定义的相同数据库参数。

  • Query=SELECT ...
    默认:N/A

    定义用于从数据库检索分配的网守的SQL查询。

    定义了以下参数:

    • %u - 端点别名
    • %i - 端点IP
    • %g - GK ID

    示例查询字符串

    SELECT assignedgatekeeper FROM users WHERE alias = '%u' AND active
    

7.11 [AlternateGatekeepers::SQL]

本部分允许 GnuGk从数据库中读取备用网守。 可使用 [SQLPasswordAuth]中定义的相同数据库参数。

  • Query=SELECT ...
    默认:N/A

    定义用于从数据库检索备用网守的SQL查询。

    示例查询字符串: One parameter is defined:

    • %i - endpoint IP

    Sample query string:

    SELECT alternategatekeeper FROM users WHERE ip = '%i' AND active
    

7.12 [AssignedLanguage::SQL]

本节将GnuGk配置为从数据库读取分配的语言。可使用 [SQLPasswordAuth]中定义的相同数据库参数。

  • Query=SELECT ...
    默认:N/A

    定义用于从数据库检索分配的语言的SQL查询。

    定义了一个参数:

    • %u - 端点别名

    示例查询字符串:

    SELECT assignedlanguage FROM users WHERE alias = '%u' AND active
    

7.13 [NATedEndpoints]

网守可以自动检测端点是否在NAT之后。 若检测失败,则可以在本节中手动指定它。

Format:

alias=true | yes | 1

例:

指定别名为601的端点在NAT之后。

601=true

7.14 [GkPresence::SQL]

H323 SQL Presence系统:高度实验性使用 公共数据库配置选项 来定义此模块的数据库连接。

  • IncrementalUpdate=1
    默认:0

    是否轮询数据库以检查状态更新

  • UpdateWorkerTimer=10
    默认:5

    更新H.460状态信息之间的Sleep时间。

  • QueryList=SELECT ...
    默认:N/A

    定义用于执行数据库查询以检索联系人信息的SQL查询(顺序很重要)

    • %i - 在外部创建状态标识符GUID值。
    • %u - 存在信息所属的别名
    • %a - 联系人别名
    • %s - 是订阅用户(默认值应为0)
    • %b - 联系指示值 0-subscribe 1-unsubscribe 2-block 3-unblock 4-waiting approval
    • %y - 指令是否有效(默认值应为1)
    • %z - 更新时间(应该是当前的UNIX时间)
    • %d - 显示名称或相对较友好的别名名称(可选)
    • %v - 联系人URL的路径(可选)
    • %c - 联系人类别(可选)values 0-Audio 1-Video 2-data 3-H.239 4-generic
    • %t - 用于查询的增量时间戳 (set by Gatekeeper)

    示例 QueryList=SELECT subscriptionID,h323id,alias,0,status,1,updated,display,avatar,category FROM subscription WHERE timestamp > '%t' ORDER BY h323id,alias

  • QueryAdd=INSERT ...
    默认:N/A

    定义SQL查询以将联系人记录添加到数据库 示例 QueryAdd=INSERT INTO subscription (subscriptionID,h323id,alias,isSubscriber,display) VALUES('%i','%u','%a','%s', '%d');

  • QueryDelete=Delete ...
    默认:N/A

    定义SQL查询以从数据库中删除联系人 示例 QueryDelete=DELETE FROM subscription WHERE subscriptionID = '%i'

    item>QueryUpdate=UPDATE ...
    默认:N/A

    定义SQL查询以更新联系人记录状态 示例 QueryUpdate=UPDATE subscription SET status = '%b' WHERE subscriptionID = '%i'


Next Previous Contents

Chapters: Contents · Introduction · Installation · Getting started · Basic Config · Routed Mode & Proxy · Routing · RAS Config · Authentication · Accounting · Neighbors · Per Endpoint Config · Advanced Config · Monitoring · Advanced Topics



Last updated: 21. Jan 2025