You are on page 1of 17

Installation and configuration report

with physical Cisco Phones, the Issues,


Problems and Troubleshooting and Final Result

COMP 6204
VOIP:
Taridium ipbx eXpress
Free Edition 5 Users
(Asterisk based)

Written by Nathan Fitness 27026688


CONTENTS

Introduction............................................................................................. 2

Installation............................................................................................... 3

Cisco Phone firmware.............................................................................7

Cisco Phone Configuring........................................................................7

Update 7911 firmware…..........................................................................8

New Template.......................................................................................... 9

DHCP/TFTP Server Fix..........................................................................15

Tftpd32 log files.....................................................................................15


INTRODUCTION

This report is going to document what I have done in attempting to get Taridium ipbx eXpress installed and configured to work
with Cisco phones loaded with sip firmware.

There are putty log files included as well as screenshots

The hardware used is as follows:

Pc: IP Phone 7941

Core i5 2400 @ Serial number: FCH12098FEY

4Gb DDR3 Mac address: 01F9E2525CF

3tb 3.5” sata PID / VID CP-7941GV02

Phones: used (tried) IP Phone 7911

Serial number: FCH141192ZJ

Cisco Mac address: 081FF3624FC1

IP Phone SPA502G PID / VID CP-7911GV08

Serial number: CCQ16421HAH

Mac address: 58BFEA11A7CE Switches:

PID / VID SPA502G V02

Generic POE switch

IP Phone 7941 Serial number: PS201604220004

Serial number: FCH120797Z0 Mac address: N/A

Mac address: 001F6C802164 PID 1004POE-AF

PID / VID CP-7941GV02

INSTALLATION
Installation of Taridium ipbx eXpress was via dvd-r written and verified using easyburn.

The operations system base is Centos 6 based (an RPM based distro)

The Installation is fully automated except for the


option for disk usage.

The use entire disk option was used.

Once done the system asks you to reboot.


(Remember to remove install media)

The initial login is via root with a password of


taridium200

This needs to be changed via the “passwd”


command.

Once the computer had booted it shows the


following:

Next run “ifconfig” to find your IP number

If no ipv4 number, then reboot

The computer was statically assigned the number


192.168.1.199/24.

This was done via CLI using:

nano /etc/sysconfig/network-scripts/ifcfg-eth0

and changing BOOTPROTO="dhcp" to BOOTPROTO="static"

and adding: IPADDR="192.168.1.199"

GATEWAY="192.168.1.1"

NETMASK="255.255.255.0"

then running: service network restart


Once you have an IP number you can access the Web based GUI

Next you need to enter your licence info.

Here we are just going to choose:

After this you will be greeted with:

Just enter here the default username of: admin

With the default password of: taridium200


Next will be a popup of:

Fill out the forms: System Name (IPBX),


IP address (192.168.1.199),
admin password,
enable DHCP if required (I selected this),
change time zone to Pacific/Auckland.
select Cisco 79xx and Cisco SPA

And select apply

(nb: if you check the box next to “don’t show the wizard when I login next time” you won’t be able to select apply)
Afterwards you will be greeted with a screen like:

Fortunately Taridium says it supports Cisco’s IP Phones. But it recommends the 7940/7460, This means we need to modify the
templates to get the Cisco 7941/7961 series phones working as these have different configuration xml file layouts.

It also says it supports the SPA series of phones, so in theory my SPA502G’s should work…..we hope…

Configuring ipbx

Configuring was fairly straight forward except for a few parts

The first part was where the DHCP server installable from the web GUI did not work, so one had to be manually installed, the
problem with this was once installed it has to be started manually via the CLI.

Second the TFTP service was not reliable. This meant the phones would fail to find their configuration files, yet alone any of their
firmware files.

And third, the configuration files created by the ipbx GUI did not work for any of my phones, forcing me to create a template
using Cisco’s xml layout.
CISCO PHONE FIRMWARE

Fist part was copying the phones flash firmware to the /tftpboot folder

Unfortunately I have an issue here with the tftp sever……um, ok no firmware updates.

Force the phones firmware to update via windows cp and tftpd32….success

SIP41.9-4-2SR3-1S loaded on phones (7941)

Definitely an issue with ipbx’s tftp service, even configuration files are sometimes unaccessable.

CISCO PHONE CONFIGURING

Next we had to configure the phones configuration template.

The configuration files for each phone gets created according to their mac address and the phone number it has been assigned.
This is mostly done automatically via a default template.

