Jan,
I've done a tcpdump on the linux NAT box (sitting between my HDX [on LAN] and GnuGK [on internet]). You'll find attached the tcpdump filtered file...
What i can see is the following :
- packet 1 : SCI is sent by Gnugk to NAT (guid = e05f75dc-6b77-11e4-b8d2-b73ea4855d77)
- packet 2 : SCI is translated by NAT to HDX => only IP/ports fields in headers are changed, all right
- packet 5 : SCR is sent by HDX to Gnugk => seams ok to me
- packet 6 : SCR is translated by NAT to Gnugk => only IP/ports fields in headers are changed, all right
- packet 3/4 : TCP SYN from HDX to gnugk:1720 is opened
- packet 7/8 : TCP SYN ACK from gnugk to HDX
- packet 9/10 : TCP ACK from HDX to gnugk
- packet 11/12 : tcp window update (ignore that)
- packet 13/14 : HDX sends a H225 facility undefined (guid = e05f75dc-6b77-11e4-b8d2-b73ea4855d77)
After 5 seconds, without answer from gnugk, the HDX shuts the TCP stream (TCP RST).
I'm not an expert of H323 nor H460, but i think gnugk should handles the "H225 facility undefined" and its guid to relate the TCP 1720 new session with its SCI/SCR negociation.
Am i wrong with that analysis ?
Best Regards,
Sébastien
2014-11-13 22:38 GMT+01:00 Sébastien Bonnaire <sebastien@xxxxxxxxxxxx>:
Thanks Jan for your answer.I'm still disapointed:- the test system i used for my trace is behind a regular linux masquerading a public IP address- the same problem exists when using a huawei TE30, on a public IP, forcing activation of H.460.Do you have another idea ?Sébastien2014-11-13 21:27 GMT+01:00 Jan Willamowius <jan@xxxxxxxxxxxxxx>:Hi Sébastien,
that behavior is absolutely correct: When using H.460.18 the called
endpoint has to open the signaling connection after getting the
ServiceControlIndication.
A common problem are router or ALG that think they know H,.323, but
are only aware of old style call flows (eg. Cisco ASA).
Regards,
Jan
--
Jan Willamowius, Founder of the GNU Gatekeeper Project
EMail : jan@xxxxxxxxxxxxxx
Website: http://www.gnugk.org
Support: http://www.willamowius.com/gnugk-support.html
Relaxed Communications GmbH
Frahmredder 91
22393 Hamburg
Geschäftsführer: Jan Willamowius
HRB 125261 (Amtsgericht Hamburg)
USt-IdNr: DE286003584
------------------------------------------------------------------------------
Sébastien Bonnaire wrote:
> Hi GnuGK users !
>
> I'm experiencing a problem with videoendpoints registered to my Gatekeeper :
> - When they register with H.460, GnuGK do not forward setup to endpoints
> for incoming calls. Outgoing calls works perfectly.
> - When they register without H.460, GnuGK does forward setup. Both incoming
> and outgoing calls work perfectly.
>
> I'm using Gatekeeper(GNU) Version(3.7.0), but version 3.4.0 doesn't help...
>
> His that a bug or a misconfiguration ?
> Your help will be welcome.
>
> Seb
>
>
> following is logs (when endpoint uses H.460) and GNUGK configuration :
>
> ---
> logfile
> ---
>
> 2014/11/13 20:37:23.420 4 RasSrv.cxx(243) RAS Receiving
> on 81.93.4.29:1719(U)
>
> 2014/11/13 20:37:23.420 2 RasSrv.cxx(175) RAS Read from
> A.A.A.NBG:1719
>
> 2014/11/13 20:37:23.420 3 RasSrv.cxx(252) RAS
>
> locationRequest {
>
> requestSeqNum = 38073
>
> destinationInfo = 1 entries {
>
> [0]=dialedDigits "100000990"
>
> }
>
> nonStandardData = {
>
> nonStandardIdentifier = object 1.3.6.1.4.1.903
>
> data ="" 2 octets {
>
> 31 30 10
>
> }
>
> }
>
> […]
>
> 2014/11/13 20:37:23.420 5 job.cxx(338) JOB Worker
> threads: 23 total - 23 busy, 0 idle
>
> 2014/11/13 20:37:23.420 5 job.cxx(180) JOB Starting
> Job LRQ at Worker thread 140228487673600
>
> 2014/11/13 20:37:23.420 1 RasSrv.cxx(383) RAS LRQ
> Received from A.A.A.NBG:1719
>
> 2014/11/13 20:37:23.421 5 Routing.h(243) ROUTING Checking
> policy Sql for the request LRQ 38073
>
> 2014/11/13 20:37:23.421 5 gksql.cxx(318) Sql Executing
> query: select field1,field2 from transforms where dateendofservice > now()
> and calledalias='100000990' and callingalias in ('any','71660101')
>
> 2014/11/13 20:37:23.422 3 Routing.cxx(2030) Sql: query returned
> no rows
>
> 2014/11/13 20:37:23.422 5 Routing.h(243) ROUTING Checking
> policy Explicit for the request LRQ 38073
>
> 2014/11/13 20:37:23.422 5 Routing.h(243) ROUTING Checking
> policy Internal for the request LRQ 38073
>
> 2014/11/13 20:37:23.423 4 RasTbl.cxx(1966) Alias match for EP
> B.B.B.ENDP:1719
>
> 2014/11/13 20:37:23.423 5 Routing.h(246) ROUTING Policy
> Internal applied to the request LRQ 38073
>
> 2014/11/13 20:37:23.423 2 RasSrv.cxx(422)
> LCF|A.A.A.NBG|4872_endp|100000990:dialedDigits
>
> 2014/11/13 20:37:23.423 3 RasSrv.cxx(264) RAS Send to
> A.A.A.NBG:1719
>
> locationConfirm {
>
> requestSeqNum = 38073
>
> callSignalAddress = ipAddress {
>
> ip = 4 octets {
>
> […]
>
> }
>
> port = 1720
>
> }
>
> rasAddress = ipAddress {
>
> ip = 4 octets {
>
> […]
>
> }
>
> port = 1719
>
> }
>
> }
>
> 2014/11/13 20:37:23.423 5 RasSrv.cxx(276) RAS Sent
> Successful
>
> 2014/11/13 20:37:23.423 5 job.cxx(388) JOB Job LRQ
> deleted
>
> 2014/11/13 20:37:23.423 5 job.cxx(378) JOB Worker
> threads: 23 total - 22 busy, 1 idle
>
> 2014/11/13 20:37:23.461 4 yasocket.cxx(1151) TCPSrv Accept
> request on 81.93.4.29:1720
>
> 2014/11/13 20:37:23.461 4 yasocket.cxx(1158) TCPSrv current
> cps=0 calls in interval=0
>
> 2014/11/13 20:37:23.461 5 job.cxx(338) JOB Worker
> threads: 23 total - 23 busy, 0 idle
>
> 2014/11/13 20:37:23.461 5 job.cxx(180) JOB Starting
> Job Acceptor at Worker thread 140228487673600
>
> 2014/11/13 20:37:23.461 5 ProxyChannel.cxx(1250) Q931s Reading
> from A.A.A.NBG:53476
>
> 2014/11/13 20:37:23.462 3 ProxyChannel.cxx(1753) Q931s Received:
> Setup CRV=13586 from A.A.A.NBG:53476
>
> 2014/11/13 20:37:23.463 4 ProxyChannel.cxx(1685) Q931 Received: {
>
> q931pdu = {
>
> protocolDiscriminator = 8
>
> callReference = 13586
>
> from = originator
>
> messageType = Setup
>
> IE: Bearer-Capability = {
>
> 88 18 8c a5 ....
>
> }
>
> […]
>
> 2014/11/13 20:37:23.463 4 ProxyChannel.cxx(3502) Q931s GWRewrite
> source for A.A.A.NBG:53476: neighbor or explicit IP
>
> 2014/11/13 20:37:23.464 4 ProxyChannel.cxx(3590) Q931 Gatekeeper
> generated CallProceeding
>
> 2014/11/13 20:37:23.464 5 ProxyChannel.cxx(1685) Q931 Send to
> A.A.A.NBG:53476 {
>
> q931pdu = {
>
> protocolDiscriminator = 8
>
> callReference = 46354
>
> from = destination
>
> messageType = CallProceeding
>
> […]
>
> }
>
> 2014/11/13 20:37:23.464 3 gkauth.cxx(1188) GKAUTH default
> Setup check ok
>
> 2014/11/13 20:37:23.464 5 Routing.cxx(260) ROUTING Checking
> policy Sql for request Setup CRV=13586
>
> 2014/11/13 20:37:23.464 5 gksql.cxx(318) Sql Executing
> query: select field1,field2 from transforms where dateendofservice > now()
> and calledalias='100000990' and callingalias in ('any','71660101')
>
> 2014/11/13 20:37:23.466 3 Routing.cxx(2030) Sql: query returned
> no rows
>
> 2014/11/13 20:37:23.466 5 Routing.cxx(260) ROUTING Checking
> policy Explicit for request Setup CRV=13586
>
> 2014/11/13 20:37:23.466 5 Routing.cxx(260) ROUTING Checking
> policy Internal for request Setup CRV=13586
>
> 2014/11/13 20:37:23.467 4 RasTbl.cxx(1966) Alias match for EP
> B.B.B.ENDP:1719
>
> 2014/11/13 20:37:23.467 5 Routing.cxx(263) ROUTING Policy
> Internal applied to the request Setup CRV=13586
>
> 2014/11/13 20:37:23.467 4 ProxyChannel.cxx(3988) Q931s Source
> address A.A.A.MCU peer address A.A.A.NBG caller is behind NAT
>
> 2014/11/13 20:37:23.467 2 RasTbl.cxx(4696) CallTable::Insert(CALL)
> Call No. 5, total sessions : 1
>
> 2014/11/13 20:37:23.467 5 gksql.cxx(318) SQLAcct Executing
> query: INSERT INTO cdr (id, h323id, acctsessionid, h323confid, gkip, gkid,
> callingstationip, callingstationid, calledstationip, calledstationid,
> setuptime, acctstarttime, acctstartdelay, acctupdatetime) VALUES (DEFAULT,
> '71660101', '5461364a00000005', '64 d7 56 56 e4 47 00 1f 06 99 5e 3f 0c 55
> 6a 5b', '81.93.4.29', 'MADVISIO-GK29', NULLIF('A.A.A.NBG', '')::INET,
> '71660101', NULLIF('B.B.B.ENDP', '')::INET, '100000990',
> NULLIF('20:37:23.000 CET Thu Nov 13 2014', '')::TIMESTAMP(0) WITH TIME
> ZONE, now(), 0, now())
>
> 2014/11/13 20:37:23.571 3 gkacct.cxx(928) GKACCT SQLAcct
> logged event 1 for call no. 5
>
> 2014/11/13 20:37:23.571 2 gkacct.cxx(964) GKACCT Successfully
> logged event 1 for call no. 5
>
> 2014/11/13 20:37:23.571 4 ProxyChannel.cxx(4245) Q931s GWRewrite
> source for A.A.A.NBG:53476: setup H323 ID or E164
>
> 2014/11/13 20:37:23.571 4 ProxyChannel.cxx(7687) Q931s Set Called
> Numbering Plan=1 TypeOfNumber=1
>
> 2014/11/13 20:37:23.571 4 ProxyChannel.cxx(7715) Q931s Set Calling
> Numbering Plan 1 Type Of Number 2
>
> 2014/11/13 20:37:23.571 3 ProxyChannel.cxx(4360) GK Call 5
> proxy enabled (H.460.18/.19)
>
> 2014/11/13 20:37:23.572 3 RasSrv.cxx(264) RAS Send to
> B.B.B.ENDP:1719
>
> serviceControlIndication {
>
> requestSeqNum = 10
>
> serviceControl = 1 entries {
>
> [0]={
>
> sessionId = 0
>
> reason = open <<null>>
>
> }
>
> }
>
> genericData = 1 entries {
>
> [0]={
>
> id = standard 18
>
> parameters = 1 entries {
>
> [0]={
>
> id = standard 1
>
> content = raw 24 octets {
>
> 00 51 5d 04 1d 06 b8 00 5b be e2 99 6b 66 11 e4
> .Q].....[...kf..
>
> b8 d2 b7 3e a4 85 5d 77 ...>..]w
>
> }
>
> }
>
> }
>
> }
>
> }
>
> }
>
> 2014/11/13 20:37:23.572 5 RasSrv.cxx(276) RAS Sent
> Successful
>
> 2014/11/13 20:37:23.572 5 yasocket.cxx(991) ProxyH(4) Total
> sockets: 1
>
> 2014/11/13 20:37:23.572 5 job.cxx(388) JOB Job
> Acceptor deleted
>
> 2014/11/13 20:37:23.572 5 job.cxx(378) JOB Worker
> threads: 23 total - 22 busy, 1 idle
>
> 2014/11/13 20:37:23.581 4 RasSrv.cxx(243) RAS Receiving
> on 81.93.4.29:1719(U)
>
> 2014/11/13 20:37:23.581 2 RasSrv.cxx(175) RAS Read from
> B.B.B.ENDP:1719
>
> 2014/11/13 20:37:23.581 3 RasSrv.cxx(252) RAS
>
> serviceControlResponse {
>
> requestSeqNum = 10
>
> cryptoTokens = 1 entries {
>
> [0]=cryptoEPPwdHash {
>
> alias = h323_ID 10 characters {
>
> 0031 0030 0030 0030 0030 0030 0039 0039 10000099
>
> 0030 0000 0
>
> }
>
> timeStamp = 1102520409
>
> token = {
>
> algorithmOID = 1.2.840.113549.2.5
>
> paramS = {
>
> }
>
> hash = Hex: 5d 02 25 b0 ff 1f 73 8a b2 4c ca 47 25 04 d2 3a
>
> }
>
> }
>
> }
>
> }
>
> 2014/11/13 20:37:23.581 5 job.cxx(338) JOB Worker
> threads: 23 total - 23 busy, 0 idle
>
> 2014/11/13 20:37:23.581 5 job.cxx(180) JOB Starting
> Job SCR at Worker thread 140228487673600
>
> 2014/11/13 20:37:23.581 1 RasSrv.cxx(383) RAS SCR
> Received from B.B.B.ENDP:1719
>
> 2014/11/13 20:37:23.581 5 job.cxx(388) JOB Job SCR
> deleted
>
> 2014/11/13 20:37:23.581 5 job.cxx(378) JOB Worker
> threads: 23 total - 22 busy, 1 idle
>
>
>
>
> ---
> gatekeeper.ini
> ---
> [Gatekeeper::Main]
> Fortytwo=42
> Name=myGK
> Home=x.x.x.x
> StatusPort=7000
> TimeToLive=300
> CompareAliasType=0
> CompareAliasCase=0
> EndpointSignalPort=1720
> TraceLevel=5
>
> [Logfile]
> Filename=/var/log/log_gnugk.log
> Rotate=Daily
> RotateTime=04:00
>
> [GkStatus::Auth]
> rule=regex
> regex=^(1\.2\.3\.[0-9]+)
>
> [Gatekeeper::Auth]
> SQLPasswordAuth=alternative;RRQ
> default=allow
>
> [SQLPasswordAuth]
> Driver=PostgreSQL
> ...
>
> [Gatekeeper::Acct]
> SQLAcct=optional;start,connect,update,stop
> FileAcct=required;stop
>
> [FileAcct]
> ...
>
> [SQLAcct]
> ...
>
> [RasSrv::Neighbors]
> alpha=Generic
> beta=Generic
>
> [Neighbor::alpha]
> Dynamic=0
> GatekeeperIdentifier=alpha
> Host=y.y.y.1
> SendPrefixes=20
> AcceptPrefixes=99
> ForwardLRQ=depends
>
> [Neighbor::beta]
> Dynamic=0
> GatekeeperIdentifier=beta
> Host=y.y.y.2
> SendPrefixes=10
> AcceptPrefixes=99
> ForwardLRQ=depends
>
> [RoutedMode]
> GKRouted=1
> AcceptNeighborsCalls=1
> EnableH46017=1
> EnableH46018=1
> H46018NoNAT=1
> Q931PortRange=30000-39999
> H245PortRange=40000-49999
> CallSignalPort=1720
> H245Routed=1
> CallSignalHandlerNumber=10
> RtpHandlerNumber=8
> AcceptUnregisteredCalls=1
> TCPKeepAlive=1
> CpsLimit=10
> CpsCheckInterval=1
> SupportNATedEndpoints=1
> TreatUnregisteredNAT=1
> GenerateCallProceeding=1
> ;H4502EmulatorTransferMethod=Reroute
>
> [Proxy]
> Enable=1
> ProxyForNAT=1
> ProxyForSameNAT=0
> T120PortRange=50000-50999
> RTPPortRange=51000-58999
> RTPMultiplexing=1
> RTPMultiplexPort=59000
> RTCPMultiplexPort=59999
>
> [RoutingPolicy]
> Default=sql,explicit,internal,parent,neighbor,srv,dns,catchall
>
> [Routing::Sql]
> ...
>
> [ModeSelection]
> 1.2.3.0/24=PROXY,PROXY
>
> [Routing::CatchAll]
> CatchAllIP=2.3.4.5
> ---
Comprehensive Server Monitoring with Site24x7.
Monitor 10 servers for $9/Month.
Get alerted through email, SMS, voice calls or mobile push notifications.
Take corrective actions from your mobile device.
http://pubads.g.doubleclick.net/gampad/clk?id=154624111&iu=/4140/ostg.clktrk
_______________________________________________________
Posting: mailto:Openh323gk-users@xxxxxxxxxxxxxxxxxxxxx
Archive: http://sourceforge.net/mailarchive/forum.php?forum_name=openh323gk-users
Unsubscribe: http://lists.sourceforge.net/lists/listinfo/openh323gk-users
Homepage: http://www.gnugk.org/
Attachment:
filtered trace 01.pcap
Description: Binary data
------------------------------------------------------------------------------ Comprehensive Server Monitoring with Site24x7. Monitor 10 servers for $9/Month. Get alerted through email, SMS, voice calls or mobile push notifications. Take corrective actions from your mobile device. http://pubads.g.doubleclick.net/gampad/clk?id=154624111&iu=/4140/ostg.clktrk
_______________________________________________________ Posting: mailto:Openh323gk-users@xxxxxxxxxxxxxxxxxxxxx Archive: http://sourceforge.net/mailarchive/forum.php?forum_name=openh323gk-users Unsubscribe: http://lists.sourceforge.net/lists/listinfo/openh323gk-users Homepage: http://www.gnugk.org/