SlideShare une entreprise Scribd logo
1  sur  31
SIP and DNS 
Where do you want to go today? 
© Copyright 2006-2014 Edvina AB, Sollentuna , Sweden. A l l r i g h t s reserved. 
DNS ROCKS!
Executive summary 
SIP use DNS for client-managed load 
balancing and failover. 
Not using DNS makes it hard to build 
scalable, resilient SIP solutions.
Static and dynamic routing 
• In SIP we use the request URI to find the 
next hop 
• If there’s a route set, the topmost URI in 
the route set is used instead 
• For responses, the via header marks the 
path back 
• For all of these DNS is used 
RFC 3263
The DNS zone now includes SIP 
yourcompany.se 
Host names 
Security credentials 
E-mail addresses 
URI: Web addresses 
Unified Communication
SIP routing 
• If there’s a predefined route, use it for initial transactions 
• Outbound proxy, Path 
• If there’s a dialog with a defined route set, use the route set until 
it ends 
• If there are no more static routes, look at the request URI and find 
the next hop 
• IP address (IPv4 and IPv6), DNS Host names , DNS domains
SIP URIs 
sip:line2@192.168.40.25:5074 
sip:jardar@sipguru.no 
sip:conference.executive@sipguru.no;transport=tcp 
sip:invalid@pluto.sipguro.no:5060 
sip:session2@[2001:ab::1200]:5070
Locating SIP servers 
”The Session Initiation Protocol (SIP) uses DNS procedures to allow a client to resolve a SIP 
Uniform Resource Identifier (URI)into the IP address, port, and 
transport protocol of the next hop to contact. 
• RFC 3263 - Jonathan Rosenberg 
! 
It also uses DNS to allow a server to send a response to a backup client if the primary client has 
failed. This document describes those DNS procedures in detail.”
DNS role in routing 
”The first is for proxy 1 to discover 
the SIP server in domain B, in order to forward the call for joe@B. 
The second is for proxy 2 to identify a backup for proxy 1 in the 
event it fails after forwarding the request.” 
RFC 3263 - Locating SIP servers 
Proxy 
1 
Proxy 
2 
UA 
Domain A Domain B
DNS role in routing 
Proxy 
1.2 
Proxy 
2.2 
”If proxy 1 sends a 
request to proxy 2.1 and the request fails, it 
retries the request by sending it to proxy 2.2.” 
RFC 3263 - Locating SIP servers 
Proxy 
1.1 
Proxy 
2.1 
UA 
Domain A Domain B
DNS - once per 
transaction 
• No less, no more 
• CANCEL needs to be based on DNS for the 
INVITE it cancels. It has to be sent to the very 
same server. 
• Primary target is ;maddr, secondary is the 
hostname part of the URI 
” It is important to note that DNS lookups can be used 
multiple times throughout the processing of a call.”
Step by step 
• 1. Domain or host? 
• If the URI contains a transport protocol, it has to be used 
• If the URI contains a port, it’s not a domain but a host name 
• If the target is an IP address, use it 
• 2. Domain 
• Lookup NAPTR record to find service (protocol) 
• NAPTR RFC 2915 
• Use SRV records to find a list of hosts 
• Lookup A and AAAA records for all hosts 
UDP: SIP+D2U 
TCP: SIP+D2T, SIPS+D2T 
SCTP: DIP+D2S, SIPS+D2S
NAPTR example 
Domain example.com NAPTR records 
; order pref flags service regexp replacement! 
IN NAPTR 50 50 "s" "SIPS+D2T" "" _sips._tcp.example.com.! 
IN NAPTR 90 50 "s" "SIP+D2T" "" _sip._tcp.example.com! 
IN NAPTR 100 50 "s" "SIP+D2U" "" _sip._udp.example.com. 
Domain example.com SRV records for _sip._tcp 
;; Priority Weight Port Target! 
IN SRV 0 1 5060 server1.example.com.! 
IN SRV 0 2 5060 server2.example.com. 
This domain prefers SIP/TLS, then SIP/TCP and SIP/UDP. 
For SIP/TCP, there are two servers load balancing, so that server 1 gets 1/3rd of the calls. First 
NAPTR, then SRV query on the result of NAPTR.
DNS SRV record 
details 
! 
_Service._Proto.Name [TTL] Class SRV Priority Weight Port Target host 
example! 
! 
! 
! 
STUN records:! 
_sip._udp.domain.tld. IN SRV 20 0 5060 mysipproxy.domain.tld. 
Priority is used for failover, 
weight for load balancing 
_stun._udp.domain.tld. IN SRV 20 0 3478 mystunserver.domain.tld. 
Priority and Weight is 0-65535 (16 bit values)
SRV load balancing 
;; Priority Weight Port Target! 
IN SRV 0 1 5060 server1.example.com.! 
IN SRV 0 2 5060 server2.example.com. 
• First summarize the combined weight of all 
entries in one priority 
• In this case, it’s 3. Now 1/3 of calls needs to 
be sent to server1, and 2/3 to server 2.
SRV Failover 
;; Priority Weight Port Target! 
IN SRV 10 1 5060 server1.example.com! 
IN SRV 20 1 5060 server2.example.com 
• First try lowest priority 
• Then work yourself up the chain at failure 
• Stay there until it fails, then restart
Building a list 
• For each host, build a list of addresses 
• Assemble ALL address records for the host 
• For dual stack clients both A and AAAA, for single stack 
the address family used 
• Try to connect to all addresses. RFC 2782 and 
3263 does not specify order of connection 
• RFC 2782 says that all addresses for a given 
name should be tested before next host name is 
used.
The chain ;; Priority Weight Port Target! 
IN SRV 10 3 5060 server1.example.com! 
IN SRV 10 1 5060 server2.example.com! 
IN SRV 20 1 5060 server3.example.com! 
IN SRV 20 2 5060 server4.example.com 
_sip._udp.sipguru.no 
Priority 10 Priority 20 
Server1 75% Server2 25% Server3 33% Server4 67% 
A A 
AAAA AAAA 
A A 
AAAA AAAA 
The 
hosts are not in the same 
domain
Query for SRV records agave:~ olle$ dig @192.168.101.2 -t SRV _sip._udp.global.sm.edv 
! 
;; <<>> DiG 9.8.3-P1 <<>> @192.168.101.2 _sip._udp.global.sm.edv -t SRV 
; (1 server found) 
;; global options: +cmd 
;; Got answer: 
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26290 
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 3 
! 
;; QUESTION SECTION: 
;_sip._udp.global.sm.edv. 
IN 
SRV 
! 
;; ANSWER SECTION: 
_sip._udp.global.sm.edv. 86400 
IN 
SRV 
0 0 5060 sip1.global.sm.edv. 
_sip._udp.global.sm.edv. 86400 
IN 
SRV 
0 0 5060 sip2.global.sm.edv. 
! 
;; AUTHORITY SECTION: 
sm.edv. 
86400 
IN 
NS 
ns.sm.edv. 
! 
;; ADDITIONAL SECTION: 
sip1.global.sm.edv. 
86400 
IN 
A 
192.168.101.10 
sip2.global.sm.edv. 
86400 
IN 
A 
192.168.101.11 
ns.sm.edv. 
86400 
IN 
A 
192.168.101.2 
! 
;; Query time: 1 msec 
;; SERVER: 192.168.101.2#53(192.168.101.2) 
;; WHEN: Thu Sep 26 16:30:04 2013 
;; MSG SIZE rcvd: 182
Rules from the RFC 
• If a SIP proxy, redirect server, or registrar is to be contacted 
through the lookup of NAPTR records, there MUST be at least 
three records - one with a "SIP+D2T" service field, one with a "SIP 
+D2U" service field, and one with a "SIPS+D2T" service field. 
• The records with SIPS as the protocol in the service field SHOULD 
be preferred (i.e., have a lower value of the order field) above 
records with SIP as the protocol in the service field. 
• A record with a "SIPS+D2U" service field SHOULD NOT be placed 
into the DNS, since it is not possible to use TLS over UDP.
More rules 
• If the NAPTR for one domain points to 
another domain’s SRV record 
• You still MUST have a SRV record for the 
domain in the URI
If no NAPTR 
• Query SRV records for EACH transport 
the client supports 
• Pick any protocol 
• If there’s no SRV record, use TCP for SIPS 
uri’s and UDP for SIP: uri’s. 
• Try TCP for SIP: uri’s if the message is too 
big for UDP
Hostname, not IP? 
Query DNS for A and 
AAAA records!
Ooops IPv6 
• Use DNS to prioritize your connections 
• If IPv6 is used only over tunnels, you might 
want to have lower priority for IPv6 
servers 
• If IPv6 is native in your network, give IPv6 
servers higher priority 
• Avoid IPv4 NAT issues
The IPv6 preferred chain 
;; Priority Weight Port Target! 
IN SRV 10 3 5060 server1.sipguru.no.! 
IN SRV 10 1 5060 server2.sipguru.no.! 
IN SRV 20 1 5060 server3.sipguru.no.! 
IN SRV 20 2 5060 server4.sipguru.no. 
_sip._udp.sipguru.no 
Priority 10 Priority 20 
Server1 75% Server2 25% Server3 33% Server4 67% 
AAAA AAAA 
A A 
AAAA AAAA 
No IPv4 records!
Show how you want to 
be connected. 
• NAPTR tells the world how your domain 
wants to be contacted - TLS, TCP, UDP 
• SRV can be used to show address family 
preference 
• SRV is used to load balance incoming traffic 
• SRV is used to provide failover on incoming 
connections 
DNS rocks!
Outbound proxy 
• When using an outbound proxy, the client does 
not do any DNS queries for URI’s, only to locate 
the outbound proxy 
• All initial requests are sent to the outbound 
proxy, which will resolve the NAPTR, SRV and 
HOST records and make a decision on how to 
proceed with the request 
• Using DNS to locate the outbound proxy gives 
failover and load balancing. 
• Outbound proxys usually record-route the dialog, to 
stay in the dialog in future transactions
Failure processing 
• If a server fails in sending a reply to the 
sender’s address, it can do DNS lookup on 
the domain in the topmost Via: header to 
find other servers that may be able to 
handle the reply 
• This assumes that the via is a DNS name
Issues 
• RFC 3263 (Locating SIP Servers) and RFC 
2782 doesn’t agree 
• RFC 3263 claims the client should look up 
A or AAAA record - not and. This cause 
issues with dual stack clients and servers. 
• RFC 3263 does not specify how 
connections should be made using the list 
of IP addresses
Example 
;; Priority Weight Port Target! 
IN SRV 10 3 5060 server1.sipguru.no.! 
IN SRV 10 1 5060 server2.sipguru.no.! 
IN SRV 20 1 5060 server3.sipguru.no.! 
IN SRV 20 2 5060 server4.sipguru.no. 
! 
server1.sipguru.no. IN A 192.168.0.1! 
server1.sipguru.no. IN A 192.168.0.2 
server1.sipguru.no. IN AAAA 2001::1 
server1.sipguru.no. IN AAAA 2001::2! 
server2.sipguru.no. IN A 10.0.0.2! 
server3.sipguru.no. IN AAAA 2001::3 
server4.sipguru.no. IN A 192.168.0.4 
server4.sipguru.no. IN A 192.168.0.5
Summary 
• DNS enables federation 
in SIP. You manage your 
domain and how other 
partys call your service. 
• DNS is used for load 
balancing between 
servers 
• DNS is used for failover, 
to ensure that your SIP 
service is always 
reachable. 
• DNS can be used to 
locate internal servers, 
like voicemail servers, 
outbound proxys and 
conference bridges. 
SIP without DNS is broken.
EDVINA TRAINING CLASSES 
• Kamailio from start 
• SIP Protocol 
• SIP Security 
• Scalability 
CUSTOM 
INHOUSE 
TRAININGS 
• Update for existing 
Kamailio, OpenSER 
and SER users 
• Introduces Kamailio 
version 4 
• New SIP standards 
• SIP, Asterisk, Kamailio 
and much more 
• Done at your site, 
customized for your 
project 
• Cost effective when 
more than four 
students 
Find more details at http://edvina.net