After copying and pasting the example into notepad, editing it and then pasting the contents into the new default template, we
add the users via the GUI and selecting our new template.

We should have some response from the phones

Strangely I have one phone (7941) connected and working (as in talking to the messenger service, record and playback messages
etc), but the other phone (7941) just sits saying unprovisioned. If the phone says this then it is not getting everything it needs in
its config file.

Hmmm….. dunno what could have caused this????

Even double checked the config files, nope looks ok here….

Lets check a 7911 with sip firmware SIP11.8-5-2S

nope no go here.. unprovisioned


UPDATE 7911 FIRMWARE….

Lets check a 7911 with sip firmware SIP11.9-4-2SR3-1S

 nope no go here either.. unprovisioned

Time to try to eliminate file finding issues….changed DHCP and TFTP servers to be hosted via tftpd32 running off Windows XP

Ok so it was the TFTP service after all

Ok So now reading the log files from tftpd32 it seems the phones are requesting files starting in  SEP%%MAC%%.cnf.xml whis is
vastly different to the SIP%%MAC%%.cnf files made by ipbx. No wonder the phones failed

These config files (SEP%%MAC%%.cnf.xml) work fine if one line is configured, if two are configured but seem to be the same
then it sends the phone into a loop and it never finishes registering.

The phones do request networking and user locale files/information, but they do not need them, although it does slow them
down a few minutes more from being useable.

The mail slow down is waiting for the fones to find its config file as follows

Connection received from 192.168.1.201 on port 51686 [10/10 00:10:46.421]

Read request for file <CTLSEP001F9E2525CF.tlv>. Mode octet [10/10 00:10:46.437]

File <CTLSEP001F9E2525CF.tlv> : error 2 in system call CreateFile The system cannot find the file specified. [10/10 00:10:46.437]

Connection received from 192.168.1.201 on port 53067 [10/10 00:11:17.125]

Read request for file <ITLSEP001F9E2525CF.tlv>. Mode octet [10/10 00:11:17.125]

File <ITLSEP001F9E2525CF.tlv> : error 2 in system call CreateFile The system cannot find the file specified. [10/10 00:11:17.125]

Connection received from 192.168.1.201 on port 51771 [10/10 00:11:47.953]

Read request for file <ITLFile.tlv>. Mode octet [10/10 00:11:47.953]

File <ITLFile.tlv> : error 2 in system call CreateFile The system cannot find the file specified. [10/10 00:11:47.953]

Success… Phones Work Rung 2501 from 2401, seems to have dialing delay
NEW TEMPLATE

How this was done was as follows:

We need to create ourselves a new template for the 7941 Phones.

Fist we select SYSTEM, then SIP CHANNELS, Then TEMPLATES, Then ADD TEMPLATE.

On the next page select LOAD TEMPLATE and load “Cisco 79xx series”

Next to “Template Name *” Enter “ Cisco 7941”

Under “Device Configuration” next to “Template 1” select “edit”

Select all the text in the template and replace it with:

<device>

<deviceProtocol>SIP</deviceProtocol>

<sshUserId>cisco</sshUserId>

<sshPassword>cisco</sshPassword>

<ipAddressMode>0</ipAddressMode>

<devicePool>

<dateTimeSetting>

<dateTemplate>D/M/Ya</dateTemplate>

<timeZone>New Zealand Standard/Daylight TIme</timeZone>

<ntps>

<ntp>

<name>192.168.1.199</name>

<ntpMode>Unicast</ntpMode>

</ntp>

</ntps>

</dateTimeSetting>

<callManagerGroup>

<members>

<member priority="0">

<callManager>

<ports>

<ethernetPhonePort>2000</ethernetPhonePort>
<sipPort>5060</sipPort>

<securedSipPort>5061</securedSipPort>

</ports>

<processNodeName>192.168.1.199</processNodeName>

</callManager>

</member>

</members>

</callManagerGroup>

</devicePool>

<sipProfile>

<sipProxies>

<registerWithProxy>true</registerWithProxy>

</sipProxies>

<sipCallFeatures>

<cnfJoinEnabled>true</cnfJoinEnabled>

<rfc2543Hold>false</rfc2543Hold>

<callHoldRingback>2</callHoldRingback>

<localCfwdEnable>true</localCfwdEnable>

<semiAttendedTransfer>true</semiAttendedTransfer>

<anonymousCallBlock>2</anonymousCallBlock>

<callerIdBlocking>2</callerIdBlocking>

<dndControl>0</dndControl>

<remoteCcEnable>true</remoteCcEnable>

</sipCallFeatures>

<sipStack>

