Dies ist eine alte Version des Dokuments!
Die Telefone sind PoE-fähig und mit einer SIP-Firmware versehen. Sie sind dafür vorgesehen, über einen tftp-Server provisioniert zu werden. Eine Grundkonfiguration wird hier beschrieben. Die Konfiguration besteht aus einem dnsmasq, der gleichzeitig DHCP- und tftp-Server spielt. Das Telefon lädt seine Konfiguration und seine Firmware von diesem TFTP-Server.
Folgende Konfiguration in der /etc/dnsmasq.conf o.ä. kopieren:
# deactivate DNS port=0 # listen on specific interface and/or address interface=eth0 #listen-address=192.168.1.254 listen-address=10.23.42.254 bind-interfaces ## DHCP configuration #dhcp-range=192.168.1.10,192.168.1.100 dhcp-range=10.23.42.10,10.23.42.100 dhcp-option=option:router,10.23.42.254 dhcp-option=option:dns-server,8.8.8.8 ## TFTP configuration enable-tftp tftp-root=/var/tftpboot dhcp-option=150,10.23.42.254
Dann den dnsmasq im Vordergrund starten:
$ dnsmasq -d
Wenn das Telefon mit Strom versorgt wird, sollte es versuchen, seine IP zu konfigurieren und die Konfigurationsdatei zu laden. Das sieht so aus:
$ sudo dnsmasq -d -i eth0 dnsmasq: started, version 2.59 DNS disabled dnsmasq: compile time options: IPv6 GNU-getopt DBus i18n DHCP TFTP conntrack IDN dnsmasq-dhcp: DHCP, IP range 192.168.1.10 -- 192.168.1.100, lease time 1h dnsmasq-tftp: TFTP root is /var/tftpboot dnsmasq-dhcp: DHCPDISCOVER(eth0) 172.16.2.4 00:15:c6:16:b8:29 dnsmasq-dhcp: DHCPOFFER(eth0) 192.168.1.47 00:15:c6:16:b8:29 dnsmasq-dhcp: DHCPREQUEST(eth0) 192.168.1.47 00:15:c6:16:b8:29 dnsmasq-dhcp: DHCPACK(eth0) 192.168.1.47 00:15:c6:16:b8:29 SIP0015C616B829 dnsmasq-tftp: file /var/tftpboot/OS79XX.TXT not found dnsmasq-tftp: file /var/tftpboot/SIPDefault.cnf not found dnsmasq-tftp: file /var/tftpboot/SIP0015C616B829.cnf not found
Nun fehlt noch die Konfiguration (siehe die letzten drei Zeilen in obiger Ausgabe). Eine passende Konfiguration findet sich z.B. hier. Die beiden Konfigurationsdateien müssen natürlich entsprechend angepasst werden. Danach sollte das Telefon sauber booten.
sip.conf
[general] context=default ; Default context for incoming calls ; If your Asterisk is connected to the Internet ; and you have allowguest=yes ; you want to check which services you offer everyone ; out there, by enabling them in the default context (see below). allowoverlap=no ; Disable overlap dialing support. (Default is yes) udpbindaddr=0.0.0.0 ; IP address to bind UDP listen socket to (0.0.0.0 binds to all) tcpenable=no ; Enable server for incoming TCP connections (default is no) tcpbindaddr=0.0.0.0 ; IP address for TCP server to bind to (0.0.0.0 binds to all interfaces) srvlookup=yes ; Enable DNS SRV lookups on outbound calls ; Default value is 70 ; Default: 60 ; Default: 100 ; Default: 1 ; "user" portion of the URI in the From: header with this ; value if no fromuser is set ; Default: empty [authentication] [basic-options](!) ; a template dtmfmode=rfc2833 context=from-office type=friend [natted-phone](!,basic-options) ; another template inheriting basic-options nat=yes directmedia=no host=dynamic [public-phone](!,basic-options) ; another template inheriting basic-options nat=no directmedia=yes [my-codecs](!) ; a template for my preferred codecs disallow=all allow=ilbc allow=g729 allow=gsm allow=g723 allow=ulaw [ulaw-phone](!) ; and another one for ulaw-only disallow=all allow=ulaw [7701] type=friend secret=7701 host=dynamic [7702] type=friend secret=7702 host=dynamic
extensions.conf
[general] static=yes autofallthrough=no [default] exten => 500,1,Ringing exten => 500,n,Wait(1) exten => 500,n,Answer exten => 500,n,Wait(1) exten => 500,n,Playback("/home/asterisk/ansage2") exten => 500,n,Record("/tmp/fc/fullcircle%d:wav") exten => 500,n,Hangup
*6-Settings>
*CLI> core set verbose 3 Verbosity was 0 and is now 3 *CLI> core set debug 3 Core debug was 0 and is now 3