Migrar telefonos Cisco 7940G de SCCP a SIP

0
665

El proceso es sencillo, googleando un poco encontre la forma de hacer la migracion, cuando lo entiendes parece facil pero si no sabes nada de estos telefonos si se complica un poco…

Asi que aqui les dejo el procedimiento:

Primero debemos tener el firmware al cual queremos migrar nuestros telefonos…

Yo escogi la version P0S3-08-8-00 porque es la que se tiene aqui en la empresa, aunque ya hay otras mayores…

Software necesario …

– xinetd
  Intente hacerlo por inetd pero la verdad se me hizo mucho mas facil por xinetd

– tftp
  Lugar donde residira el firware y las configuraciones de los telefonos

– dhcp
  Haste la vida mas facil si tienes como yo que migrar 14 telefonos…

Paso No. 1: Instalar

Instalamos xinetd, tftp, dhcp

fvasquez@fvasquez:~$ sudo apt-get install xinetd tftpd dhcp3-server

Paso No. 2: Configurar TFTP

Editamos inetd.conf y borramos el contenido para tftp


fvasquez@fvasquez:~$ sudo nano /etc/inetd.conf


Borramos la linea


tftp            dgram   udp     wait    nobody  /usr/sbin/tcpd  /usr/sbin/in.tftpd /srv/tftp


Ahora editamos el siguiente archivo (si no existe crealo)


fvasquez@fvasquez:~$ sudo nano /etc/xinetd.d/tftp


Y lo dejamos como se indica


service tftp
{
        protocol             = udp
        port                     = 69
        socket_type     = dgram
        wait                     = yes
        user                    = root
        server                = /usr/sbin/in.tftpd
        server_args     = -s /tftpboot
        disable               = no
        per_source       = 11
        cps                      = 100 2
        flags                    = IPv4
}


Podemos ver en la clausula server_args estamos definiendo a /tftboot como el area de almacenaje de nuestros archivos:

Asi que debemos crearlo y lo vamos a hacer directamente dependendiente de la raiz de documentos y le damos todos los permisos al directorio:


fvasquez@fvasquez:~$ sudo mkdir /tftpboot
fvasquez@fvasquez:~$ sudo chmod 777 /tftboot -rf


reiniciamos el servicio xinetd.d


fvasquez@fvasquez:~$ sudo /etc/init.d/xinetd restart


probamos que todo este funcionado


fvasquez@fvasquez:~$ sudo netstat -a -p | grep tftp
udp        0      0 *:tftp                  *:*                                 2726/xinetd  
  


Paso No. 3: Probando el TFTP

p.e debemos tener en el directorio activo el archivo que queremos subir


fvasquez@fvasquez:~/Imágenes$ ls
bike-blue2.jpg


Para subir bike-blue2.jpg primero debo crear un archivo con el mismo nombre dentro del directorio /tftboot y asignarle permisos, en el siguiente caso lo hare para todo el directorio porque todo lo que este dentro del tftpboot tendra todos los permisos…


fvasquez@fvasquez:~/Imágenes$ touch /tftboot/bike-blue2.jpg
fvasquez@fvasquez:~/Imágenes$ sudo chown root.root /tftpboot -Rf
fvasquez@fvasquez:~/Imágenes$ sudo chmod 777 /tftpboot -Rf


Ahora si a subir el archivo


fvasquez@fvasquez:~/Imágenes$ tftp localhost
tftp> put bike-blue2.jpg
Sent 258863 bytes in 0.0 seconds
tftp> quit


Descargar el archivo en otro directorio


fvasquez@fvasquez:~/Imágenes$ cd ..
fvasquez@fvasquez:~$ tftp localhost
tftp> get bike-blue2.jpg
Received 258863 bytes in 0.1 seconds
tftp> quit


Paso No. 3: Creando configuracion para DHCP

Todo esta funcionando ahora vamos con el DHCP, asumiendo que tenemos una ip clase 192.168.1.x

Editamos el siguiente archivo:


fvasquez@fvasquez:/$ sudo nano /etc/dhcp3/dhcpd.conf



ddns-update-style interim;
ignore client-updates;

subnet 192.168.1.0 netmask 255.255.255.0 {

  option routers                  192.168.1.1;
  option subnet-mask              255.255.255.0;
  option nis-domain               “myasterisk.local”;
  option domain-name              “myasterisk.local”;
  option domain-name-servers      192.168.1.1;
  option time-offset              -18000;      # Eastern Standard Time
  option ntp-servers              192.168.0.250;
  option tftp-server-name         “192.168.0.250”;

  range dynamic-bootp 192.168.1.128 192.168.1.254;
  default-lease-time 43200;
  max-lease-time 86400;
}


Listo ahora solo prendemos el dhcp


fvasquez@fvasquez:/$ sudo /etc/init.d/dhcp3-server start


Paso No. 4: Subiendo firmware al TFTP

