Google Talk/Chat behind a NAT...clues?

Hi all

I’ve been running *10.8 for a while (SVN download, straight compile), quite happily with a variety of SIP trunks and a Linksys SPA3102 for POTS calls.

I’ve just decided to move to *11 (11.2.1) - albeit the official candidate (not an svn trunk download), compile, make install and run. The only thing NOT done was to refresh any configs.

So far, the base setup has “just worked”, all my lines & GUI configs work and continue as normal.

However, I’m not getting chan_motif/xmpp to work nicely with Google properly.

My setup :

OS : Linux 2.6.32-5-amd64 #1 SMP Sun Sep 23 10:07:46 UTC 2012 x86_64 GNU/Linux
Asterisk : *11.2.1

Asterisk -> Switch -> Cable Modem -> Internet

Asterisk is on a local LAN (private IP range) and runs with directmedia=nonat
sip.conf and rtp.conf both have icesupport set to "yes"
My ISP provides a dynamic (albeit long life) IP, and I have a dyndns host, and externhost is setup with the dyndns name.

I’ve setup a Google 2 Factor auth password for my account, for Asterisk, and set up the configs as per wiki.asterisk.org/wiki/display/ … ing+Google

I’ve also setup extension 8700 to call a GTalk contact.

What works :

Calls placed to/from the Gtalk contact to/from * initiate, ring and connect. Disconnect events are also correctly picked up.

What doesn’t work :

Audio.

I’ve enabled debug in rtp, but I see NO rtp traffic on a GTalk call, except when disconnecting. What I CAN see is my * server internal IP in the XMPP messages to/from Google, which I presume is part of the issue? (but unlike gtalk.conf from older versions, I see no bindaddr option?)
[EDIT : Doing some reading on specs, and checking the dump, I can see both internal server IPs (it has an OpenVPN IP available as well) AND a valid external IP. The external IP is type=‘stun’, the others are type=‘local’]

Any clues? Happy to post debug/verbose info…