<sipInviteRetx>6</sipInviteRetx>

<sipRetx>10</sipRetx>

<timerInviteExpires>180</timerInviteExpires>

<timerRegisterExpires>3600</timerRegisterExpires>

<timerRegisterDelta>5</timerRegisterDelta>

<timerKeepAliveExpires>120</timerKeepAliveExpires>

<timerSubscribeExpires>120</timerSubscribeExpires>
<timerSubscribeDelta>5</timerSubscribeDelta>

<timerT1>500</timerT1>

<timerT2>4000</timerT2>

<maxRedirects>70</maxRedirects>

<remotePartyID>false</remotePartyID>

<userInfo>None</userInfo>

</sipStack>

<autoAnswerTimer>1</autoAnswerTimer>

<autoAnswerAltBehavior>false</autoAnswerAltBehavior>

<autoAnswerOverride>true</autoAnswerOverride>

<transferOnhookEnabled>false</transferOnhookEnabled>

<enableVad>false</enableVad>

<preferredCodec>g792a</preferredCodec>

<dtmfAvtPayload>101</dtmfAvtPayload>

<dtmfDbLevel>3</dtmfDbLevel>

<dtmfOutofBand>avt</dtmfOutofBand>

<alwaysUsePrimeLine>false</alwaysUsePrimeLine>

<alwaysUsePrimeLineVoiceMail>false</alwaysUsePrimeLineVoiceMail>

<kpml>3</kpml>

<natEnabled>false</natEnabled>

<phoneLabel>ipbx %%username%%</phoneLabel>

<stutterMsgWaiting>0</stutterMsgWaiting>

<callStats>false</callStats>

<silentPeriodBetweenCallWaitingBursts>10</silentPeriodBetweenCallWaitingBursts>

<disableLocalSpeedDialConfig>false</disableLocalSpeedDialConfig>

<startMediaPort>16384</startMediaPort>

<stopMediaPort>32766</stopMediaPort>

<sipLines>

<line button="1">

<featureID>9</featureID>

<featureLabel>%%username%%</featureLabel>

<proxy>USECALLMANAGER</proxy>
<port>5060</port>

<name>%%username%%</name>

<displayName>%%username%%</displayName>

<autoAnswer>

<autoAnswerEnabled>2</autoAnswerEnabled>

</autoAnswer>

<callWaiting>3</callWaiting>

<authName>%%username%%</authName>

<authPassword>%%secret%%</authPassword>

<sharedLine>false</sharedLine>

<messageWaitingLampPolicy>1</messageWaitingLampPolicy>

<messagesNumber>%%username%%</messagesNumber>

<ringSettingIdle>4</ringSettingIdle>

<ringSettingActive>5</ringSettingActive>

<contact>%%username%%</contact>

<forwardCallInfoDisplay>

<callerName>true</callerName>

<callerNumber>true</callerNumber>

<redirectedNumber>false</redirectedNumber>

<dialedNumber>true</dialedNumber>

</forwardCallInfoDisplay>

</line>

</sipLines>

<voipControlPort>5060</voipControlPort>

<dscpForAudio>184</dscpForAudio>

<ringSettingBusyStationPolicy>0</ringSettingBusyStationPolicy>

<dialTemplate>dialplan.xml</dialTemplate>

</sipProfile>

<commonProfile>

<phonePassword></phonePassword>

<backgroundImageAccess>true</backgroundImageAccess>

<callLogBlfEnabled>1</callLogBlfEnabled>
</commonProfile>

<loadInformation>SIP41.9-4-2SR3-1S</loadInformation>

<vendorConfig>

<disableSpeaker>false</disableSpeaker>

<disableSpeakerAndHeadset>false</disableSpeakerAndHeadset>

<pcPort>0</pcPort>

<settingsAccess>1</settingsAccess>

<garp>0</garp>

<voiceVlanAccess>0</voiceVlanAccess>

<videoCapability>0</videoCapability>

<autoSelectLineEnable>0</autoSelectLineEnable>

<webAccess>0</webAccess>

<spanToPCPort>1</spanToPCPort>

<loggingDisplay>1</loggingDisplay>

<loadServer></loadServer>

<sshAccess>0</sshAccess>

<sshPort>22</sshPort>

</vendorConfig>

<versionStamp>001</versionStamp>

<networkLocale>United_Kingdom</networkLocale>

<networkLocaleInfo>

<name>United_Kingdom</name>

<uid>64</uid>

<version>1.0.0.0-4</version>

</networkLocaleInfo>