IMPORTANTE:
Dentro de la documentacion de cisco indica que para migrar un telefono 7940 con protocolo SCCP a SIP debemos hacer alguna de las siguientes dos cosas migrarlo a una version vieja de SIP p.e P0S3-06-3-00 y de ahi subirlo la version 7 u 8  o en su defecto actualizarlo a una version superior de SCCP y despues pasarlo a SIP 7 u 8, yo elegi la primera opcion asi que a buscar la version P0S3-06-3-00

Subimos al tftp la version P0S3-06-3-00 segun como indica la documentacion….


fvasquez@fvasquez:~$ cp P0S3-06-3-00.zip /tftpboot/
fvasquez@fvasquez:~$ cd /tftpboot/


Descomprimimos el archivo


fvasquez@fvasquez:/tftpboot$ unzip P0S3-06-3-00.zip
Archive:  P0S3-06-3-00.zip
  inflating: P0S3-06-3-00.sbn       
  inflating: P0S3-06-3-00.bin 


Asignamos todo a root con propiedad 777


fvasquez@fvasquez:/tftpboot$ sudo chmod 777 * -Rf
fvasquez@fvasquez:/tftpboot$ sudo chown root.root * -Rf


Revisamos el tftboot


fvasquez@fvasquez:/tftpboot$ ls -al
total 1800
drwxrwxrwx    2   root root            75   2009-04-14   11:08   .
drwxr-xr-x     22   root root       4096   2009-04-14   08:57   ..
-rwxrwxrwx     1   root root   486794   2004-03-08   16:11   P0S3-06-3-00.bin
-rwxrwxrwx     1   root root   487198   2004-03-08   16:11   P0S3-06-3-00.sbn
-rwxrwxrwx     1   root root   860626   2009-04-14   11:07   P0S3-06-3-00.zip


Paso No. 5: Configurando archivos extras el TFTP
 
Ya tenemos la version del firmware pero aun nos faltan archivos en nuestro tftp, la documentacion dice que debemos tener los siguientes
OS79XX.TXT
SIPDefault.cnf
xmlDefault.CNF.XML
XMLDefault.cnf.xml

y tambien un SIPmac.cnf pero ese para la migracion no lo vamos a crear…

Aqui les dejo la conf de cada uno de estos archivos….

OS79XX.TXT


P0S3-06-3-00


SIPDefault.cnf


# Image Version
image_version: “P0S3-06-3-00”

# Proxy Server
# Note: I put the proxy server information in the individual conf files
# for each machine, since each box has different configs.  You could, of course,
# put all of them here in the Default file…
proxy1_address: “192.168.1.254”
proxy2_address: “”
proxy3_address: “”
proxy4_address: “”
proxy5_address: “”
proxy6_address: “”
 
# Proxy Server Port (default – 5061)
proxy1_port:”5060″
proxy2_port:”5060″
proxy3_port:”5060″
proxy4_port:”5060″
proxy5_port:”5060″
proxy6_port:”5060″

# 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: “”
 
# NAT/Firewall Traversal
nat_enable: “0”
nat_address: “”
voip_control_port: “5061”
start_media_port: “16384”
end_media_port:  “32766”
nat_received_processing: “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: “1”      ; 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: “./”
 
# Time Server
sntp_mode: “directedbroadcast”
sntp_server: “192.168.1.254”
time_zone: “PST”
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: “02”
dst_stop_month: “Oct”
dst_stop_day: “”
dst_stop_day_of_week: “Sunday”
dst_stop_week_of_month: “8”
dst_stop_time: “2”
dst_auto_adjust: “1”
 xmlDefault.CNF.XML
# 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-enabl
ed no user control)
callerid_blocking: “0”            ; Default 0 (Disable sending all calls as anon
ymous)
 
# 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 cal
ls)
 
# Call Waiting (0-disabled, 1-enabled, 2-disabled with no user control, 3-enable
d 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: “1”

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

# XML URLs
#services_url: “http://192.168.1.254/menu.pl” ; URL for external Phone Services
#services_url: “http://192.168.1.254/cgi-bin/cisco7960/menu.xml”  ; test
url
#directory_url:
“http://192.168.1.254/voip_xml_utils/index.cfm?fuseaction=dspEmployeeMenu”     
        
# URL for external Directory location
logo_url: “http://192.168.1.254/milogo.bmp”       
#            ; URL for branding logo to be used on phone display

# put your own logo in the logo_url location; I include the 10-20.com one for re
ference in building your own

# HTTP Proxy Support
http_proxy_addr: “”             ; Address of HTTP Proxy server
http_proxy_port: 80             ; 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.1.254”   ; restricted to dotted IP

# The dynamic tftp server should be set to whatever your TFTP server is.  This w
ay, it
# keeps the tftp server setting even though you might be using DHCP (default beh
avior
# 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

 


xmlDefault.CNF.XML