Contenu connexe

Tendances

Diameter Presentation
Diameter PresentationDiameter Presentation
Diameter PresentationBeny Haddad
 
Session initiation-protocol
Session initiation-protocolSession initiation-protocol
Session initiation-protocolSanthosh Somu
 
Linux Networking Explained
Linux Networking ExplainedLinux Networking Explained
Linux Networking ExplainedThomas Graf
 
Introduction into SIP protocol
Introduction into SIP protocolIntroduction into SIP protocol
Introduction into SIP protocolMichal Hrncirik
 
volte ims network architecture
volte ims network architecturevolte ims network architecture
volte ims network architectureVikas Shokeen
 
Juniper mpls best practice part 1
Juniper mpls best practice   part 1Juniper mpls best practice   part 1
Juniper mpls best practice part 1Febrian ‎
 
Three Ways Kamailio Can Help Your FreeSWITCH Deployment
Three Ways Kamailio Can Help Your FreeSWITCH DeploymentThree Ways Kamailio Can Help Your FreeSWITCH Deployment
Three Ways Kamailio Can Help Your FreeSWITCH DeploymentFred Posner
 
SIP: Call Id, Cseq, Via-branch, From & To-tag role play
SIP: Call Id, Cseq, Via-branch, From & To-tag role playSIP: Call Id, Cseq, Via-branch, From & To-tag role play
SIP: Call Id, Cseq, Via-branch, From & To-tag role playSridhar Kumar N
 
