Networking/IPv6

From Snom User Wiki

< Networking
Revision as of 14:57, 31 October 2012 by Beckmatt (Talk | contribs)
Jump to: navigation, search

IPv6 is becoming a reality. snom provides IPv6 support for snom 3xx, snom 7xx and snom 8xx series. This page describes how to use it.

Contents

Features and Limitations

The snom 3xx phones are currently using the 2.4.xx Linux Kernel with the built-in IPv6 implementation. This kernel is not "IPv6 ready". The platform that we are using has a new kernel available that uses a 2.6 kernel which has been certified as "IPv6 ready" and we plan to eventually move to this kernel when the IPv6 certification is becoming a necessity.

If the phone runs in IPv6 mode, then the whole phone must use IPv6. That means that also other protocols like HTTP, NTP, TFTP or DNS must be run over IPv6. When using DNS, the phone only queries DNS NAPTR, DNS SRV and DNS AAAA records. DNS A records are not requested.

When running in IPv6 mode, there is no multicast detection of the provisioning server. Also, the phone does not listen to multicast RTP streams.

There is probably no VPN available when running in IPv6 mode (snom 370, snom 820, snom 870). At least this feature has not been tested.

Apart from these limitations, all other features of the phone should also work in IPv6, including SRTP, TLS and all other call functions.

Required Firmware

The IPv6 support is available for all models of the 3xx, 7xx and 8xx series, including snom 300, 320, 360, 370 and 820.

Starting with version 7.3.14, the snom firmware includes the IPv6 support. However, in order to use also other features like provisioning and NTP, you need a newer firmware 7.3.17 or newer.

IPv6 on snom m9

The snom m9 natively supports IPv6 for SIP. Please see the configuration and usage details here

Using IPv6

In order to use the IPv6 mode, you need to go to the advanced settings and turn the DHCP flag off. You must enter the IPv6 address of the phone; the netmask must remain empty.

You should also specify the address of an IPv6-enabled DNS server. The phone will use this server for requesting DNS entries. Please note that in many networks, the DNS server has the IP address FEC0:0:0:FFFF::1.

You should also enter the address of the NTP server. This can be a IPv6 address or a DNS name. If you are using DNS, then the AAAA record for that address must be available for the phone.

image:ipv6_ip.gif

You may also automatically provision the phone from a plug and play server. Again, if you are using DNS, then the AAAA record for that address must be available for the phone. Otherwise, just enter the IPv6 address. If the PnP server provides a URL for the firmware, that URL must be downloadable via IPv6.

image:ipv6_pnp.gif

After saving the setting, you must reboot the device.

Examples

Registration

The following picture shows a example registration:

Image:ipv6_reg.gif

The phone registeres to the PBX using the following packet:

Sent to tls:[db8:2001::1111]:5061 at 12/3/2009 14:28:53:904 (663 bytes):

REGISTER sip:localhost SIP/2.0
Via: SIP/2.0/TLS [db8:2001::1234]:2104;branch=z9hG4bK-msedi11d9umw;rport
From: "Fourty One" <sip:41@localhost>;tag=urd4jzz71y
To: "Fourty One" <sip:41@localhost>
Call-ID: 3c267032a943-tdhybir44kpf
CSeq: 69 REGISTER
Max-Forwards: 70
Contact: <sip:41@[db8:2001::1234]:2104;transport=tls;line=9ymq1yxy>;reg-id=1;q=1.0;+sip.instance="<urn:uuid:d23b1156-bf4b-4c98-a2e9-22c29c730b78>"
User-Agent: snom320/7.3.17
Supported: gruu
Allow-Events: dialog
WWW-Contact: <http://[db8:2001::1234]:80>
WWW-Contact: <https://[db8:2001::1234]:443>
Expires: 3600
Content-Length: 0

--------------------------------------------------------------------------------
Received from tls:[db8:2001::1111]:5061 at 12/3/2009 14:28:54:126 (358 bytes): 

SIP/2.0 200 Ok
Via: SIP/2.0/TLS [db8:2001::1234]:2104;branch=z9hG4bK-msedi11d9umw;rport=2104
From: "Fourty One" <sip:41@localhost>;tag=urd4jzz71y
To: "Fourty One" <sip:41@localhost>;tag=9ec5751666
Call-ID: 3c267032a943-tdhybir44kpf
CSeq: 69 REGISTER
Contact: <sip:41@[db8:2001::1234]:2104;transport=tls;line=9ymq1yxy>;expires=180
Content-Length: 0

Call Setup

The following packet shows a sample call setup from the phone:

Sent to tls:[db8:2001::1111]:5061 at 12/3/2009 14:24:16:624 (1200 bytes):

