Cisco 7960 SIP Registration Problem

I have the following setup on a local LAN (with a combination of 3CX s/w and Grandstream h/w phones working fine):

Freepbx version: 2.10.1.10

I am trying to get a SIP f/w Cisco 7960 to register with FreePBX but with no success.

I have tried the oft-recommended NAT=“never” and QUALIFY=“no” (in the extension settings but this makes no difference.

I see nothing in the Asterisk CLI and SIP Show Peers has no entry for the extension I’m trying to setup.

The Cisco phone does connect the to TFTP server and downloads f/w and XML config files.

I have purchased and installed the Commercial Endpoint Manager and tried to provision with that but to no avail either. The configuration files do end up on the TFTP server and the Cisco does download them but if I try “Scanning the network” the Cisco does not show up. I have used the 7962 option in Endpoint Manager.

Any suggestions on my next steps to investigate please?

I have pasted the pertinent XML config files below (I think):

SIP00192F4E332C.cnf

proxy1_address: "192.168.0.150"
proxy2_address: "xxx.xxx.xxx.xxx"
proxy3_address: "xxx.xxx.xxx.xxx"
proxy4_address: “xxx.xxx.xxx.xxx

line1_name: "399"
line1_shortname: "PROJEX PBX"
line1_displayname: "DISPLAYNAME399"
line1_authname: "399"
line1_password: “jwq772erf”

line2_name: ""
line2_shortname: ""
line2_displayname: ""
line2_authname: "UNPROVISIONED"
line2_password: “UNPROVISIONED”

line3_name: ""
line3_shortname: ""
line3_displayname: “” Name
line3_authname: "UNPROVISIONED"
line3_password: “UNPROVISIONED”

line4_name: ""
line4_shortname:
line4_displayname: ""
line4_authname: "UNPROVISIONED"
line4_password: “UNPROVISIONED”

line5_name: ""
line5_shortname: ""
line5_displayname: ""
line5_authname: "UNPROVISIONED"
line5_password: “UNPROVISIONED”

line6_name: ""
line6_shortname: ""
line6_displayname: ""
line6_authname: "UNPROVISIONED"
line6_password: “UNPROVISIONED”

proxy_emergency: ""
proxy_emergency_port: "5060"
proxy_backup: ""
proxy_backup_port: "5060"
outbound_proxy: ""
outbound_proxy_port: “5060”

nat_enable: "0"
nat_address: ""
voip_control_port: "5060"
start_media_port: "16348"
end_media_port: "20134"
nat_received_processing: “0”

phone_label: "Brian 399"
time_zone: GMT
logo_url: “http://domain.tld/imagefile.bmp

telnet_level: "2"
phone_prompt: "Cisco7960"
phone_password: "password"
enable_vad: "0"
network_media_type: "auto"
user_info: phone

===========================================

SIPDefault.cnf

image_version: “P0S3-8-12-00”

proxy1_address: “192.168.0.150”

proxy2_address: “xxx.xxx.xxx.xxx

proxy3_address: “xxx.xxx.xxx.xxx

proxy4_address: “xxx.xxx.xxx.xxx

Proxy Server Port

proxy1_port:“5060”

proxy2_port:“5060”

proxy3_port:“5060”

proxy4_port:“5060”

proxy_emergency: ""
proxy_emergency_port: "5060"
proxy_backup: ""
proxy_backup_port: "5060"
outbound_proxy: ""
outbound_proxy_port: “5060”

nat_enable: "0"
nat_address: ""
voip_control_port: "5060"
start_media_port: "16348"
end_media_port: "20134"
nat_received_processing: "1"
dyn_dns_addr_1: ""
dyn_dns_addr_2: ""
dyn_tftp_addr: "xxx.xxx.xxx.xxx"
tftp_cfg_dir: “./”

proxy_register: "1"
timer_register_expires: "120"
preferred_codec: "none"
tos_media: "5"
enable_vad: "0"
dial_template: "dialplan"
network_media_type: "auto"
autocomplete: "1"
telnet_level: “2”

cnf_join_enable: "1"
semi_attended_transfer: "0"
call_waiting: "1"
anonymous_call_block: "0"
callerid_blocking: "0"
dnd_control: “0”

dtmf_inband: "1"
dtmf_outofband: "avt"
dtmf_db_level: "3"
dtmf_avt_payload: "101"
timer_t1: "500"
timer_t2: "4000"
sip_retx: "10"
sip_invite_retx: "6"
timer_invite_expires: “180”

sntp_mode: "directedbroadcast"
sntp_server: "192.168.0.150"
time_zone: "GMT"
time_format_24hr: "1"
dst_offset: "1"
dst_start_month: "April"
dst_start_day: ""
dst_start_day_of_week: "Sun"
dst_start_week_of_month: "1"
dst_start_time: "2"
dst_stop_month: "Nov"
dst_stop_day: "1"
dst_stop_day_of_week: "Sunday"
dst_stop_week_of_month: ""
dst_stop_time: "2"
dst_auto_adjust: “1”

messages_uri: "*99"
services_url: "http://example.domain.tld/services/menu.xml"
directory_url: "http://example.domain.tld/services/directory.php"
logo_url: “http://example.domain.tld/imagename.bmp

http_proxy_addr: ""
http_proxy_port: 80
remote_party_id: 0

===========================================

Thanks for any help or guidance.

Brian

I’ve also just run a tcpdump (ignore the change from 302 --> 399, this is a test number) and get the following:

[[email protected] ~]# tcpdump -i eth0 -n -s 0 port 5060 -v and host 192.168.0.137
tcpdump: listening on eth0, link-type EN10MB (Ethernet), capture size 65535 bytes
17:04:05.454765 IP (tos 0x60, ttl 64, id 1197, offset 0, flags [none], proto UDP (17), length 582)
192.168.0.137.50328 > 192.168.0.150.sip: SIP, length: 554
REGISTER sip:192.168.0.150 SIP/2.0
Via: SIP/2.0/UDP 192.168.0.137:5060;branch=z9hG4bK306e7628
From: sip:[email protected];tag=00192f4e332c0002746ef6ce-3aec4db0
To: sip:[email protected]
Call-ID: [email protected]
Max-Forwards: 70
Date: Tue, 17 Sep 2013 16:04:05 GMT
CSeq: 101 REGISTER
User-Agent: Cisco-CP7960G/8.0
Contact: sip:[email protected]:5060;user=phone;transport=udp;+sip.instance=“urn:uuid:00000000-0000-0000-0000-00192f4e332c”;+u.sip!model.ccm.cisco.com="7"
Content-Length: 0
Expires: 120

This just keeps repeating and there does not appear to be a response from FreePBX on 192.168.0.150.

Thanks again,

Brian

1 - The commercial endpoint manager doesn’t support 7960 (yet)
2 - Turn off the intrusion detection (service fail2ban stop, service iptables stop)

Thanks for the suggestions.

  1. I’ve removed the Endpoint Manager entry for the extension.
  2. I’ve stopped the 2 services.

No difference unfortunately - the phone still sits there and attempts a registration every couple of minutes:

08:42:00.279380 IP (tos 0x60, ttl 64, id 1204, offset 0, flags [none], proto UDP (17), length 582)
192.168.0.137.50328 > 192.168.0.150.sip: SIP, length: 554
REGISTER sip:192.168.0.150 SIP/2.0
Via: SIP/2.0/UDP 192.168.0.137:5060;branch=z9hG4bK17f53337
From: sip:[email protected];tag=00192f4e332c000742d18265-06a07efc
To: sip:[email protected]
Call-ID: [email protected]
Max-Forwards: 70
Date: Wed, 18 Sep 2013 07:41:58 GMT
CSeq: 106 REGISTER
User-Agent: Cisco-CP7960G/8.0
Contact: sip:[email protected]:5060;user=phone;transport=udp;+sip.instance=“urn:uuid:00000000-0000-0000-0000-00192f4e332c”;+u.sip!model.ccm.cisco.com="7"
Content-Length: 0
Expires: 120

and there’s no response from FreePBX - the TFTP service still works fine though.

Makes no sense. If you do a SIP debug in Asterisk you don’t see that message?

Can you register from other SIP devices?

I have a similar, if not the same problem. I’m retiring an old server running Asterisk 1.4.11 (compiled myself, not installed as part of any package). I decided to give AsteriskNOW a try on the new server. I downloaded the ISO image (AsteriskNOW-3.0.0-x86_64-DVD.iso) and installed it, when I realized they use FreePBX as their GUI now, so I went with it…first time using FreePBX.

I created extension 201 to test my Cisco 7960 (SIP image) phone, but it will not register. I created extension 251 connected to it just fine with my WiFone app on my iPhone (using SIP).

I’ve verified that the Cisco 7960 is properly tftp’ing the OS79XX.TXT and the SIPXXX.cnf file just fine. FYI, the phone is running version P0S3-06-3-00 of the SIP image.

Watching tcpdump, I saw the tftp traffic and then the phone sending UDP to 5060 on the server without any replies. I turned on SIP debug and included the output at the bottom of this post. As you’ll see, the phone (192.168.23.252) is sending REGISTER packets and the server (192.168.23.24) says nothing about it.

I decided I’d see if this was an Asterisk issue or FreePBX issue, so wiped the server clean and put CentOS 6.4 on it, then I downloaded certified-asterisk-11.2-current.tar.gz from Digium and installed it (and it’s prerequisite packages). I used the same config files from my Asterisk 1.4.11 server (copied them verbatim from the tftpboot dir and the /etc/asterisk dir). Conclusion is that I had the same exact problem. SIP Debug shows register requests and nothing else.

This was a working setup with 1.4.11 and I’m quite sure that I can turn the old server back on and put it back in as 192.168.23.24 on the network and get it working again. I’m thinking there’s got to be something that Digium did between 1.4.11 and 11.2 that either changes the necessary config for the 7960 phone, or just breaks it altogether. I’ve not been able to find any suggested solutions online so I decided to post here in case someone might know something. I’d appreciate any feedback and would be glad to post additional details if needed. Here’s that SIP debug, followed by the contents of SIPDefault.cnf and SIPXXX.cnf:

<— SIP read from UDP:192.168.23.252:50377 —>
REGISTER sip:192.168.23.24 SIP/2.0
Via: SIP/2.0/UDP 192.168.23.252:5060;branch=z9hG4bK21ecf965
From: sip:[email protected];user=phone
To: sip:[email protected];user=phone
Call-ID: [email protected]
Date: Sat, 19 Oct 2013 22:24:00 GMT
CSeq: 393 REGISTER
User-Agent: CSCO/6
Contact: sip:[email protected]:5060;user=phone
Content-Length: 0
Expires: 120

<------------->
— (11 headers 0 lines) —

<— SIP read from UDP:192.168.23.252:50377 —>
REGISTER sip:192.168.23.24 SIP/2.0
Via: SIP/2.0/UDP 192.168.23.252:5060;branch=z9hG4bK21ecf965
From: sip:[email protected];user=phone
To: sip:[email protected];user=phone
Call-ID: [email protected]
Date: Sat, 19 Oct 2013 22:24:00 GMT
CSeq: 393 REGISTER
User-Agent: CSCO/6
Contact: sip:[email protected]:5060;user=phone
Content-Length: 0
Expires: 120

<------------->
— (11 headers 0 lines) —

<— SIP read from UDP:192.168.23.252:50377 —>
REGISTER sip:192.168.23.24 SIP/2.0
Via: SIP/2.0/UDP 192.168.23.252:5060;branch=z9hG4bK21ecf965
From: sip:[email protected];user=phone
To: sip:[email protected];user=phone
Call-ID: [email protected]
Date: Sat, 19 Oct 2013 22:24:00 GMT
CSeq: 393 REGISTER
User-Agent: CSCO/6
Contact: sip:[email protected]:5060;user=phone
Content-Length: 0
Expires: 120

<------------->
— (11 headers 0 lines) —

<— SIP read from UDP:192.168.23.252:50377 —>
REGISTER sip:192.168.23.24 SIP/2.0
Via: SIP/2.0/UDP 192.168.23.252:5060;branch=z9hG4bK21ecf965
From: sip:[email protected];user=phone
To: sip:[email protected];user=phone
Call-ID: [email protected]
Date: Sat, 19 Oct 2013 22:24:00 GMT
CSeq: 393 REGISTER
User-Agent: CSCO/6
Contact: sip:[email protected]:5060;user=phone
Content-Length: 0
Expires: 120

<------------->
— (11 headers 0 lines) —
bishopCLI>
bishop
CLI>

<— SIP read from UDP:192.168.23.252:50377 —>
REGISTER sip:192.168.23.24 SIP/2.0
Via: SIP/2.0/UDP 192.168.23.252:5060;branch=z9hG4bK21ecf965
From: sip:[email protected];user=phone
To: sip:[email protected];user=phone
Call-ID: [email protected]
Date: Sat, 19 Oct 2013 22:24:00 GMT
CSeq: 393 REGISTER
User-Agent: CSCO/6
Contact: sip:[email protected]:5060;user=phone
Content-Length: 0
Expires: 120

<------------->
— (11 headers 0 lines) —

<— SIP read from UDP:192.168.23.252:50377 —>
REGISTER sip:192.168.23.24 SIP/2.0
Via: SIP/2.0/UDP 192.168.23.252:5060;branch=z9hG4bK21ecf965
From: sip:[email protected];user=phone
To: sip:[email protected];user=phone
Call-ID: [email protected]
Date: Sat, 19 Oct 2013 22:24:00 GMT
CSeq: 393 REGISTER
User-Agent: CSCO/6
Contact: sip:[email protected]:5060;user=phone
Content-Length: 0
Expires: 120

SIPDefault.cnf

Image Version

image_version: “P0S3-06-3-00”

Proxy Server Port

proxy1_port:“5060”

NAT/Firewall Traversal

nat_enable: “0”

Proxy Registration (0-disable (default), 1-enable)

proxy_register: “1”

Phone Registration Expiration [1-3932100 sec] (Default - 3600)

timer_register_expires: “120”

Codec for media stream (g711ulaw (default), g711alaw, g729)

preferred_codec: “none”

TOS bits in media stream [0-5] (Default - 5)

tos_media: “5”

Enable VAD (0-disable (default), 1-enable)

enable_vad: “0”

Allow for the bridge on a 3way call to join remaining parties upon hangup

cnf_join_enable: “1” ; 0-Disabled, 1-Enabled (default)

Allow Transfer to be completed while target phone is still ringing

semi_attended_transfer: “0” ; 0-Disabled, 1-Enabled (default)

Telnet Level (enable or disable the ability to telnet into this phone

telnet_level: “0” ; 0-Disabled (default), 1-Enabled, 2-Privileged

Inband DTMF Settings (0-disable, 1-enable (default))

dtmf_inband: “0”

Out of band DTMF Settings (none-disable, avt-avt enable (default), avt_always - always avt )

dtmf_outofband: “avt”

DTMF dB Level Settings (1-6dB down, 2-3db down, 3-nominal (default), 4-3db up, 5-6dB up)

dtmf_db_level: “3”

SIP Timers

timer_t1: “500” ; Default 500 msec
timer_t2: “4000” ; Default 4 sec
sip_retx: “10” ; Default 11
sip_invite_retx: “6” ; Default 7
timer_invite_expires: “180” ; Default 180 sec

Setting for Message speeddial to UOne box

messages_uri: “2500”

#********* Release 2 new config parameters **********

TFTP Phone Specific Configuration File Directory

tftp_cfg_dir: “./sipphones/”

Time Server

sntp_mode: "directedbroadcast"
sntp_server: "192.168.23.25"
time_zone: "CST"
dst_offset: "1"
dst_start_month: "March"
dst_start_day: ""
dst_start_day_of_week: "Sun"
dst_start_week_of_month: "2"
dst_start_time: "02"
dst_stop_month: "Nov"
dst_stop_day: ""
dst_stop_day_of_week: "Sunday"
dst_stop_week_of_month: "1"
dst_stop_time: "2"
dst_auto_adjust: “1”

Do Not Disturb Control (0-off, 1-on, 2-off with no user control, 3-on with no user control)

dnd_control: “0” ; Default 0 (Do Not Disturb feature is off)

Caller ID Blocking (0-disabled, 1-enabled, 2-disabled no user control, 3-enabled no user control)

callerid_blocking: “0” ; Default 0 (Disable sending all calls as anonymous)

Anonymous Call Blocking (0-disbaled, 1-enabled, 2-disabled no user control, 3-enabled no user control)

anonymous_call_block: “0” ; Default 0 (Disable blocking of anonymous calls)

Call Waiting (0-disabled, 1-enabled, 2-disabled with no user control, 3-enabled with no user control)

call_waiting: “1” ; Default 1 (Call Waiting enabled)

DTMF AVT Payload (Dynamic payload range for AVT tones - 96-127)

dtmf_avt_payload: “101” ; Default 100

XML file that specifies the dialplan desired

dial_template: “dialplan”

Network Media Type (auto, full100, full10, half100, half10)

network_media_type: “auto”

#Autocompletion During Dial (0-off, 1-on [default])
autocomplete: “1”

#Time Format (0-12hr, 1-24hr [default])
time_format_24hr: “0”

####### New Parameters added in Release 4.0 #######

HTTP Proxy Support

http_proxy_addr: “” ; Address of HTTP Proxy server
http_proxy_port: 8050 ; Port of HTTP Proxy Server (80-default)

Dynamic DNS/TFTP Support

dyn_dns_addr_1: “” ; restricted to dotted IP
dyn_dns_addr_2: “” ; restricted to dotted IP
dyn_tftp_addr: “192.168.23.25” ; restricted to dotted IP

The dynamic tftp server should be set to whatever your TFTP server is. This way, it

keeps the tftp server setting even though you might be using DHCP (default behavior

is to use the DHCP server as a tftp server, which is rarely correct.)

Remote Party ID

remote_party_id: 1 ; 0-Disabled (default), 1-Enabled

SIPXXXXX.cnf file

SIP Configuration Generic File (start)

Proxy Server

proxy1_address: "192.168.23.24"
proxy2_address: "192.168.23.24"
proxy3_address: "192.168.23.24"
proxy4_address: "192.168.23.24"
proxy5_address: "192.168.23.24"
proxy6_address: “192.168.23.24”

Line 1 Settings

line1_name: “201” ; Line 1 Extension\User ID
line1_displayname: “MyDisplayName” ; Line 1 Display Name
line1_authname: “201” ; Line 1 Registration Authentication
line1_password: “password” ; Line 1 Registration Password

line2_name: “” ; Line 3 Extension\User ID
line2_displayname: “” ; Line 3 Display Name
line2_authname: “UNPROVISIONED” ; Line 3 Registration Authentication
line2_password: “UNPROVISIONED” ; Line 3 Registration Password

Line 3 Settings

line3_name: “” ; Line 3 Extension\User ID
line3_displayname: “” ; Line 3 Display Name
line3_authname: “UNPROVISIONED” ; Line 3 Registration Authentication
line3_password: “UNPROVISIONED” ; Line 3 Registration Password

Line 4 Settings

line4_name: “” ; Line 4 Extension\User ID
line4_displayname: “” ; Line 4 Display Name
line4_authname: “UNPROVISIONED” ; Line 4 Registration Authentication
line4_password: “UNPROVISIONED” ; Line 4 Registration Password

Line 5 Settings

line5_name: “” ; Line 5 Extension\User ID
line5_displayname: “” ; Line 5 Display Name
line5_authname: “UNPROVISIONED” ; Line 5 Registration Authentication
line5_password: “UNPROVISIONED” ; Line 5 Registration Password

Line 6 Settings

#line6_name: “” ; Line 6 Extension\User ID
#line6_displayname: “” ; Line 6 Display Name
#line6_authname: “UNPROVISIONED” ; Line 6 Registration Authentication
#line6_password: “UNPROVISIONED” ; Line 6 Registration Password

Emergency Proxy info

proxy_emergency: ""
proxy_emergency_port: “5060”

Backup Proxy info

proxy_backup: ""
proxy_backup_port: “5060”

Outbound Proxy info

outbound_proxy: ""
outbound_proxy_port: “5060”

NAT/Firewall Traversal

nat_enable: "0"
nat_address: ""
voip_control_port: "5060"
start_media_port: "16384"
end_media_port: "32766"
nat_received_processing: “0”

Phone Label (Text desired to be displayed in upper right corner)

phone_label: “MyPhone” ; Has no effect on SIP messaging

Time Zone phone will reside in

time_zone: CST

Telnet Level (enable or disable the ability to telnet into this phone

telnet_level: “2” ; 0-Disabled (default), 1-Enabled, 2-Privileged

Phone prompt/password for telnet/console session

phone_prompt: “prompt” ; Telnet/Console Prompt
phone_password: “password” ; Telnet/Console Password

Enable_VAD (1-enabled, 0-disabled)

enable_vad: “0”

Network Media Type (auto, full100, full10, half100, half10)

network_media_type: "auto"
user_info: phone

URL for external Directory location

logo_url: “http://192.168.23.24/asterisk/asterisk-tux.bmp” ; URL for branding logo to be used on phone display

DTMF Stuff

dtmf_outofband: "avt_always"
dtmf_inband: “0”

SIP Configuration Generic File (stop)

I forgot which one works but you just need to change the NAT settings in the extension.

I had a bit of trouble getting a 7940 working. I tried every setting under the sun for nat. What finally worked was to add to my asterisk.conf

[compat] app_set=1.4

Restarted asterisk and rebooted the 7940

I tried all four: Yes, No, Never, and Route. After changing, I applied the config, watched all the reload messages show up in the asterisk console and then rebooted the phone. In each case, I got the same SIP debug and same lack of a response from the server.

I’ve setup a new server running asterisk 1.4.11 and the phone works just fine there. My extension config is in users.conf on the 1.4.11 server and I noticed that it’s in sip_additional.conf on the FreePBX machine. Just for fun, I copied the config for extension 201 verbatim from the 1.4.11 server’s users.conf to the FreePBX server’s sip_additional.conf and did a “core reload” on the asterisk console. Same response…SIP register messages come in, no response goes back.

I’ve set things back the way they were with sip_additional.conf and reloaded asterisk again; so I should be back to the way FreePBX set things up automagically when I used the GUI to create the extension.

Any further thoughts on this? I’m inclined to punt and continue using 1.4.11, but I’d love to know why upgrading causes me to lose my cisco phones.

I scanned the forum. Did not notice the Cisco version. We have 100’s of these in service.