IMS Session Flow
IMS Session FlowIMS Session Flow
IMS Session FlowKent Loh
 
IMS Registration Flow
IMS Registration FlowIMS Registration Flow
IMS Registration FlowKent Loh
 
Netmanias L2,L3 Training (3) L2, L3 QoS
Netmanias L2,L3 Training (3) L2, L3 QoSNetmanias L2,L3 Training (3) L2, L3 QoS
Netmanias L2,L3 Training (3) L2, L3 QoSChris Changmo Yoo
 
Session Initiation Protocol
Session Initiation ProtocolSession Initiation Protocol
Session Initiation ProtocolMatt Bynum
 
Introduction to SIP(Session Initiation Protocol)
Introduction to SIP(Session Initiation Protocol)Introduction to SIP(Session Initiation Protocol)
Introduction to SIP(Session Initiation Protocol)William Lee
 
CISCO Virtual Private LAN Service (VPLS) Technical Deployment Overview
CISCO Virtual Private LAN Service (VPLS) Technical Deployment OverviewCISCO Virtual Private LAN Service (VPLS) Technical Deployment Overview
CISCO Virtual Private LAN Service (VPLS) Technical Deployment OverviewAmeen Wayok
 
Why is Kamailio so different? An introduction.
Why is Kamailio so different? An introduction.Why is Kamailio so different? An introduction.
Why is Kamailio so different? An introduction.Olle E Johansson
 
BGP Multihoming Techniques
BGP Multihoming TechniquesBGP Multihoming Techniques
BGP Multihoming TechniquesAPNIC
 

Tendances (20)

Diameter Presentation
Diameter PresentationDiameter Presentation
Diameter Presentation
 
Session initiation-protocol
Session initiation-protocolSession initiation-protocol
Session initiation-protocol
 
DMVPN Lab WorkBook
DMVPN Lab WorkBookDMVPN Lab WorkBook
DMVPN Lab WorkBook
 
Linux Networking Explained
Linux Networking ExplainedLinux Networking Explained
Linux Networking Explained
 
IMS Signaling (Rev. 3)
IMS Signaling (Rev. 3)IMS Signaling (Rev. 3)
IMS Signaling (Rev. 3)
 
Introduction into SIP protocol
Introduction into SIP protocolIntroduction into SIP protocol
Introduction into SIP protocol
 
volte ims network architecture
volte ims network architecturevolte ims network architecture
volte ims network architecture
 
Juniper mpls best practice part 1
Juniper mpls best practice   part 1Juniper mpls best practice   part 1
Juniper mpls best practice part 1
 
Three Ways Kamailio Can Help Your FreeSWITCH Deployment
Three Ways Kamailio Can Help Your FreeSWITCH DeploymentThree Ways Kamailio Can Help Your FreeSWITCH Deployment
Three Ways Kamailio Can Help Your FreeSWITCH Deployment
 
Sigtran Workshop
Sigtran WorkshopSigtran Workshop
Sigtran Workshop
 
SIP: Call Id, Cseq, Via-branch, From & To-tag role play
SIP: Call Id, Cseq, Via-branch, From & To-tag role playSIP: Call Id, Cseq, Via-branch, From & To-tag role play
SIP: Call Id, Cseq, Via-branch, From & To-tag role play
 
IMS Session Flow
IMS Session FlowIMS Session Flow
IMS Session Flow
 
IMS Registration Flow
IMS Registration FlowIMS Registration Flow
IMS Registration Flow
 
Netmanias L2,L3 Training (3) L2, L3 QoS
Netmanias L2,L3 Training (3) L2, L3 QoSNetmanias L2,L3 Training (3) L2, L3 QoS
Netmanias L2,L3 Training (3) L2, L3 QoS
 
Session Initiation Protocol
Session Initiation ProtocolSession Initiation Protocol
Session Initiation Protocol
 
Introduction to SIP(Session Initiation Protocol)
Introduction to SIP(Session Initiation Protocol)Introduction to SIP(Session Initiation Protocol)
Introduction to SIP(Session Initiation Protocol)
 
CISCO Virtual Private LAN Service (VPLS) Technical Deployment Overview
CISCO Virtual Private LAN Service (VPLS) Technical Deployment OverviewCISCO Virtual Private LAN Service (VPLS) Technical Deployment Overview
CISCO Virtual Private LAN Service (VPLS) Technical Deployment Overview
 
Why is Kamailio so different? An introduction.
Why is Kamailio so different? An introduction.Why is Kamailio so different? An introduction.
Why is Kamailio so different? An introduction.
 
MPLS & BASIC LDP
MPLS & BASIC LDPMPLS & BASIC LDP
MPLS & BASIC LDP
 
BGP Multihoming Techniques
BGP Multihoming TechniquesBGP Multihoming Techniques
BGP Multihoming Techniques
 

En vedette

Kamailio :: A Quick Introduction
Kamailio :: A Quick IntroductionKamailio :: A Quick Introduction
Kamailio :: A Quick IntroductionOlle E Johansson
 
Expanding Asterisk with Kamailio
Expanding Asterisk with KamailioExpanding Asterisk with Kamailio
Expanding Asterisk with KamailioFred Posner
 
Bambole Fatte A Mano
Bambole Fatte A ManoBambole Fatte A Mano
Bambole Fatte A ManoCinzia Racca
 
Vishnu Shanker's Portfolio
Vishnu Shanker's Portfolio Vishnu Shanker's Portfolio
Vishnu Shanker's Portfolio Vishnu Shanker
 
ECOGAS améliore sa relation fournisseurs grâce à la dématérialisation de ses ...
ECOGAS améliore sa relation fournisseurs grâce à la dématérialisation de ses ...ECOGAS améliore sa relation fournisseurs grâce à la dématérialisation de ses ...
ECOGAS améliore sa relation fournisseurs grâce à la dématérialisation de ses ...ESKER
 
imagebrochure_schauenburg_2016
imagebrochure_schauenburg_2016imagebrochure_schauenburg_2016
imagebrochure_schauenburg_2016Daleen Postma
 
thermo fisher ED886123-7163-46F5-8387-5F57485F786B_FINAL09SHOW_III
thermo fisher ED886123-7163-46F5-8387-5F57485F786B_FINAL09SHOW_IIIthermo fisher ED886123-7163-46F5-8387-5F57485F786B_FINAL09SHOW_III
thermo fisher ED886123-7163-46F5-8387-5F57485F786B_FINAL09SHOW_IIIfinance40
 
