[asterisk-dev] Wrong incoming context after dnsmgr IP address change

Dennis DeDonatis asterisk at dennisd.com
Sat Jun 26 14:55:01 CDT 2010


Yesterday, Future-Nine had some issues and failed over their servers.  Asterisk 1.6.2.9 started 
sending my incoming calls to the context defined in my sip.conf [general] section and not the 
context defined under the provider.

Here's my config:

register => future-nine-in?<id>:<password>@incoming.future-nine.com~55

[future-nine]
type=peer
host=outgoing.future-nine.com
defaultuser=<id>
secret=<password>
insecure=port,invite
dtmfmode=rfc2833
directmedia=yes
disallow=all
allow=ulaw
allow=g729
allow=g726
nat=no
trustrpid=yes
sendrpid=yes
srvlookup=no
qualify=700

[future-nine-in]
type=peer
host=incoming.future-nine.com
context=incoming
dtmfmode=rfc2833
directmedia=yes
disallow=all
allow=ulaw
allow=g729
allow=g726
nat=no
trustrpid=yes
sendrpid=yes
srvlookup=no
qualify=700

Here are the relevant log entries:

[2010-06-25 07:26:41.778] NOTICE[3782] dnsmgr.c: dnssrv: host 'incoming.future-nine.com' changed from 64.251.23.244:5060 to 85.17.148.32:5060
[2010-06-25 07:31:32.672] NOTICE[3748] dnsmgr.c: dnssrv: host 'incoming.future-nine.com' changed from 64.251.23.244:5060 to 85.17.148.32:5060
[2010-06-25 07:31:32.672] NOTICE[3748] dnsmgr.c: dnssrv: host 'outgoing.future-nine.com' changed from 65.111.186.2:5060 to 85.17.148.32:5060
[2010-06-25 07:56:32.681] NOTICE[3748] dnsmgr.c: dnssrv: host 'incoming.future-nine.com' changed from 85.17.148.32:5060 to 64.251.23.244:5060
[2010-06-25 07:56:32.683] NOTICE[3748] dnsmgr.c: dnssrv: host 'incoming.future-nine.com' changed from 85.17.148.32:5060 to 64.251.23.244:5060
[2010-06-25 08:01:32.661] NOTICE[3748] dnsmgr.c: dnssrv: host 'outgoing.future-nine.com' changed from 85.17.148.32:5060 to 64.251.23.244:5060
[2010-06-25 08:21:22.877] NOTICE[3782] dnsmgr.c: dnssrv: host 'incoming.future-nine.com' changed from 64.251.23.244:5060 to 85.17.148.32:5060
[2010-06-25 08:21:32.663] NOTICE[3748] dnsmgr.c: dnssrv: host 'incoming.future-nine.com' changed from 64.251.23.244:5060 to 85.17.148.32:5060
[2010-06-25 08:21:32.663] NOTICE[3748] dnsmgr.c: dnssrv: host 'outgoing.future-nine.com' changed from 64.251.23.244:5060 to 85.17.148.32:5060
[2010-06-25 08:36:32.684] NOTICE[3748] dnsmgr.c: dnssrv: host 'incoming.future-nine.com' changed from 85.17.148.32:5060 to 64.251.23.244:5060
[2010-06-25 08:36:32.686] NOTICE[3748] dnsmgr.c: dnssrv: host 'incoming.future-nine.com' changed from 85.17.148.32:5060 to 64.251.23.244:5060
[2010-06-25 08:41:32.691] NOTICE[3748] dnsmgr.c: dnssrv: host 'outgoing.future-nine.com' changed from 85.17.148.32:5060 to 65.111.186.2:5060
[2010-06-25 09:01:18.628] NOTICE[3782] dnsmgr.c: dnssrv: host 'incoming.future-nine.com' changed from 64.251.23.244:5060 to 85.17.148.32:5060
[2010-06-25 09:01:32.619] NOTICE[3748] dnsmgr.c: dnssrv: host 'incoming.future-nine.com' changed from 64.251.23.244:5060 to 85.17.148.32:5060
[2010-06-25 09:01:32.619] NOTICE[3748] dnsmgr.c: dnssrv: host 'outgoing.future-nine.com' changed from 65.111.186.2:5060 to 85.17.148.32:5060
[2010-06-25 09:30:08.965] VERBOSE[22840] pbx.c:     -- Executing [<redactedDID>@direct:1] Answer("SIP/85.17.148.32-00000018", "") in new stack
[2010-06-25 09:30:09.410] VERBOSE[22840] pbx.c:     -- Executing [<redactedDID>@direct:2] Set("SIP/85.17.148.32-00000018", "TIMEOUT(absolute)=10") in new stack
[2010-06-25 09:30:09.410] VERBOSE[22840] pbx.c:     -- Executing [<redactedDID>@direct:3] Playback("SIP/85.17.148.32-00000018", "jedi-extension-trick") in new stack
[2010-06-25 09:30:09.501] VERBOSE[22840] file.c:     -- <SIP/85.17.148.32-00000018> Playing 'jedi-extension-trick.slin' (language 'en')
[2010-06-25 09:30:13.299] VERBOSE[22840] pbx.c:     -- Executing [<redactedDID>@direct:4] NoOp("SIP/85.17.148.32-00000018", "<redactedDID>") in new stack
[2010-06-25 09:30:13.299] VERBOSE[22840] pbx.c:     -- Executing [<redactedDID>@direct:5] Hangup("SIP/85.17.148.32-00000018", "") in new stack
[2010-06-25 09:30:13.299] VERBOSE[22840] pbx.c:   == Spawn extension (direct, <redactedDID>, 5) exited non-zero on 'SIP/85.17.148.32-00000018'
[2010-06-25 09:54:22.955] VERBOSE[26835] pbx.c:     -- Executing [<redactedDID>@direct:1] Answer("SIP/85.17.148.32-00000019", "") in new stack
[2010-06-25 09:54:23.389] VERBOSE[26835] pbx.c:     -- Executing [<redactedDID>@direct:2] Set("SIP/85.17.148.32-00000019", "TIMEOUT(absolute)=10") in new stack
[2010-06-25 09:54:23.389] VERBOSE[26835] pbx.c:     -- Executing [<redactedDID>@direct:3] Playback("SIP/85.17.148.32-00000019", "jedi-extension-trick") in new stack
[2010-06-25 09:54:23.390] VERBOSE[26835] file.c:     -- <SIP/85.17.148.32-00000019> Playing 'jedi-extension-trick.slin' (language 'en')
[2010-06-25 09:54:27.188] VERBOSE[26835] pbx.c:     -- Executing [<redactedDID>@direct:4] NoOp("SIP/85.17.148.32-00000019", "<redactedDID>") in new stack
[2010-06-25 09:54:27.188] VERBOSE[26835] pbx.c:     -- Executing [<redactedDID>@direct:5] Hangup("SIP/85.17.148.32-00000019", "") in new stack
[2010-06-25 09:54:27.188] VERBOSE[26835] pbx.c:   == Spawn extension (direct, <redactedDID>, 5) exited non-zero on 'SIP/85.17.148.32-00000019'
[2010-06-25 09:54:40.915] VERBOSE[26841] pbx.c:     -- Executing [<redactedDID>@direct:1] Answer("SIP/85.17.148.32-0000001a", "") in new stack
[2010-06-25 09:54:41.366] VERBOSE[26841] pbx.c:     -- Executing [<redactedDID>@direct:2] Set("SIP/85.17.148.32-0000001a", "TIMEOUT(absolute)=10") in new stack
[2010-06-25 09:54:41.366] VERBOSE[26841] pbx.c:     -- Executing [<redactedDID>@direct:3] Playback("SIP/85.17.148.32-0000001a", "jedi-extension-trick") in new stack
[2010-06-25 09:54:41.367] VERBOSE[26841] file.c:     -- <SIP/85.17.148.32-0000001a> Playing 'jedi-extension-trick.slin' (language 'en')
[2010-06-25 09:54:45.165] VERBOSE[26841] pbx.c:     -- Executing [<redactedDID>@direct:4] NoOp("SIP/85.17.148.32-0000001a", "<redactedDID>") in new stack
[2010-06-25 09:54:45.165] VERBOSE[26841] pbx.c:     -- Executing [<redactedDID>@direct:5] Hangup("SIP/85.17.148.32-0000001a", "") in new stack
[2010-06-25 09:54:45.165] VERBOSE[26841] pbx.c:   == Spawn extension (direct, <redactedDID>, 5) exited non-zero on 'SIP/85.17.148.32-0000001a'
[2010-06-25 09:55:09.319] VERBOSE[27523] pbx.c:     -- Executing [<redactedDID>@direct:1] Answer("SIP/85.17.148.32-0000001b", "") in new stack
[2010-06-25 09:55:09.764] VERBOSE[27523] pbx.c:     -- Executing [<redactedDID>@direct:2] Set("SIP/85.17.148.32-0000001b", "TIMEOUT(absolute)=10") in new stack
[2010-06-25 09:55:09.764] VERBOSE[27523] pbx.c:     -- Executing [<redactedDID>@direct:3] Playback("SIP/85.17.148.32-0000001b", "jedi-extension-trick") in new stack
[2010-06-25 09:55:09.765] VERBOSE[27523] file.c:     -- <SIP/85.17.148.32-0000001b> Playing 'jedi-extension-trick.slin' (language 'en')
[2010-06-25 09:55:13.563] VERBOSE[27523] pbx.c:     -- Executing [<redactedDID>@direct:4] NoOp("SIP/85.17.148.32-0000001b", "<redactedDID>") in new stack
[2010-06-25 09:55:13.563] VERBOSE[27523] pbx.c:     -- Executing [<redactedDID>@direct:5] Hangup("SIP/85.17.148.32-0000001b", "") in new stack
[2010-06-25 09:55:13.563] VERBOSE[27523] pbx.c:   == Spawn extension (direct, <redactedDID>, 5) exited non-zero on 'SIP/85.17.148.32-0000001b'
[2010-06-25 11:29:02.864] NOTICE[7599] dnsmgr.c: dnssrv: host 'incoming.future-nine.com' changed from 85.17.148.32:5060 to 64.251.23.244:5060
[2010-06-25 11:29:02.866] NOTICE[7599] dnsmgr.c: dnssrv: host 'incoming.future-nine.com' changed from 85.17.148.32:5060 to 64.251.23.244:5060
[2010-06-25 11:34:02.836] NOTICE[7599] dnsmgr.c: dnssrv: host 'outgoing.future-nine.com' changed from 85.17.148.32:5060 to 65.111.186.2:5060

I didn't open up an issue on the tracker because I have no real way of reproducing this (I can't 
make F9 fail over) and this really is all the information I have.

I'm running the patch on https://issues.asterisk.org/view.php?id=15827 but I can't see how it would 
cause the context problem.  I only include it here to try to be complete and if someone thinks it is 
the problem we might not want to roll this patch out to released versions.

Earlier this week, I was playing around with voip.ms' new servers and I changed my [voip.ms] 
outgoing entry in sip.conf to have host=chicago.voip.ms instead of dallas.voip.ms, while leaving 
everything else the same (voip.ms is set up like the future-nine example above).  I was still 
registered to dallas.voip.ms.

When I tried to call in to my DID, I went into the [direct] context instead of [incoming], just like 
when future-nine failed over.  At least for this case I should be able to duplicate this problem.  :)  I 
thought it was just a fluke earlier this week, but the future-nine failover problem reminded me of it.

There's a good chance I set something up incorrectly (which is why I posted my those config 
sections so everyone knows what I did), but I tend to think this might be a bug so I thought I 
should post it here instead of the users list.

I'm going to have very limited availability for the next two weeks, but I wanted to let someone know 
this might be a problem as soon as I could.

Dennis




More information about the asterisk-dev mailing list