<deviceSecurityMode>1</deviceSecurityMode>

<authenticationURL></authenticationURL>

<servicesURL></servicesURL>

<transportLayerProtocol>2</transportLayerProtocol>

<certHash></certHash>

<encrConfig>false</encrConfig>
<dialToneSetting>2</dialToneSetting>

</device>

next alter the “Destination” from: /tftpboot/sip_phone/SIP%%MAC%%.cnf

to read: /tftpboot/SEP%%MAC%%.cnf.xml

Select “return to update template”

Then select “add template”

Next select “users” to the left under “system”

Select “add user”

Your screen should look like this:

Fill out the form to your requirements but under device type select our new template of “Cisco 7941” before entering the
phones “MAC address”

Then choose “update user”

Connect your phone and it should now find the profile.

You can confirm this by choosing “sip channels” to the left

DHCP/TFTP SERVER FIX


Next is to fix the dhcp and tftp server problems:

On the main unit or via SSH, we log in as ‘root’ and run the following:

yum install dnsmasq

nano /etc/dnsmasq.conf

In the dnsmasq.conf file we change these lines:

#interface= to interface=eth0

#dhcp-range=192.168.0.50,192.168.0.150,12h

to

dhcp-range=192.168.1.200,192.168.1.240,12h

#enable-tftp to enable-tftp

and

#tftp-root=/xx/xxx to tftp-root=/tftpboot

Then all that needs to be done is to run the following command:

Service dnsmasq start

Then

Service dnsmasq status

Then if you want you can reboot the system, or carry on as normal

Any phones installed will have to be rebooted.

TFTPD32 LOG FILES

Connection received from 192.168.1.201 on port 52479 [10/10 00:04:35.671]

Read request for file <SEP001F9E2525CF.cnf.xml>. Mode octet [10/10 00:04:35.671]

Using local port 3922 [10/10 00:04:35.671]

<SEP001F9E2525CF.cnf.xml>: sent 13 blks, 6405 bytes in 0 s. 0 blk resent [10/10 00:04:35.734]

Connection received from 192.168.1.201 on port 49711 [10/10 00:05:32.421]

Read request for file <SIP41.9-4-2SR3-1S.loads>. Mode octet [10/10 00:05:32.437]

Using local port 3923 [10/10 00:05:32.437]

<SIP41.9-4-2SR3-1S.loads>: sent 2 blks, 648 bytes in 0 s. 0 blk resent [10/10 00:05:32.500]

Connection received from 192.168.1.201 on port 50740 [10/10 00:06:06.062]

Read request for file <jar41sip.9-4-2ES26.sbn>. Mode octet [10/10 00:06:06.062]

Using local port 3924 [10/10 00:06:06.062]

<jar41sip.9-4-2ES26.sbn>: sent 3188 blks, 1631776 bytes in 3 s. 0 blk resent [10/10 00:06:09.265]
Connection received from 192.168.1.201 on port 51142 [10/10 00:06:46.765]

Read request for file <cnu41.9-4-2ES26.sbn>. Mode octet [10/10 00:06:46.765]

Using local port 3925 [10/10 00:06:46.765]

<cnu41.9-4-2ES26.sbn>: sent 1088 blks, 556833 bytes in 2 s. 1 blk resent [10/10 00:06:48.875]

Connection received from 192.168.1.201 on port 50934 [10/10 00:07:23.671]

Read request for file <apps41.9-4-2ES26.sbn>. Mode octet [10/10 00:07:23.671]

Using local port 3926 [10/10 00:07:23.671]

<apps41.9-4-2ES26.sbn>: sent 6168 blks, 3157527 bytes in 7 s. 1 blk resent [10/10 00:07:30.812]

Connection received from 192.168.1.201 on port 52848 [10/10 00:08:11.468]

Read request for file <dsp41.9-4-2ES26.sbn>. Mode octet [10/10 00:08:11.468]

Using local port 3927 [10/10 00:08:11.468]

<dsp41.9-4-2ES26.sbn>: sent 1100 blks, 562693 bytes in 1 s. 0 blk resent [10/10 00:08:12.609]

Connection received from 192.168.1.201 on port 49523 [10/10 00:08:46.968]

Read request for file <cvm41sip.9-4-2ES26.sbn>. Mode octet [10/10 00:08:46.984]

Using local port 3928 [10/10 00:08:46.984]

<cvm41sip.9-4-2ES26.sbn>: sent 5257 blks, 2691284 bytes in 6 s. 0 blk resent [10/10 00:08:52.234]

You might also like