Hello, I want to ask you to help me
resolve configuration problem with my application. I’m thinking about
using GnuGK in my company to serve company calls. But there is a problem that I
was unable to solve even when I read manual couple of times and searched the
net for solution. The company is using external
ISP for VoIP calls and I need to link somehow GK (GnuGK) in the company with external one. So I used option of GK to act
as endpoint [Endpoint] Section. This works well I’m able to authorize
with parent GK or even place calls (I can’t imagine why this is possible)
but company is using NAT box ( I hate this :) and this is causing the GK to
send local IP address in RRQ and not the public one. This behavior is making
trouble later. I tried to set config NetworkInterfaces to the local network + IP of NAT box,
this doesn’t work. The GK again used local IP in RRQ, so I tried to use
only IP of NAT box, this forced GK to use IP of NAT box in RRQ but prevented
endpoints in the local network to work correctly because of use external IP in
all control traffic even local. When I searched the net I
found many articles about supporting NATed endpoints,
but nothing about NATed child GK (GnuGK)
support. The picture of topology used
is in attachments also the configuration file used, output of GnuGK process and capture file by Ethereal. |
Attachment:
topology.jpg
Description: JPEG image
Attachment:
gatekeeper.ini
Description: Binary data
debko:/var/www# gnugk --config /etc/gatekeeper.ini -tt 2004/11/10 00:23:40.000 2 singleton.cxx(28) Create instance: Toolkit(1) 2004/11/10 00:23:40.144 2 Toolkit.cxx(83) Network=216.51.232.100/255.255.255.255, IP=192.168.120.32 2004/11/10 00:23:40.172 2 Toolkit.cxx(83) Network=217.172.148.1/255.255.255.255, IP=192.168.120.32 2004/11/10 00:23:40.216 2 Toolkit.cxx(83) Network=192.168.120.0/255.255.255.0, IP=192.168.120.32 2004/11/10 00:23:40.235 2 Toolkit.cxx(84) Default IP=192.168.120.32 2004/11/10 00:23:40.250 2 Toolkit.cxx(156) GK H.323 Proxy enabled 2004/11/10 00:23:40.259 2 Toolkit.cxx(169) GK Internal Network 0 = 192.168.120.0/255.255.255.0 2004/11/10 00:23:40.264 2 Toolkit.cxx(399) GK Loaded per GW rewrite data: 2004/11/10 00:23:40.268 2 Toolkit.cxx(402) GK No per GW data loaded OpenH323 Gatekeeper - The GNU Gatekeeper with ID 'OpenH323GK' started Gatekeeper(GNU) Version(2.2.0) Ext(pthreads=1,radius=1,mysql=1,pgsql=0,large_fdset=0) Build(Nov 4 2004, 20:49:09) Sys(Linux i686 2.2.20-idepci) 2004/11/10 00:23:40.275 1 gk.cxx(470) OpenH323 Gatekeeper - The GNU Gatekeeper with ID 'OpenH323GK' started Gatekeeper(GNU) Version(2.2.0) Ext(pthreads=1,radius=1,mysql=1,pgsql=0,large_fdset=0) Build(Nov 4 2004, 20:49:09) Sys(Linux i686 2.2.20-idepci) Listen on 192.168.120.32,127.0.0.1 This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. 2004/11/10 00:23:40.288 2 singleton.cxx(28) Create instance: CallTable(2) Disable Bandwidth Management 2004/11/10 00:23:40.292 2 gk.cxx(508) GK TimeToLive for Registrations: 300 2004/11/10 00:23:40.296 2 singleton.cxx(28) Create instance: RasServer(3) 2004/11/10 00:23:40.333 2 ProxyChannel.cxx(77) RTPPortRange: 10000-59999 2004/11/10 00:23:40.338 2 singleton.cxx(28) Create instance: Agent(4) 2004/11/10 00:23:40.342 2 RasSrv.cxx(683) GK Using Routed Signalling 2004/11/10 00:23:40.346 2 RasSrv.cxx(684) GK H.245 Routed Disabled 2004/11/10 00:23:40.350 2 singleton.cxx(28) Create instance: GkStatus(5) 2004/11/10 00:23:40.356 2 singleton.cxx(28) Create instance: RegistrationTable(6) 2004/11/10 00:23:40.364 2 RasSrv.cxx(720) GK Home = 192.168.120.32,127.0.0.1 2004/11/10 00:23:40.369 1 RasSrv.cxx(471) Listening to 192.168.120.32:1719(U) 2004/11/10 00:23:40.375 1 RasSrv.cxx(471) Listening to 192.168.120.32:1718(Mcast) 2004/11/10 00:23:40.382 1 RasSrv.cxx(471) Listening to 192.168.120.32:1721 2004/11/10 00:23:40.387 1 RasSrv.cxx(471) Listening to 192.168.120.32:8000 2004/11/10 00:23:40.393 1 RasSrv.cxx(471) Listening to 127.0.0.1:1719(U) 2004/11/10 00:23:40.397 1 RasSrv.cxx(471) Listening to 127.0.0.1:1721 2004/11/10 00:23:40.402 1 RasSrv.cxx(471) Listening to 127.0.0.1:8000 2004/11/10 00:23:40.407 1 RasSrv.cxx(779) RAS Add broadcast listener 2004/11/10 00:23:40.810 1 gkauth.cxx(327) GKAUTH default rule added to check RAS: ARQ BRQ DRQ GRQ IRQ LRQ RRQ URQ, OTHER: SETUP SETUPUNREG 2004/11/10 00:23:40.831 1 gkacct.cxx(181) GKACCT Created module SQLAcct with event mask 7 2004/11/10 00:23:40.849 2 Routing.cxx(472) VQueue (CTI) Virtual queues enabled (aliases:CC), request timeout: 10 s 2004/11/10 00:23:40.855 2 singleton.cxx(28) Create instance: Routing::Analyzer(7) 2004/11/10 00:23:40.862 1 Routing.cxx(147) RoutingPolicy::OnARQ add policy internal,parent for prefix * 2004/11/10 00:23:40.891 1 Routing.cxx(147) RoutingPolicy::OnLRQ add policy internal,parent for prefix * 2004/11/10 00:23:40.907 1 Routing.cxx(147) RoutingPolicy::OnSetup add policy internal,parent for prefix * 2004/11/10 00:23:40.919 1 Routing.cxx(147) RoutingPolicy::OnFacility add policy internal,parent for prefix * 2004/11/10 00:23:40.925 2 gkacct.cxx(936) GKACCT Successfully logged event 8 2004/11/10 00:23:40.966 2 RasSrv.cxx(152) RAS Read from 192.168.120.100:59167 2004/11/10 00:23:41.072 2 RasSrv.cxx(193) RAS Received RRQ 2004/11/10 00:23:41.115 1 RasSrv.cxx(312) RAS RRQ Received 2004/11/10 00:23:41.153 1 RasTbl.cxx(64) New EP|192.168.120.100:1720|201:dialedDigits|terminal|6265_endp 2004/11/10 00:23:41.222 2 RasSrv.cxx(357) RCF|192.168.120.100:1720|201:dialedDigits|terminal|6265_endp; 2004/11/10 00:23:41.227 2 RasSrv.cxx(205) RAS Send RCF to 192.168.120.100:59167 2004/11/10 00:23:42.081 2 RasSrv.cxx(205) RAS Send RRQ to 62.65.191.19:1719 2004/11/10 00:23:42.132 2 RasSrv.cxx(152) RAS Read from 62.65.191.19:1719 2004/11/10 00:23:42.141 2 RasSrv.cxx(193) RAS Received RCF 2004/11/10 00:23:42.144 2 RasSrv.cxx(1222) RAS Trapped RCF 2004/11/10 00:23:42.149 2 GkClient.cxx(840) GKC Register with 62.65.191.19:1719 successfully 2004/11/10 00:24:04.671 2 RasSrv.cxx(152) RAS Read from 192.168.120.32:2117 2004/11/10 00:24:04.675 2 RasSrv.cxx(193) RAS Received GRQ 2004/11/10 00:24:04.676 1 RasSrv.cxx(312) RAS GRQ Received 2004/11/10 00:24:04.679 2 RasSrv.cxx(357) GCF|192.168.120.32|100:dialedDigits|terminal; 2004/11/10 00:24:04.681 2 RasSrv.cxx(205) RAS Send GCF to 192.168.120.32:2117 2004/11/10 00:24:04.734 2 RasSrv.cxx(152) RAS Read from 192.168.120.32:2117 2004/11/10 00:24:04.747 2 RasSrv.cxx(193) RAS Received RRQ 2004/11/10 00:24:04.748 1 RasSrv.cxx(312) RAS RRQ Received 2004/11/10 00:24:04.754 1 RasTbl.cxx(64) New EP|192.168.120.32:1720|100:dialedDigits|terminal|6266_endp 2004/11/10 00:24:04.764 2 RasSrv.cxx(357) RCF|192.168.120.32:1720|100:dialedDigits|terminal|6266_endp; 2004/11/10 00:24:04.771 2 RasSrv.cxx(205) RAS Send RCF to 192.168.120.32:2117 2004/11/10 00:24:05.077 2 RasSrv.cxx(152) RAS Read from 192.168.120.32:2117 2004/11/10 00:24:05.083 2 RasSrv.cxx(193) RAS Received ARQ 2004/11/10 00:24:05.085 1 RasSrv.cxx(312) RAS ARQ Received 2004/11/10 00:24:05.100 2 RasSrv.cxx(205) RAS Send ARQ to 62.65.191.19:1719 2004/11/10 00:24:05.142 2 RasSrv.cxx(152) RAS Read from 62.65.191.19:1719 2004/11/10 00:24:05.159 2 RasSrv.cxx(193) RAS Received ACF 2004/11/10 00:24:05.171 2 RasSrv.cxx(1222) RAS Trapped ACF 2004/11/10 00:24:05.180 2 RasTbl.cxx(1855) CallTable::Insert(CALL) Call No. 1, total sessions : 1 2004/11/10 00:24:05.183 2 RasSrv.cxx(357) ACF|192.168.120.32:1720|6266_endp|23629|0904525784:dialedDigits|100:dialedDigits|false; 2004/11/10 00:24:05.185 2 RasSrv.cxx(205) RAS Send ACF to 192.168.120.32:2117 2004/11/10 00:24:06.352 2 RasSrv.cxx(152) RAS Read from 192.168.120.32:2117 2004/11/10 00:24:06.361 2 RasSrv.cxx(193) RAS Received IRR 2004/11/10 00:24:06.363 2 gkacct.cxx(936) GKACCT Successfully logged event 1 for call no. 1 2004/11/10 00:24:06.731 1 RasSrv.cxx(312) RAS IRR Received 2004/11/10 00:24:16.987 2 RasTbl.cxx(2026) CDR ignore not connected call 2004/11/10 00:24:17.005 2 gkacct.cxx(936) GKACCT Successfully logged event 2 for call no. 1 2004/11/10 00:24:17.027 2 RasSrv.cxx(205) RAS Send DRQ to 62.65.191.19:1719 2004/11/10 00:24:17.079 2 RasSrv.cxx(152) RAS Read from 62.65.191.19:1719 2004/11/10 00:24:17.083 2 RasSrv.cxx(193) RAS Received DCF 2004/11/10 00:24:17.083 2 RasSrv.cxx(1222) RAS Trapped DCF 2004/11/10 00:24:17.132 2 RasSrv.cxx(152) RAS Read from 192.168.120.32:2117 2004/11/10 00:24:17.135 2 RasSrv.cxx(193) RAS Received DRQ 2004/11/10 00:24:17.137 1 RasSrv.cxx(312) RAS DRQ Received 2004/11/10 00:24:17.148 2 RasSrv.cxx(357) DCF|192.168.120.32|6266_endp|23629|normalDrop; 2004/11/10 00:24:17.158 2 RasSrv.cxx(205) RAS Send DCF to 192.168.120.32:2117 2004/11/10 00:24:40.366 2 RasSrv.cxx(152) RAS Read from 192.168.120.100:59167 2004/11/10 00:24:40.370 2 RasSrv.cxx(193) RAS Received RRQ 2004/11/10 00:24:40.372 1 RasSrv.cxx(312) RAS RRQ Received 2004/11/10 00:24:40.376 2 RasSrv.cxx(205) RAS Send RCF to 192.168.120.100:59167 2004/11/10 00:25:10.032 2 RasSrv.cxx(205) RAS Send RRQ to 62.65.191.19:1719 2004/11/10 00:25:10.076 2 RasSrv.cxx(152) RAS Read from 62.65.191.19:1719 2004/11/10 00:25:10.081 2 RasSrv.cxx(193) RAS Received RRJ 2004/11/10 00:25:10.082 2 RasSrv.cxx(1222) RAS Trapped RRJ 2004/11/10 00:25:10.087 1 GkClient.cxx(871) GKC Registration Rejected: fullRegistrationRequired 2004/11/10 00:25:10.099 2 RasSrv.cxx(205) RAS Send URQ to 62.65.191.19:1719 2004/11/10 00:25:10.112 2 Toolkit.cxx(83) Network=216.51.232.100/255.255.255.255, IP=192.168.120.32 2004/11/10 00:25:10.151 2 RasSrv.cxx(152) RAS Read from 62.65.191.19:1719 2004/11/10 00:25:10.157 2 RasSrv.cxx(193) RAS Received URJ 2004/11/10 00:25:10.158 1 RasSrv.cxx(312) RAS URJ Received 2004/11/10 00:25:10.160 2 Toolkit.cxx(83) Network=217.172.148.1/255.255.255.255, IP=192.168.120.32 2004/11/10 00:25:10.171 2 Toolkit.cxx(83) Network=192.168.120.0/255.255.255.0, IP=192.168.120.32 2004/11/10 00:25:10.172 2 Toolkit.cxx(84) Default IP=192.168.120.32 2004/11/10 00:25:16.242 2 RasSrv.cxx(205) RAS Send RRQ to 62.65.191.19:1719 2004/11/10 00:25:16.308 2 RasSrv.cxx(152) RAS Read from 62.65.191.19:1719 2004/11/10 00:25:16.313 2 RasSrv.cxx(193) RAS Received RCF 2004/11/10 00:25:16.313 2 RasSrv.cxx(1222) RAS Trapped RCF 2004/11/10 00:25:16.314 2 GkClient.cxx(840) GKC Register with 62.65.191.19:1719 successfully 2004/11/10 00:25:19.102 1 gk.cxx(259) GK Received signal 2 2004/11/10 00:25:19.104 1 RasSrv.cxx(648) GK Stopping RasServer... 2004/11/10 00:25:19.318 2 RasSrv.cxx(205) RAS Send URQ to 62.65.191.19:1719 2004/11/10 00:25:19.328 2 RasSrv.cxx(205) RAS Send URQ to 192.168.120.100:59167 2004/11/10 00:25:19.335 2 RasSrv.cxx(205) RAS Send URQ to 192.168.120.32:2117 2004/11/10 00:25:19.370 2 singleton.cxx(37) Delete instance: Routing::Analyzer(6 objects left) 2004/11/10 00:25:19.371 1 RasSrv.cxx(1095) GK RasServer stopped 2004/11/10 00:25:19.372 2 gkacct.cxx(936) GKACCT Successfully logged event 16 Shutting down gatekeeper . . . 2004/11/10 00:25:19.376 2 singleton.cxx(37) Delete instance: GkStatus(5 objects left) 2004/11/10 00:25:19.378 2 singleton.cxx(37) Delete instance: Agent(4 objects left) 2004/11/10 00:25:19.382 2 singleton.cxx(37) Delete instance: CallTable(3 objects left) 2004/11/10 00:25:19.385 2 singleton.cxx(37) Delete instance: RegistrationTable(2 objects left) 2004/11/10 00:25:19.386 1 gkauth.cxx(334) GKAUTH default rule removed 2004/11/10 00:25:19.388 1 gkacct.cxx(186) GKACCT Destroyed module SQLAcct 2004/11/10 00:25:19.389 1 GkClient.cxx(319) GKC Delete GkClient 2004/11/10 00:25:19.390 1 RasSrv.cxx(178) RAS Delete listener 192.168.120.32:1719(U) 2004/11/10 00:25:19.391 1 RasSrv.cxx(178) RAS Delete listener 192.168.120.32:1718(Mcast) 2004/11/10 00:25:19.392 1 RasSrv.cxx(178) RAS Delete listener 127.0.0.1:1719(U) 2004/11/10 00:25:19.393 1 RasSrv.cxx(178) RAS Delete listener 0.0.0.0:1719(Bcast) 2004/11/10 00:25:19.393 2 singleton.cxx(37) Delete instance: RasServer(1 objects left) 2004/11/10 00:25:19.394 2 singleton.cxx(37) Delete instance: Toolkit(0 objects left) done
Attachment:
capture
Description: Binary data