|
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  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.....    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
|