<Default>
      <callManagerGroup>
        <members>
          <member priority=”0″>
            <callManager>
              <ports>
                <ethernetPhonePort>2000</ethernetPhonePort>
              </ports>
              <processNodeName>192.168.77.4</processNodeName>
            </callManager>
          </member>
        </members>
      </callManagerGroup>
      <loadInformation6 model=”IP Phone 7910″></loadInformation6>
      <loadInformation124 model”Addon 7914″></loadInformation124>
      <loadInformation9 model=”IP Phone 7935″></loadInformation9>
      <loadInformation8 model=”IP Phone 7940″>P003-06-3-00</loadInformation8>
      <loadInformation7 model=”IP Phone 7960″>P003-08-8-00</loadInformation7>
      <loadInformation20000 model=”IP Phone 7905″></loadInformation20000>
      <loadInformation30008 model=”IP Phone 7902″></loadInformation30008>
      <loadInformation30007 model=”IP Phone 7912″></loadInformation30007>
</Default>


 

 

XMLDefault.cnf.xml


<Default>
      <callManagerGroup>
        <members>
          <member priority=”0″>
            <callManager>
              <ports>
                <ethernetPhonePort>2000</ethernetPhonePort>
              </ports>
              <processNodeName>192.168.77.4</processNodeName>
            </callManager>
          </member>
        </members>
      </callManagerGroup>
      <loadInformation6 model=”IP Phone 7910″></loadInformation6>
      <loadInformation124 model”Addon 7914″></loadInformation124>
      <loadInformation9 model=”IP Phone 7935″></loadInformation9>
      <loadInformation8 model=”IP Phone 7940″>P003-06-3-00</loadInformation8>
      <loadInformation7 model=”IP Phone 7960″>P003-08-8-00</loadInformation7>
      <loadInformation20000 model=”IP Phone 7905″></loadInformation20000>
      <loadInformation30008 model=”IP Phone 7902″></loadInformation30008>
      <loadInformation30007 model=”IP Phone 7912″></loadInformation30007>
</Default>


una vez creados estos archivos nuestro directorio lucira asi



fvasquez@fvasquez:/tftpboot$ ls -al
total 1824
drwxrwxrwx     2 root root         4096  2009-04-14   11:25   .
drwxr-xr-x      22 root root         4096  2009-04-14   08:57   ..
-rwxrwxrwx      1 root root              13  2009-04-14   11:23   OS79XX.TXT
-rwxrwxrwx      1 root root     486794  2004-03-08   16:11   P0S3-06-3-00.bin
-rwxrwxrwx      1 root root     487198  2004-03-08   16:11   P0S3-06-3-00.sbn
-rwxrwxrwx      1 root root     860626  2009-04-14   11:07   P0S3-06-3-00.zip
-rwxrwxrwx      1 root root          5290  2009-04-14   11:24   SIPDefault.cnf
-rwxrwxrwx      1 root root            957  2009-04-14   11:25   xmlDefault.CNF.XML
-rwxrwxrwx      1 root root            958  2009-04-14   11:25   XMLDefault.cnf.xml


Paso No. 6: DETALLES

Para indicar que se va a migrar a la version P0S3-06-3-00 se configuran los siguientes puntos….

En OS79XX.TXT


P0S3-06-3-00


En SIPDefault.cnf


image_version: “P0S3-06-3-00”



en xmlDefault.CNF.XML


<loadInformation8 model="IP Phone 7940">P003-06-3-00</loadInformation8>

XMLDefault.cnf.xml 


<loadInformation8 model="IP Phone 7940">P003-06-3-00</loadInformation8>

Ahora si a conectar Sonriente  los telefonos a la computadora y a migrar de SCCP a SIP  P0S3-06-3-00

Paso No. 7: Monitoreando la actualizacion

podemos ir viendo lo que sucede con un


fvasquez@fvasquez:~$ tail -f /var/log/messages


Paso No. 8: Actualizando a la version P0S3-08-8-00
Listo ya tenemos los telefonos en la version P0S3-06-3-00 ahora necesitamos pasarlos a la version P0S3-08-8-00

Teniendo el firware mas nuevo P0S3-08-8-00 debemos hacer lo mismo que en el paso ‘Paso No. 4: Subiendo firware al TFTP’ y hacer las siguentes
modificaciones

En OS79XX.TXT


P003-08-8-00


En SIPDefault.cnf


image_version: “P0S3-08-8-00”



En xmlDefault.CNF.XML


<loadInformation8 model="IP Phone 7940">P003-08-8-00</loadInformation8>

En XMLDefault.cnf.xml 


<loadInformation8 model="IP Phone 7940">P003-08-8-00</loadInformation8>

 


 

Conectar nuevamente telefonos a la computadora e ir monitoreando los sucesos….. SonrienteSonrienteSonriente

 


fvasquez@fvasquez:~$ tail -f /var/log/messages


Esto es todo para hacer la migracion unicamente…. aun falta la provision para cada telefono en el asterisk y y crear el archivo SIPmac.cnf pero ese es cuestion de otro manual…


Atte Faustino Vasquez Limon

LEAVE A REPLY

Please enter your comment!
Please enter your name here