Download - SIP and IPv6 - Can They Get Along?
www.internetsociety.org/deploy360/
SIP and IPv6 – Can They Get Along?
SIP Network Operators Conference (SIPNOC) June 26, 2012
Dan York Senior Content Strategist
[email protected] +1-802-735-1624
www.internetsociety.org/deploy360/
Dan York
www.danyork.me
www.internetsociety.org/deploy360/
www.internetsociety.org/deploy360/
www.worldipv6launch.org/infographic/
www.internetsociety.org/deploy360/
The Good News!
www.internetsociety.org/deploy360/
IPv6 Works Fine!
Linphone – http://www.linphone.org Open source, free and available for Linux, Windows and MacOS X
www.internetsociety.org/deploy360/
Linphone and IPv6
Linphone – http://www.linphone.org Open source, free and available for Linux, Windows and MacOS X
www.internetsociety.org/deploy360/
More SIP Softphones Supporting IPv6
Jitsi (formerly SIP Communicator)
§ www.jitsi.org
Counterpath Bria
§ www.counterpath.com
www.internetsociety.org/deploy360/
In Fact, There Are Many More:
IP Phones (Desktop): • Avaya (unclear on exact models)
• Mitel 53xx Series • Mocet • Siemens OpenStage • Snom
IP-PBXs/Call Servers • Asterisk 1.8+ • Brekeke SIP • Cisco Unified Communications
Manager 7.1 • Freeswitch 1.1+ • Kamailio 3.1+ • OpenSIPS • Voxeo Prophecy and PRISM
Other SIP Devices • Cisco SIP Gateways ( ISR 28XX
& 38XX, AS5400 ) • Mediatrix • Mitel Border Gateway (MBG)
SIP Services (in the cloud) • INUM.net
8
www.internetsociety.org/deploy360/
Why IPv6?
www.internetsociety.org/deploy360/
In The Beginning...
192.168.20.12
www.internetsociety.org/deploy360/
Mobility
www.flickr.com/photos/kapungo/3396823518/
www.internetsociety.org/deploy360/
A Plethora of Portable Platforms
www.flickr.com/photos/clonedmilkmen/5111779335/
www.internetsociety.org/deploy360/
Internet of Things
www.flickr.com/photos/dmje/5159177886/
www.internetsociety.org/deploy360/
Internet of Things
www.internetsociety.org/deploy360/
Internet of Things
www.internetsociety.org/deploy360/
EVERYTHING over
IP
www.internetsociety.org/deploy360/
Only 2 Billion People Are Online –
What About The Other 5 Billion?
www.internetsociety.org/deploy360/
How IP Address Allocation Works
Regional Internet Registries (RIRs)
Internet Service Providers (ISPs)
You
www.internetsociety.org/deploy360/
Global IPv4 Disparity !
www.internetsociety.org/deploy360/
Oops... as of Feb 1, 2011...
Regional Internet Registries (RIRs)
Internet Service Providers (ISPs)
You
All Gone!
www.internetsociety.org/deploy360/
Solutions?
www.internetsociety.org/deploy360/
IPv4 Marketplace
www.internetsociety.org/deploy360/
Prolonging IPv4 - NAT Today
Firewall
ISP
Internet Firewall
IP Phone
PC
Home Firewall
Home
Public IP NAT
Private IP Addresses
www.internetsociety.org/deploy360/
Carrier Grade NAT (a.k.a. LSN)
ISP
Internet Firewall
IP Phone
PC
Home Firewall
Home
Public IP NAT
Private IP Addresses
Firewall
www.internetsociety.org/deploy360/
Old NATs Never Die...
ISP
Internet Firewall
IP Phone
PC
Home Firewall
Home
Public IP NAT
Private IP Addresses
Firewall
NAT Private IP Addresses
www.internetsociety.org/deploy360/
The Problem?
SIP NAT
www.internetsociety.org/deploy360/
Oh, and by the way...
(sorry... we still have NAT-like networks with IPv6...)
www.internetsociety.org/deploy360/
And then there is...
www.internetsociety.org/deploy360/
IPv6 Challenges: User Interfaces
www.internetsociety.org/deploy360/
See the problem?
www.internetsociety.org/deploy360/
See the problem?
www.internetsociety.org/deploy360/
IPv4
192.168.20.12
www.internetsociety.org/deploy360/
IPv6
2001:db8:34a5:23:aa1f:12f4:9009:1234
www.internetsociety.org/deploy360/
IPv6 Address Compression
2001:db8:34a5:0:0:0:0:1
2001:db8:34a5::1 (oh, and they aren’t case-sensitive)
www.internetsociety.org/deploy360/
IPv6 Addresses
127.0.0.1 ::1
0.0.0.0 ::
www.internetsociety.org/deploy360/
DNS is your friend!
www.internetsociety.org/deploy360/
IPv6 Challenges: Port Numbers
www.internetsociety.org/deploy360/
IPv4 Port Numbers
192.168.20.12:5060
www.internetsociety.org/deploy360/
IPv4 Port Numbers in IPv6?
192.168.20.12:5060
2001:db8:34a5::1234:5060
www.internetsociety.org/deploy360/
IPv6 Port Numbers
[2001:db8:34a5::1234]:5060
www.internetsociety.org/deploy360/
IPv6 addressing
http://[2001:db8:34a5::1234]/index.html
http://[2001:db8:34a5::1234]:8080
sip:dan@[2001:db8:34a5::1234]
sip:dan@[2001:db8:34a5::1234]:5060
www.internetsociety.org/deploy360/
IPv6 Challenge: Multiple Addresses
www.internetsociety.org/deploy360/
IPv4 – Single Address / Interface
192.168.20.12
www.internetsociety.org/deploy360/
IPv6 – Multiple Addresses / Interface
192.168.20.12
2001:db8:34a5:92:21c:a5ff:fe12:3a80 (global)
fe80::21c:a5ff:fe12:3a80 (link-local)
www.internetsociety.org/deploy360/
IPv6 – Neighbor Discovery
No More DHCP For Address Assignment
(well, unless you want it)
Router Advertisements vs ARP
www.internetsociety.org/deploy360/
IPv6 – Address Creation
2001:db8:34a5:92:21c:a5ff:fe12:3a80
Router Advertisement
Autoconfiguration from Ethernet Address
www.internetsociety.org/deploy360/
The Key Point…
Can Your Device/Software/Etc. Work With Multiple IP Addresses?
www.internetsociety.org/deploy360/
IPv6 Challenges: DNS
www.internetsociety.org/deploy360/
IPv4 and DNS
example.com 3600 IN A 192.168.20.12
www.internetsociety.org/deploy360/
IPv6 and DNS
example.com 3600 IN A 192.168.20.12
example.com 3600 IN AAAA 2001:db8:34a5::1234
www.internetsociety.org/deploy360/
IPv6 DNS Fun
What if DNS gives a AAAA....
but your system doesn’t have “real” IPv6 connectivity?
(You can retrieve AAAA records over IPv4)
www.internetsociety.org/deploy360/
UNhappy Eyeballs
You
DNS Svr
example.com A 192.168.20.12 example.com AAAA 2001:db8:34a5::1234
AAAA
(a long time later...)
A
?
?
www.internetsociety.org/deploy360/
Happy Eyeballs
You
DNS Svr
example.com A 192.168.20.12 example.com AAAA 2001:db8:34a5::1234
AAAA
A ?
?
(sent at same time; whichever replies first wins)
www.internetsociety.org/deploy360/
Happy Eyeballs
RFC 6555 tools.ietf.org/html/rfc6555
www.internetsociety.org/deploy360/
IPv6 Challenges: Storing IP Addresses
www.internetsociety.org/deploy360/
How Do You Store IP Addresses?
Memory? Databases?
Config Files?
Room for two? (or more?)
www.internetsociety.org/deploy360/
Config Files
<category name="SIP">
<item name="Server1">127.0.0.1:5060 </item>
</category>
www.internetsociety.org/deploy360/
IPv6 and SIP
www.internetsociety.org/deploy360/
RFC 6157
RFC 6157 “IPv6 Transition in the Session
Initiation Protocol (SIP)” tools.ietf.org/html/rfc6157
www.internetsociety.org/deploy360/
SIP Architecture
SIP Proxy
A
Alice Bob Media (RTP, MSRP, etc.)
SIP SIP
SIP Proxy
B SIP
www.internetsociety.org/deploy360/
SIP Reality
Internet (or WAN)
Alice Bob Media
SIP SIP
SIP Proxy
A SIP
SIP Proxy
B
SIP Proxy
N
SIP Proxy
D SIP
SIP Proxy
C SIP SIP
Media Proxy
A
Media Proxy
B Media Media
www.internetsociety.org/deploy360/
“SIP” = Multiple Protocols
SIP SDP
RTP
www.internetsociety.org/deploy360/
IPv4/IPv6 Fun
Communicating between IPv4 client and IPv6 client through a proxy
§ Record-Route: <sip:2001:db8::1;lr>
§ Record-Route: <sip:192.0.2.1;lr>
Mixed communication across a path of proxies
Mixed communication: IPv6 for SIP, IPv4 for media
www.internetsociety.org/deploy360/
IPv6 and SDP
Only allows a single IP address per media stream (“c=“ parameter)
§ c=IN IP4 192.168.20.12
§ c=IN IP6 2001:db8:34a5::1234
Multiple proposals for additional SDP parameters
§ ex. ANAT - RFC 4091 & 4092 – now deprecated by IETF but used in US military’s AS-SIP
§ draft-boucadair-mmusic-altc-05 – “Alternate Connectivity Attribute”
The IETF way forward is ICE – RFC 5245
www.internetsociety.org/deploy360/
NAT, NAT, NAT...
STUN, TURN, ICE
(RFC 5245)
www.internetsociety.org/deploy360/
Discovery of SIP Servers
User agents need to find SIP servers/proxies
DHCPv6
§ SIP Options in RFC 3319
DNS SRV, NAPTR and AAAA Records (RFC 3263)
www.internetsociety.org/deploy360/
Other IPv6 Considerations
Other interfaces
§ Web and management systems
§ Logging
§ APIs
Custom SIP headers
Multi-vendor interoperability
SBC and firewall support for SIP over IPv6
www.internetsociety.org/deploy360/
SIP Forum “IPv6” Mailing List
sipforum.org/mailman/listinfo/ipv6
www.internetsociety.org/deploy360/
SIPit Test Events
sipit.net
SIPit 28: “68% of the implementations present supported IPv6.”
www.internetsociety.org/deploy360/
Get Started With IPv6...
Deploy360 Programme
www.internetsociety.org/deploy360
www.internetsociety.org/deploy360/
SIP Forum “IPv6” Mailing List
sipforum.org/mailman/listinfo/ipv6
www.internetsociety.org/deploy360/
Attend the IPv6 BOF Tomorrow… 12:45-1:30pm
• Exchange of experiences
• Should SIP Forum charter a working group?
• What could working group do? • Document existing best practices for working with SIP over IPv6
(perhaps in the form of a short whitepaper or document).
• Identify current technical issues with using SIP over IPv6.
• Maintain/develop a list of IPv6-enabled SIP/VoIP software/hardware/services.
• Identify/develop case studies about successful migration of SIP services to IPv6
www.internetsociety.org
[email protected] +1-802-735-1624
Dan York Senior Content Strategist Internet Society
Thank You! www.internetsociety.org/deploy360
twitter.com/deploy360
facebook.com/deploy360