Project planning form
Project planning formProject planning form
Project planning formltilem
 
Security managers july 2015 (1)
Security managers july 2015 (1)Security managers july 2015 (1)
Security managers july 2015 (1)Arthur Schmunk
 
Get Your Gamestorming On! Shift the Paradigm of Requirements Gathering
Get Your Gamestorming On! Shift the Paradigm of Requirements GatheringGet Your Gamestorming On! Shift the Paradigm of Requirements Gathering
Get Your Gamestorming On! Shift the Paradigm of Requirements GatheringMichelle Caldwell, PSM, SSGB
 
Carnaval brasileiro
Carnaval brasileiroCarnaval brasileiro
Carnaval brasileiroYára
 
Bypass Immo Tool Instruction
Bypass Immo Tool InstructionBypass Immo Tool Instruction
Bypass Immo Tool Instructionobddeal
 
056 - Vinde Senhor Vinde em Meu Auxilio - a cartageno (E)
056 - Vinde Senhor Vinde em Meu Auxilio - a cartageno (E)056 - Vinde Senhor Vinde em Meu Auxilio - a cartageno (E)
056 - Vinde Senhor Vinde em Meu Auxilio - a cartageno (E)João Rosa
 
Nuestro día D...NI OLVIDO NI PERDÓN
Nuestro día D...NI OLVIDO NI PERDÓNNuestro día D...NI OLVIDO NI PERDÓN
Nuestro día D...NI OLVIDO NI PERDÓNinsn
 
Mi ct 30 ct-40 ct-50 - Servicio Tecnico Fagor
Mi ct 30 ct-40 ct-50 - Servicio Tecnico FagorMi ct 30 ct-40 ct-50 - Servicio Tecnico Fagor
Mi ct 30 ct-40 ct-50 - Servicio Tecnico Fagorserviciotecnicofagor
 
Programa festa major sabadell 2013 diumenge 8
Programa festa major sabadell 2013 diumenge 8Programa festa major sabadell 2013 diumenge 8
Programa festa major sabadell 2013 diumenge 8iSabadell
 
Learn about a Live WebShow Video Channel and Video email
Learn about a Live WebShow Video Channel and Video emailLearn about a Live WebShow Video Channel and Video email
Learn about a Live WebShow Video Channel and Video emailBusiness Growth Coach
 

En vedette (20)

Kamailio :: A Quick Introduction
Kamailio :: A Quick IntroductionKamailio :: A Quick Introduction
Kamailio :: A Quick Introduction
 
Expanding Asterisk with Kamailio
Expanding Asterisk with KamailioExpanding Asterisk with Kamailio
Expanding Asterisk with Kamailio
 
Imagenes chistosas
Imagenes chistosasImagenes chistosas
Imagenes chistosas
 
Elmasfuerte
ElmasfuerteElmasfuerte
Elmasfuerte
 
Bambole Fatte A Mano
Bambole Fatte A ManoBambole Fatte A Mano
Bambole Fatte A Mano
 
Vishnu Shanker's Portfolio
Vishnu Shanker's Portfolio Vishnu Shanker's Portfolio
Vishnu Shanker's Portfolio
 
ECOGAS améliore sa relation fournisseurs grâce à la dématérialisation de ses ...
ECOGAS améliore sa relation fournisseurs grâce à la dématérialisation de ses ...ECOGAS améliore sa relation fournisseurs grâce à la dématérialisation de ses ...
ECOGAS améliore sa relation fournisseurs grâce à la dématérialisation de ses ...
 
Muri che parlano
Muri che parlano Muri che parlano
Muri che parlano
 
imagebrochure_schauenburg_2016
imagebrochure_schauenburg_2016imagebrochure_schauenburg_2016
imagebrochure_schauenburg_2016
 
thermo fisher ED886123-7163-46F5-8387-5F57485F786B_FINAL09SHOW_III
thermo fisher ED886123-7163-46F5-8387-5F57485F786B_FINAL09SHOW_IIIthermo fisher ED886123-7163-46F5-8387-5F57485F786B_FINAL09SHOW_III
thermo fisher ED886123-7163-46F5-8387-5F57485F786B_FINAL09SHOW_III
 
Project planning form
Project planning formProject planning form
Project planning form
 
Security managers july 2015 (1)
Security managers july 2015 (1)Security managers july 2015 (1)
Security managers july 2015 (1)
 
Get Your Gamestorming On! Shift the Paradigm of Requirements Gathering
Get Your Gamestorming On! Shift the Paradigm of Requirements GatheringGet Your Gamestorming On! Shift the Paradigm of Requirements Gathering
Get Your Gamestorming On! Shift the Paradigm of Requirements Gathering
 
Carnaval brasileiro
Carnaval brasileiroCarnaval brasileiro
Carnaval brasileiro
 
Bypass Immo Tool Instruction
Bypass Immo Tool InstructionBypass Immo Tool Instruction
Bypass Immo Tool Instruction
 
056 - Vinde Senhor Vinde em Meu Auxilio - a cartageno (E)
056 - Vinde Senhor Vinde em Meu Auxilio - a cartageno (E)056 - Vinde Senhor Vinde em Meu Auxilio - a cartageno (E)
056 - Vinde Senhor Vinde em Meu Auxilio - a cartageno (E)
 
Nuestro día D...NI OLVIDO NI PERDÓN
Nuestro día D...NI OLVIDO NI PERDÓNNuestro día D...NI OLVIDO NI PERDÓN
Nuestro día D...NI OLVIDO NI PERDÓN
 
Mi ct 30 ct-40 ct-50 - Servicio Tecnico Fagor
Mi ct 30 ct-40 ct-50 - Servicio Tecnico FagorMi ct 30 ct-40 ct-50 - Servicio Tecnico Fagor
Mi ct 30 ct-40 ct-50 - Servicio Tecnico Fagor
 
Programa festa major sabadell 2013 diumenge 8
Programa festa major sabadell 2013 diumenge 8Programa festa major sabadell 2013 diumenge 8
Programa festa major sabadell 2013 diumenge 8
 
Learn about a Live WebShow Video Channel and Video email
Learn about a Live WebShow Video Channel and Video emailLearn about a Live WebShow Video Channel and Video email
Learn about a Live WebShow Video Channel and Video email
 

Similaire à SIP and DNS - federation, failover, load balancing and more

DNS/DNSSEC by Nurul Islam
DNS/DNSSEC by Nurul IslamDNS/DNSSEC by Nurul Islam
DNS/DNSSEC by Nurul IslamMyNOG
 