INVITE sip:*97@localhost;user=phone SIP/2.0
Via: SIP/2.0/TLS [db8:2001::1234]:2104;branch=z9hG4bK-65bzorhpnsr1;rport
From: "Fourty One" <sip:41@localhost>;tag=kpzs274ee2
To: <sip:*97@localhost;user=phone>
Call-ID: 3c268729f0e1-8gyhtp3c3g5k
CSeq: 1 INVITE
Max-Forwards: 70
Contact: <sip:41@[db8:2001::1234]:2104;transport=tls;line=9ymq1yxy>;reg-id=1
P-Key-Flags: keys="3"
User-Agent: snom320/7.3.17
Accept: application/sdp
Allow: INVITE, ACK, CANCEL, BYE, REFER, OPTIONS, NOTIFY, SUBSCRIBE, PRACK, MESSAGE, INFO
Allow-Events: talk, hold, refer, call-info
Supported: timer, 100rel, replaces, from-change
Session-Expires: 3600;refresher=uas
Min-SE: 90
Proxy-Require: buttons
Content-Type: application/sdp
Content-Length: 456

v=0
o=root 2033607819 2033607819 IN IP6 db8:2001::1234
s=call
c=IN IP6 db8:2001::1234
t=0 0
m=audio 54132 RTP/AVP 9 0 8 2 3 18 4 101
a=crypto:1 AES_CM_128_HMAC_SHA1_32 inline:+f3gkFVsx3C6ThDfVezOQHphyyYW8u/3w/J7toPj
a=rtpmap:9 g722/8000
a=rtpmap:0 pcmu/8000
a=rtpmap:8 pcma/8000
a=rtpmap:2 g726-32/8000
a=rtpmap:3 gsm/8000
a=rtpmap:18 g729/8000
a=rtpmap:4 g723/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=ptime:20
a=sendrecv
--------------------------------------------------------------------------------
Received from tls:[db8:2001::1111]:5061 at 12/3/2009 14:24:16:761 (277 bytes):

SIP/2.0 100 Trying
Via: SIP/2.0/TLS [db8:2001::1234]:2104;branch=z9hG4bK-65bzorhpnsr1;rport=2104
From: "Fourty One" <sip:41@localhost>;tag=kpzs274ee2
To: <sip:*97@localhost;user=phone>;tag=e5b32bdb34
Call-ID: 3c268729f0e1-8gyhtp3c3g5k
CSeq: 1 INVITE
Content-Length: 0

--------------------------------------------------------------------------------
Received from tls:[db8:2001::1111]:5061 at 12/3/2009 14:24:19:506 (935 bytes):

SIP/2.0 200 Ok
Via: SIP/2.0/TLS [db8:2001::1234]:2104;branch=z9hG4bK-65bzorhpnsr1;rport=2104
From: "Fourty One" <sip:41@localhost>;tag=kpzs274ee2
To: <sip:*97@localhost;user=phone>;tag=e5b32bdb34
Call-ID: 3c268729f0e1-8gyhtp3c3g5k
CSeq: 1 INVITE
Contact: <sip:41@[db8:2001::1111]:5061;transport=tls>
Supported: 100rel, replaces, norefersub
Allow-Events: refer
Allow: INVITE, ACK, CANCEL, BYE, REFER, PRACK, INFO, UPDATE
Accept: application/sdp
User-Agent: pbxnsip-PBX/3.3.0.3160
Content-Type: application/sdp
Content-Length: 390

v=0
o=- 33925 33925 IN IP6 db8:2001::1111
s=-
c=IN IP6 db8:2001::1111
t=0 0
m=audio 62486 RTP/AVP 0 8 9 2 3 101
a=crypto:1 AES_CM_128_HMAC_SHA1_32 inline:NZ4VEY9odmXNPSf3Z9ccjFAdgDhRK7EYkomcMlYk
a=rtpmap:0 pcmu/8000
a=rtpmap:8 pcma/8000
a=rtpmap:9 g722/8000
a=rtpmap:2 g726-32/8000
a=rtpmap:3 gsm/8000
a=rtpmap:101 telephone-event/8000
a=fmtp:101 0-16
a=ptime:20
a=sendrecv
--------------------------------------------------------------------------------
Sent to tls:[db8:2001::1111]:5061 at 12/3/2009 14:24:19:551 (425 bytes):

ACK sip:41@[db8:2001::1111]:5061;transport=tls SIP/2.0
Via: SIP/2.0/TLS [db8:2001::1234]:2104;branch=z9hG4bK-jmoetvtpqtjx;rport
From: "Fourty One" <sip:41@localhost>;tag=kpzs274ee2
To: <sip:*97@localhost;user=phone>;tag=e5b32bdb34
Call-ID: 3c268729f0e1-8gyhtp3c3g5k
CSeq: 1 ACK
Max-Forwards: 70
Contact: <sip:41@[db8:2001::1234]:2104;transport=tls;line=9ymq1yxy>;reg-id=1
Proxy-Require: buttons
Content-Length: 0

IPv6 on the PC port

Even if your phone is using an IPv4 address, you can connect a IPv6 host on the PC port. The phone acts only as a switch from PC to NET port. This means that if the host sends IPv6 packets to the phone on the PC port, the packets are sent further through the NET port of the phone, with no change to the IP headers.

Interoperability

So far, the interoperability of the IPv6 implementation has been shown with Asterisk-based (see http://www.asteriskv6.org) systems and pbxnsip (http://www.pbxnsip.com/ipv6).

Personal tools
Interoperability