DANE-based TLS verification in the SIP protocol (v 2)
DANE-based TLS verification in the SIP protocol (v 2)DANE-based TLS verification in the SIP protocol (v 2)
DANE-based TLS verification in the SIP protocol (v 2)Olle E Johansson
 
Domain Name System (DNS) Fundamentals
Domain Name System (DNS) FundamentalsDomain Name System (DNS) Fundamentals
Domain Name System (DNS) FundamentalsWebSniffer
 
Is IPv6 Security Still an Afterthought?
Is IPv6 Security Still an Afterthought?Is IPv6 Security Still an Afterthought?
Is IPv6 Security Still an Afterthought?APNIC
 
cisco-ewan-nat-acl-pt-practice-sba-with-solution-110516171316-phpapp02.pdf
cisco-ewan-nat-acl-pt-practice-sba-with-solution-110516171316-phpapp02.pdfcisco-ewan-nat-acl-pt-practice-sba-with-solution-110516171316-phpapp02.pdf
cisco-ewan-nat-acl-pt-practice-sba-with-solution-110516171316-phpapp02.pdfAsgarAlam6
 
SIP URI @ fscons 2009
SIP URI @ fscons 2009SIP URI @ fscons 2009
SIP URI @ fscons 2009FSCONS
 
Performance & Scalability Improvements in Perforce
Performance & Scalability Improvements in PerforcePerformance & Scalability Improvements in Perforce
Performance & Scalability Improvements in PerforcePerforce
 
Ccna rse chp9 nat fo i_pv4
Ccna rse chp9 nat fo i_pv4Ccna rse chp9 nat fo i_pv4
Ccna rse chp9 nat fo i_pv4newbie2019
 
Signing DNSSEC answers on the fly at the edge: challenges and solutions
Signing DNSSEC answers on the fly at the edge: challenges and solutionsSigning DNSSEC answers on the fly at the edge: challenges and solutions
Signing DNSSEC answers on the fly at the edge: challenges and solutionsAPNIC
 
RPKI Deployment Status in Bangladesh
RPKI Deployment Status in BangladeshRPKI Deployment Status in Bangladesh
RPKI Deployment Status in BangladeshFakrul Alam
 
SIPCORE - presentation of SIP and DANE (IETF #89)
SIPCORE - presentation of SIP and DANE (IETF #89)SIPCORE - presentation of SIP and DANE (IETF #89)
SIPCORE - presentation of SIP and DANE (IETF #89)Olle E Johansson
 
IGF 2023: DNS Privacy
IGF 2023: DNS PrivacyIGF 2023: DNS Privacy
IGF 2023: DNS PrivacyAPNIC
 
Learning series fundamentals of Networking and Medical Imaging
Learning series fundamentals of Networking and Medical ImagingLearning series fundamentals of Networking and Medical Imaging
Learning series fundamentals of Networking and Medical ImagingRyan Furlough, BSCPE CPAS
 

Similaire à SIP and DNS - federation, failover, load balancing and more (20)

DNS/DNSSEC by Nurul Islam
DNS/DNSSEC by Nurul IslamDNS/DNSSEC by Nurul Islam
DNS/DNSSEC by Nurul Islam
 
Ipv6
Ipv6Ipv6
Ipv6
 
DNS - MCSE 2019
DNS - MCSE 2019DNS - MCSE 2019
DNS - MCSE 2019
 
DANE-based TLS verification in the SIP protocol (v 2)
DANE-based TLS verification in the SIP protocol (v 2)DANE-based TLS verification in the SIP protocol (v 2)
DANE-based TLS verification in the SIP protocol (v 2)
 
Domain Name System (DNS) Fundamentals
Domain Name System (DNS) FundamentalsDomain Name System (DNS) Fundamentals
Domain Name System (DNS) Fundamentals
 
BACIK CISCO SKILLS
BACIK CISCO SKILLSBACIK CISCO SKILLS
BACIK CISCO SKILLS
 
Is IPv6 Security Still an Afterthought?
Is IPv6 Security Still an Afterthought?Is IPv6 Security Still an Afterthought?
Is IPv6 Security Still an Afterthought?
 
cisco-ewan-nat-acl-pt-practice-sba-with-solution-110516171316-phpapp02.pdf
cisco-ewan-nat-acl-pt-practice-sba-with-solution-110516171316-phpapp02.pdfcisco-ewan-nat-acl-pt-practice-sba-with-solution-110516171316-phpapp02.pdf
cisco-ewan-nat-acl-pt-practice-sba-with-solution-110516171316-phpapp02.pdf
 
SIP URI @ fscons 2009
SIP URI @ fscons 2009SIP URI @ fscons 2009
SIP URI @ fscons 2009
 
Performance & Scalability Improvements in Perforce
Performance & Scalability Improvements in PerforcePerformance & Scalability Improvements in Perforce
Performance & Scalability Improvements in Perforce
 
Ccna rse chp9 nat fo i_pv4
Ccna rse chp9 nat fo i_pv4Ccna rse chp9 nat fo i_pv4
Ccna rse chp9 nat fo i_pv4
 
RPKI Tutorial
RPKI Tutorial RPKI Tutorial
RPKI Tutorial
 
Signing DNSSEC answers on the fly at the edge: challenges and solutions
Signing DNSSEC answers on the fly at the edge: challenges and solutionsSigning DNSSEC answers on the fly at the edge: challenges and solutions
Signing DNSSEC answers on the fly at the edge: challenges and solutions
 
Day 20.i pv6 lab
Day 20.i pv6 labDay 20.i pv6 lab
Day 20.i pv6 lab
 
RPKI Deployment Status in Bangladesh
RPKI Deployment Status in BangladeshRPKI Deployment Status in Bangladesh
RPKI Deployment Status in Bangladesh
 
SIPCORE - presentation of SIP and DANE (IETF #89)
SIPCORE - presentation of SIP and DANE (IETF #89)SIPCORE - presentation of SIP and DANE (IETF #89)
SIPCORE - presentation of SIP and DANE (IETF #89)
 
IGF 2023: DNS Privacy
IGF 2023: DNS PrivacyIGF 2023: DNS Privacy
IGF 2023: DNS Privacy
 
Evolving Enterprise Network Architecture
Evolving Enterprise Network ArchitectureEvolving Enterprise Network Architecture
Evolving Enterprise Network Architecture
 
IP Routing on z/OS
IP Routing on z/OSIP Routing on z/OS
IP Routing on z/OS
 
Learning series fundamentals of Networking and Medical Imaging
Learning series fundamentals of Networking and Medical ImagingLearning series fundamentals of Networking and Medical Imaging
Learning series fundamentals of Networking and Medical Imaging
 

Plus de Olle E Johansson

Cybernode.se: Securing the software supply chain (CRA)
Cybernode.se: Securing the software supply chain (CRA)Cybernode.se: Securing the software supply chain (CRA)
Cybernode.se: Securing the software supply chain (CRA)Olle E Johansson
 
CRA - overview of vulnerability handling
CRA - overview of vulnerability handlingCRA - overview of vulnerability handling
CRA - overview of vulnerability handlingOlle E Johansson
 
Introduction to the proposed EU cyber resilience act (CRA)
Introduction to the proposed EU cyber resilience act (CRA)Introduction to the proposed EU cyber resilience act (CRA)
Introduction to the proposed EU cyber resilience act (CRA)Olle E Johansson
 
The birth and death of PSTN
The birth and death of PSTNThe birth and death of PSTN
The birth and death of PSTNOlle E Johansson
 
WebRTC and Janus intro for FOSS Stockholm January 2019
WebRTC and Janus intro for FOSS Stockholm January 2019WebRTC and Janus intro for FOSS Stockholm January 2019
WebRTC and Janus intro for FOSS Stockholm January 2019Olle E Johansson
 
Kamailio World 2018: Having fun with new stuff
Kamailio World 2018: Having fun with new stuffKamailio World 2018: Having fun with new stuff
Kamailio World 2018: Having fun with new stuffOlle E Johansson
 
Realtime communication over a dual stack network
Realtime communication over a dual stack networkRealtime communication over a dual stack network
Realtime communication over a dual stack networkOlle E Johansson
 
The Realtime Story - part 2
The Realtime Story - part 2The Realtime Story - part 2
The Realtime Story - part 2Olle E Johansson
 
Sip2016 - a talk at VOIP2DAY 2016
Sip2016 - a talk at VOIP2DAY 2016Sip2016 - a talk at VOIP2DAY 2016
Sip2016 - a talk at VOIP2DAY 2016Olle E Johansson
 
Sips must die, die, die - about TLS usage in the SIP protocol
Sips must die, die, die - about TLS usage in the SIP protocolSips must die, die, die - about TLS usage in the SIP protocol
Sips must die, die, die - about TLS usage in the SIP protocolOlle E Johansson
 
SIP :: Half outbound (random notes)
SIP :: Half outbound (random notes)SIP :: Half outbound (random notes)
SIP :: Half outbound (random notes)Olle E Johansson
 
Kamailio World 2016: Update your SIP!
Kamailio World 2016: Update your SIP!Kamailio World 2016: Update your SIP!
Kamailio World 2016: Update your SIP!Olle E Johansson
 
Tio tester av TLS - Transport Layer Security (TLS-O-MATIC.COM)
Tio tester av TLS - Transport Layer Security (TLS-O-MATIC.COM)Tio tester av TLS - Transport Layer Security (TLS-O-MATIC.COM)
Tio tester av TLS - Transport Layer Security (TLS-O-MATIC.COM)Olle E Johansson
 
2015 update: SIP and IPv6 issues - staying Happy in SIP
2015 update: SIP and IPv6 issues - staying Happy in SIP2015 update: SIP and IPv6 issues - staying Happy in SIP
2015 update: SIP and IPv6 issues - staying Happy in SIPOlle E Johansson
 
TCP/IP Geeks Stockholm :: Introduction to IPv6
TCP/IP Geeks Stockholm :: Introduction to IPv6TCP/IP Geeks Stockholm :: Introduction to IPv6
TCP/IP Geeks Stockholm :: Introduction to IPv6Olle E Johansson
 
RFC 7435 - Opportunistic security - Some protection most of the time
RFC 7435 - Opportunistic security - Some protection most of the timeRFC 7435 - Opportunistic security - Some protection most of the time
RFC 7435 - Opportunistic security - Some protection most of the timeOlle E Johansson
 
TCP/IP geeks Stockholm :: Manifesto
TCP/IP geeks Stockholm :: ManifestoTCP/IP geeks Stockholm :: Manifesto
TCP/IP geeks Stockholm :: ManifestoOlle E Johansson
 
#Morecrypto (with tis) - version 2.2
#Morecrypto (with tis) - version 2.2#Morecrypto (with tis) - version 2.2
#Morecrypto (with tis) - version 2.2Olle E Johansson
 

Plus de Olle E Johansson (20)

Cybernode.se: Securing the software supply chain (CRA)
Cybernode.se: Securing the software supply chain (CRA)Cybernode.se: Securing the software supply chain (CRA)
Cybernode.se: Securing the software supply chain (CRA)
 
CRA - overview of vulnerability handling
CRA - overview of vulnerability handlingCRA - overview of vulnerability handling
CRA - overview of vulnerability handling
 
Introduction to the proposed EU cyber resilience act (CRA)
Introduction to the proposed EU cyber resilience act (CRA)Introduction to the proposed EU cyber resilience act (CRA)
Introduction to the proposed EU cyber resilience act (CRA)
 
The birth and death of PSTN
The birth and death of PSTNThe birth and death of PSTN
The birth and death of PSTN
 
WebRTC and Janus intro for FOSS Stockholm January 2019
WebRTC and Janus intro for FOSS Stockholm January 2019WebRTC and Janus intro for FOSS Stockholm January 2019
WebRTC and Janus intro for FOSS Stockholm January 2019
 
Kamailio World 2018: Having fun with new stuff
Kamailio World 2018: Having fun with new stuffKamailio World 2018: Having fun with new stuff
Kamailio World 2018: Having fun with new stuff
 
Kamailio on air
Kamailio on airKamailio on air
Kamailio on air
 
Webrtc overview
Webrtc overviewWebrtc overview
Webrtc overview
 
Realtime communication over a dual stack network
Realtime communication over a dual stack networkRealtime communication over a dual stack network
Realtime communication over a dual stack network
 
The Realtime Story - part 2
The Realtime Story - part 2The Realtime Story - part 2
The Realtime Story - part 2
 
Sip2016 - a talk at VOIP2DAY 2016
Sip2016 - a talk at VOIP2DAY 2016Sip2016 - a talk at VOIP2DAY 2016
Sip2016 - a talk at VOIP2DAY 2016
 
Sips must die, die, die - about TLS usage in the SIP protocol
Sips must die, die, die - about TLS usage in the SIP protocolSips must die, die, die - about TLS usage in the SIP protocol
Sips must die, die, die - about TLS usage in the SIP protocol
 
SIP :: Half outbound (random notes)
SIP :: Half outbound (random notes)SIP :: Half outbound (random notes)
SIP :: Half outbound (random notes)
 
Kamailio World 2016: Update your SIP!
Kamailio World 2016: Update your SIP!Kamailio World 2016: Update your SIP!
Kamailio World 2016: Update your SIP!
 
Tio tester av TLS - Transport Layer Security (TLS-O-MATIC.COM)
Tio tester av TLS - Transport Layer Security (TLS-O-MATIC.COM)Tio tester av TLS - Transport Layer Security (TLS-O-MATIC.COM)
Tio tester av TLS - Transport Layer Security (TLS-O-MATIC.COM)
 
2015 update: SIP and IPv6 issues - staying Happy in SIP
2015 update: SIP and IPv6 issues - staying Happy in SIP2015 update: SIP and IPv6 issues - staying Happy in SIP
2015 update: SIP and IPv6 issues - staying Happy in SIP
 
TCP/IP Geeks Stockholm :: Introduction to IPv6
TCP/IP Geeks Stockholm :: Introduction to IPv6TCP/IP Geeks Stockholm :: Introduction to IPv6
TCP/IP Geeks Stockholm :: Introduction to IPv6
 
RFC 7435 - Opportunistic security - Some protection most of the time
RFC 7435 - Opportunistic security - Some protection most of the timeRFC 7435 - Opportunistic security - Some protection most of the time
RFC 7435 - Opportunistic security - Some protection most of the time
 
TCP/IP geeks Stockholm :: Manifesto
TCP/IP geeks Stockholm :: ManifestoTCP/IP geeks Stockholm :: Manifesto
TCP/IP geeks Stockholm :: Manifesto
 
#Morecrypto (with tis) - version 2.2
#Morecrypto (with tis) - version 2.2#Morecrypto (with tis) - version 2.2
#Morecrypto (with tis) - version 2.2
 

Dernier

Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsPrecisely
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsAndrey Dotsenko
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsHyundai Motor Group
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Wonjun Hwang
 

Dernier (20)

Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort ServiceHot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
Hot Sexy call girls in Panjabi Bagh 🔝 9953056974 🔝 Delhi escort Service
 
Unlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power SystemsUnlocking the Potential of the Cloud for IBM Power Systems
Unlocking the Potential of the Cloud for IBM Power Systems
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter RoadsSnow Chain-Integrated Tire for a Safe Drive on Winter Roads
Snow Chain-Integrated Tire for a Safe Drive on Winter Roads
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
Bun (KitWorks Team Study 노별마루 발표 2024.4.22)
 

SIP and DNS - federation, failover, load balancing and more

  • 1. SIP and DNS Where do you want to go today? © Copyright 2006-2014 Edvina AB, Sollentuna , Sweden. A l l r i g h t s reserved. DNS ROCKS!
  • 2. Executive summary SIP use DNS for client-managed load balancing and failover. Not using DNS makes it hard to build scalable, resilient SIP solutions.
  • 3. Static and dynamic routing • In SIP we use the request URI to find the next hop • If there’s a route set, the topmost URI in the route set is used instead • For responses, the via header marks the path back • For all of these DNS is used RFC 3263
  • 4. The DNS zone now includes SIP yourcompany.se Host names Security credentials E-mail addresses URI: Web addresses Unified Communication
  • 5. SIP routing • If there’s a predefined route, use it for initial transactions • Outbound proxy, Path • If there’s a dialog with a defined route set, use the route set until it ends • If there are no more static routes, look at the request URI and find the next hop • IP address (IPv4 and IPv6), DNS Host names , DNS domains
  • 6. SIP URIs sip:line2@192.168.40.25:5074 sip:jardar@sipguru.no sip:conference.executive@sipguru.no;transport=tcp sip:invalid@pluto.sipguro.no:5060 sip:session2@[2001:ab::1200]:5070
  • 7. Locating SIP servers ”The Session Initiation Protocol (SIP) uses DNS procedures to allow a client to resolve a SIP Uniform Resource Identifier (URI)into the IP address, port, and transport protocol of the next hop to contact. • RFC 3263 - Jonathan Rosenberg ! It also uses DNS to allow a server to send a response to a backup client if the primary client has failed. This document describes those DNS procedures in detail.”
  • 8. DNS role in routing ”The first is for proxy 1 to discover the SIP server in domain B, in order to forward the call for joe@B. The second is for proxy 2 to identify a backup for proxy 1 in the event it fails after forwarding the request.” RFC 3263 - Locating SIP servers Proxy 1 Proxy 2 UA Domain A Domain B
  • 9. DNS role in routing Proxy 1.2 Proxy 2.2 ”If proxy 1 sends a request to proxy 2.1 and the request fails, it retries the request by sending it to proxy 2.2.” RFC 3263 - Locating SIP servers Proxy 1.1 Proxy 2.1 UA Domain A Domain B
  • 10. DNS - once per transaction • No less, no more • CANCEL needs to be based on DNS for the INVITE it cancels. It has to be sent to the very same server. • Primary target is ;maddr, secondary is the hostname part of the URI ” It is important to note that DNS lookups can be used multiple times throughout the processing of a call.”
  • 11. Step by step • 1. Domain or host? • If the URI contains a transport protocol, it has to be used • If the URI contains a port, it’s not a domain but a host name • If the target is an IP address, use it • 2. Domain • Lookup NAPTR record to find service (protocol) • NAPTR RFC 2915 • Use SRV records to find a list of hosts • Lookup A and AAAA records for all hosts UDP: SIP+D2U TCP: SIP+D2T, SIPS+D2T SCTP: DIP+D2S, SIPS+D2S
  • 12. NAPTR example Domain example.com NAPTR records ; order pref flags service regexp replacement! IN NAPTR 50 50 "s" "SIPS+D2T" "" _sips._tcp.example.com.! IN NAPTR 90 50 "s" "SIP+D2T" "" _sip._tcp.example.com! IN NAPTR 100 50 "s" "SIP+D2U" "" _sip._udp.example.com. Domain example.com SRV records for _sip._tcp ;; Priority Weight Port Target! IN SRV 0 1 5060 server1.example.com.! IN SRV 0 2 5060 server2.example.com. This domain prefers SIP/TLS, then SIP/TCP and SIP/UDP. For SIP/TCP, there are two servers load balancing, so that server 1 gets 1/3rd of the calls. First NAPTR, then SRV query on the result of NAPTR.
  • 13. DNS SRV record details ! _Service._Proto.Name [TTL] Class SRV Priority Weight Port Target host example! ! ! ! STUN records:! _sip._udp.domain.tld. IN SRV 20 0 5060 mysipproxy.domain.tld. Priority is used for failover, weight for load balancing _stun._udp.domain.tld. IN SRV 20 0 3478 mystunserver.domain.tld. Priority and Weight is 0-65535 (16 bit values)
  • 14. SRV load balancing ;; Priority Weight Port Target! IN SRV 0 1 5060 server1.example.com.! IN SRV 0 2 5060 server2.example.com. • First summarize the combined weight of all entries in one priority • In this case, it’s 3. Now 1/3 of calls needs to be sent to server1, and 2/3 to server 2.
  • 15. SRV Failover ;; Priority Weight Port Target! IN SRV 10 1 5060 server1.example.com! IN SRV 20 1 5060 server2.example.com • First try lowest priority • Then work yourself up the chain at failure • Stay there until it fails, then restart
  • 16. Building a list • For each host, build a list of addresses • Assemble ALL address records for the host • For dual stack clients both A and AAAA, for single stack the address family used • Try to connect to all addresses. RFC 2782 and 3263 does not specify order of connection • RFC 2782 says that all addresses for a given name should be tested before next host name is used.
  • 17. The chain ;; Priority Weight Port Target! IN SRV 10 3 5060 server1.example.com! IN SRV 10 1 5060 server2.example.com! IN SRV 20 1 5060 server3.example.com! IN SRV 20 2 5060 server4.example.com _sip._udp.sipguru.no Priority 10 Priority 20 Server1 75% Server2 25% Server3 33% Server4 67% A A AAAA AAAA A A AAAA AAAA The hosts are not in the same domain
  • 18. Query for SRV records agave:~ olle$ dig @192.168.101.2 -t SRV _sip._udp.global.sm.edv ! ;; <<>> DiG 9.8.3-P1 <<>> @192.168.101.2 _sip._udp.global.sm.edv -t SRV ; (1 server found) ;; global options: +cmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 26290 ;; flags: qr aa rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 1, ADDITIONAL: 3 ! ;; QUESTION SECTION: ;_sip._udp.global.sm.edv. IN SRV ! ;; ANSWER SECTION: _sip._udp.global.sm.edv. 86400 IN SRV 0 0 5060 sip1.global.sm.edv. _sip._udp.global.sm.edv. 86400 IN SRV 0 0 5060 sip2.global.sm.edv. ! ;; AUTHORITY SECTION: sm.edv. 86400 IN NS ns.sm.edv. ! ;; ADDITIONAL SECTION: sip1.global.sm.edv. 86400 IN A 192.168.101.10 sip2.global.sm.edv. 86400 IN A 192.168.101.11 ns.sm.edv. 86400 IN A 192.168.101.2 ! ;; Query time: 1 msec ;; SERVER: 192.168.101.2#53(192.168.101.2) ;; WHEN: Thu Sep 26 16:30:04 2013 ;; MSG SIZE rcvd: 182
  • 19. Rules from the RFC • If a SIP proxy, redirect server, or registrar is to be contacted through the lookup of NAPTR records, there MUST be at least three records - one with a "SIP+D2T" service field, one with a "SIP +D2U" service field, and one with a "SIPS+D2T" service field. • The records with SIPS as the protocol in the service field SHOULD be preferred (i.e., have a lower value of the order field) above records with SIP as the protocol in the service field. • A record with a "SIPS+D2U" service field SHOULD NOT be placed into the DNS, since it is not possible to use TLS over UDP.
  • 20. More rules • If the NAPTR for one domain points to another domain’s SRV record • You still MUST have a SRV record for the domain in the URI
  • 21. If no NAPTR • Query SRV records for EACH transport the client supports • Pick any protocol • If there’s no SRV record, use TCP for SIPS uri’s and UDP for SIP: uri’s. • Try TCP for SIP: uri’s if the message is too big for UDP
  • 22. Hostname, not IP? Query DNS for A and AAAA records!
  • 23. Ooops IPv6 • Use DNS to prioritize your connections • If IPv6 is used only over tunnels, you might want to have lower priority for IPv6 servers • If IPv6 is native in your network, give IPv6 servers higher priority • Avoid IPv4 NAT issues
  • 24. The IPv6 preferred chain ;; Priority Weight Port Target! IN SRV 10 3 5060 server1.sipguru.no.! IN SRV 10 1 5060 server2.sipguru.no.! IN SRV 20 1 5060 server3.sipguru.no.! IN SRV 20 2 5060 server4.sipguru.no. _sip._udp.sipguru.no Priority 10 Priority 20 Server1 75% Server2 25% Server3 33% Server4 67% AAAA AAAA A A AAAA AAAA No IPv4 records!
  • 25. Show how you want to be connected. • NAPTR tells the world how your domain wants to be contacted - TLS, TCP, UDP • SRV can be used to show address family preference • SRV is used to load balance incoming traffic • SRV is used to provide failover on incoming connections DNS rocks!
  • 26. Outbound proxy • When using an outbound proxy, the client does not do any DNS queries for URI’s, only to locate the outbound proxy • All initial requests are sent to the outbound proxy, which will resolve the NAPTR, SRV and HOST records and make a decision on how to proceed with the request • Using DNS to locate the outbound proxy gives failover and load balancing. • Outbound proxys usually record-route the dialog, to stay in the dialog in future transactions
  • 27. Failure processing • If a server fails in sending a reply to the sender’s address, it can do DNS lookup on the domain in the topmost Via: header to find other servers that may be able to handle the reply • This assumes that the via is a DNS name
  • 28. Issues • RFC 3263 (Locating SIP Servers) and RFC 2782 doesn’t agree • RFC 3263 claims the client should look up A or AAAA record - not and. This cause issues with dual stack clients and servers. • RFC 3263 does not specify how connections should be made using the list of IP addresses
  • 29. Example ;; Priority Weight Port Target! IN SRV 10 3 5060 server1.sipguru.no.! IN SRV 10 1 5060 server2.sipguru.no.! IN SRV 20 1 5060 server3.sipguru.no.! IN SRV 20 2 5060 server4.sipguru.no. ! server1.sipguru.no. IN A 192.168.0.1! server1.sipguru.no. IN A 192.168.0.2 server1.sipguru.no. IN AAAA 2001::1 server1.sipguru.no. IN AAAA 2001::2! server2.sipguru.no. IN A 10.0.0.2! server3.sipguru.no. IN AAAA 2001::3 server4.sipguru.no. IN A 192.168.0.4 server4.sipguru.no. IN A 192.168.0.5
  • 30. Summary • DNS enables federation in SIP. You manage your domain and how other partys call your service. • DNS is used for load balancing between servers • DNS is used for failover, to ensure that your SIP service is always reachable. • DNS can be used to locate internal servers, like voicemail servers, outbound proxys and conference bridges. SIP without DNS is broken.
  • 31. EDVINA TRAINING CLASSES • Kamailio from start • SIP Protocol • SIP Security • Scalability CUSTOM INHOUSE TRAININGS • Update for existing Kamailio, OpenSER and SER users • Introduces Kamailio version 4 • New SIP standards • SIP, Asterisk, Kamailio and much more • Done at your site, customized for your project • Cost effective when more than four students Find more details at http://edvina.net