SlideShare a Scribd company logo
Multicast IPv6
Teoria e pratica
Marco d’Itri
<md@linux.it>
ITgate Network
IPv6 Task Force Italia - Luglio 2005
Indice
1 Introduzione
2 Formato degli indirizzi
3 Protocolli di routing
4 m6bone
5 Implementazioni
6 Risorse
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 2 / 27
Introduzione
Multicast in breve
Un metodo per inviare in modo efficiente gli stessi dati a un grande
numero di destinatari.
Tipi di multicast
Any Source Multicast (ASM)
Una o più sorgenti e destinatari multipli. (∗, G)
Single Source Multicast (SSM)
Una sola sorgente e destinatari multipli. (S, G)
Gli indirizzi multicast identificano un insieme di interfacce. I pacchetti
ad essi inviati vengono consegnati a tutte le interfacce che fanno parte
del gruppo.
In pratica, ogni pacchetto inviato al gruppo multicast viene replicato
per ogni destinatario dai router sul percorso.
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 3 / 27
Formato degli indirizzi
Formato degli indirizzi
FF00::/8: indirizzi multicast (RFC 3513).
8 4 4 112
1111 1111 00PT scope group ID
Flag
P = 1: costruito con il prefisso della rete unicast, P = 0: no.
T = 1: assegnato in modo temporaneo, T = 0: permanente.
Per definizione, sono temporanei tutti gli indirizzi non allocati
staticamente da IANA.
Sono a disposizione 120 bit per provare schemi di indirizzamento
differenti.
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 4 / 27
Formato degli indirizzi
Scope degli indirizzi
Scope (4 bit)
1 node-local
2 link-local
5 site-local
8 organization-local
E globale
Gli altri valori sono sono a disposizione di ogni sito.
I router devono essere configurati per limitare la propagazione del
traffico con scope locale.
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 5 / 27
Formato degli indirizzi
Indirizzi basati su un prefisso
FF3x::/16: indirizzi multicast basati sul prefisso di una rete unicast
(RFC 3306).
8 4 4 8 8 64 32
1111 1111 0011 scope 0 pref. len. network group ID
Flag
P = 1: costruito con il prefisso della rete unicast.
T = 1: temporaneo.
Prefix length indica la lunghezza in bit (≤ 64) del prefisso contenuto
nel campo successivo, che è la rete unicast a cui appartiene l’indirizzo.
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 6 / 27
Formato degli indirizzi
Indirizzi SSM
FF3x::/96: indirizzi per Single Source Multicast (RFC 3569).
8 4 4 8 8 64 32
1111 1111 0011 scope 0 0 0 group ID
Se un indirizzo unicast-prefix-based ha il prefisso uguale 0 allora
si tratta di un indirizzo SSM.
Di conseguenza anche la lunghezza del prefisso è uguale a 0.
Principali vantaggi del SSM
Semplifica l’allocazione degli indirizzi.
Semplifica notevolmente il routing.
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 7 / 27
Formato degli indirizzi
Indirizzi embedded-RP
Un Rendezvous Point è un router che conosce le sorgenti dei gruppi
attivi in un dominio PIM. È necessario per ASM. (RFC 3956).
8 4 4 4 4 8 64 32
1111 1111 0111 scope 0 RIID plen network group ID
Flag
R = 1: identifica gli indirizzi embedded-RP.
P = 1 e T = 1 come per gli altri indirizzi basati su un prefisso.
4 dei bit riservati diventano il campo RIID, che aggiunto alla rete forma
l’indirizzo unicast del RP.
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 8 / 27
Formato degli indirizzi
Tipi di indirizzi
Ricapitolando:
8 4 4 4 4 8 64 32
multicast 0RPT scope
1111 1111 0000 XXXX ID (112)
1111 1111 0001 XXXX ID (112)
1111 1111 0010 XXXX non valido
1111 1111 0011 XXXX 0 plen net ID
1111 1111 0011 XXXX 0 0 0 ID
1111 1111 0111 XXXX 0 RIID plen net ID
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 9 / 27
Formato degli indirizzi
Generazione dell’ID
L’ID multicast contenuto in ogni indirizzo deve essere allocato in modo
che sia unico per lo scope, la rete o l’indirizzo della sorgente.
(RFC 3307)
Metodi di assegnazione possibili
Statica da parte della IANA (P = 0, T = 0).
Automatica tramite un server MADCAP (RFC 2730).
Automatica da parte degli host interessati tramite Zeroconf.
A caso da chi gestisce il servizio.
Attenzione: solo gli ultimi 32 bit sono usati nel MAC Ethernet!
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 10 / 27
Formato degli indirizzi
Esempi di indirizzi
FF02::1 (ping6 -I eth0 FF02::1)
permanente, scope link-local: tutti i nodi sulla LAN.
FF05::101
permanente, scope site-local: tutti i server NTP del sito.
FF1E::8888 (vlc udp://@[FF1E::8888]:8888)
temporaneo, scope globale: stream audio di Frequence 3.
FF3E:0020:2001:660::BEAC
temporaneo, prefix-based, scope globale: ex beacon di Renater
(2001:660::/32).
FF3E::BEAC
temporaneo, SSM, scope globale: dbeacon.
FF7E:D40:2001:660:3001:4001::/96
embedded-RP, scope globale: prefisso del gateway multicast
IPV4-IPV6.
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 11 / 27
Formato degli indirizzi
Esempi di indirizzi
FF02::1 (ping6 -I eth0 FF02::1)
permanente, scope link-local: tutti i nodi sulla LAN.
FF05::101
permanente, scope site-local: tutti i server NTP del sito.
FF1E::8888 (vlc udp://@[FF1E::8888]:8888)
temporaneo, scope globale: stream audio di Frequence 3.
FF3E:0020:2001:660::BEAC
temporaneo, scope globale, prefix-based: beacon di Renater
(2001:660::/32).
FF3E::BEAC
temporaneo, SSM, scope globale: dbeacon.
FF7E:D40:2001:660:3001:4001::/96
embedded-RP, scope globale: prefisso del gateway multicast
IPV4-IPV6.
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 11 / 27
Protocolli di routing
Protocolli di routing: MLD
MLD è il protocollo di segnalazione tra router e host (RFC 2710).
È l’omologo di IGMP per IPV6.
È implementato con messaggi ICMPv6 di tipo informativo.
Prevede tre tipi di messaggi:
query: il router cerca host interessati a gruppi multicast.
report: un host comunica al router l’interesse per un gruppo.
done: un host segnala al router la fine dell’interesse.
MLDV2 (RFC 3810) è la sua evoluzione:
Come MLDV1, ma in più ha il supporto per SSM.
Non è implementato da FreeBSD e Windows.
MLD snooping: è in corso di sviluppo per i 7601.
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 12 / 27
Protocolli di routing
Protocolli di routing: PIM
PIM è il protocollo di segnalazione tra router (RFC 2362).
Permette di conoscere la sorgente di un gruppo ASM usando un
Rendez-vous Point (RP).
Le sorgenti ASM sono registrate a un RP dal router a cui sono
connesse.
Lo stato costruito con PIM viene usato dai router per decidere
come fare il forwarding dei pacchetti multicast.
È progettato come protocollo intra-domain: non scala a livello
globale.
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 13 / 27
Protocolli di routing
I Rendez-vous Point
Se si usa PIM, un edge router che riceve un join (∗, G) o del traffico
deve conoscere l’indirizzo del RP su cui è stato registrato il gruppo:
Tramite una configurazione statica.
Dinamicamente tramite il Bootstrap Router Protocol (BSR).
Dinamicamente tramite il protocollo Auto-RP.
Costruendolo da un gruppo Embedded-RP.
Se si usa SSM non serve un RP, e il router invia direttamente un join
(S, G) verso la sorgente.
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 14 / 27
m6bone
m6bone
m6bone è l’insieme dei siti, prevalentemente accademici, che hanno
connettività multicast IPV6. È un gruppo informale.
Come connettersi
Iniziare ad configurare il routing multicast nella propria rete.
Cercare un sito topologicamente vicino.
Chiedere di attivare un tunnel.
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 15 / 27
m6bone
m6bone in Italia
Siti italiani con connettività IPv6 multicast
CNIT
GARR
ITgate
Non ci sono peering!
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 16 / 27
m6bone
PIM in m6bone
Non esiste MSDP per IPV6, quindi c’è un unico dominio PIM.
Come trovare il RP?
Renater gestisce un RP centrale, configurato staticamente in ogni
router.
Alcuni siti usano dei RP site-local, configurati staticamente o
tramite BSR.
A lungo termine
È una buona idea usare SSM, quando possibile.
Se proprio serve ASM, si possono usare gruppi Embedded-RP.
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 17 / 27
Implementazioni
Implementazioni di router
Cisco: a partire da 12.0(26)S, 12.2(25)S, 12.3(2)T
Attenzione ai bug: qui 12.3(11)T2 funziona, YMMV.
Juniper: a partire da JunOS 6.0.
Linux (≥ 2.6.10) e mrd6.
Forwarding in user space.
Forwarding in kernel space (con una patch).
Linux e pim6sd (con una patch).
BSD e pim6sd.
BSD e XORP.
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 18 / 27
Implementazioni
Proxy MLD
In alternativa a un router completo si può usare un proxy MLD, che
ripete verso la sorgente i join ricevuti e fa il forwarding del traffico.
Questo funziona definendo manualmente quali sono le interfacce di
ingresso e di uscita, quindi si può solo ricevere traffico.
Implementazioni
ecmh (Linux e BSD)
mrd6 (Linux)
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 19 / 27
Implementazioni
Configurazione di IOS (1)
ipv6 multicast routing
ipv6 route 2001:1418:100::/40 Tunnel10 multicast
router bgp 12779
neighbor 2001:1418:1:400::26 remote-as 29259
address-family ipv6 multicast
neighbor 2001:1418:1:400::26 route-map IABG-OUT6M out
route-map IABG-OUT6M permit 100
match community CUSTOMERS
ip community-list standard CUSTOMERS permit 12779:6500
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 20 / 27
Implementazioni
Configurazione di IOS (2)
Per attivare ASM:
ipv6 pim rp-address 2001:660:3007:300:1:: RP-GLOBAL6
ipv6 access-list RP-GLOBAL6
permit ipv6 any FF0E::/16
permit ipv6 any FF1E::/16
Con lo stesso meccanismo si possono definire i RP per domini PIM
locali o per scopi speciali.
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 21 / 27
Implementazioni
Configurazione di un host Linux
È necessario configurare una route con metrica minore di quella delle
route create automaticamente dal kernel. (Perché?)
ip route add ff00::/8 dev eth0 metric 128
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 22 / 27
Implementazioni
mrd6
Se si usa Linux, solitamente mrd6 è la soluzione più semplice e
immediata.
Funziona con un kernel normale, senza bisogno di patch.
È attivamente sviluppato, e l’autore è disponibile in IRC per fare
debugging e discutere nuove feature.
Implementa MLDV1, MLDV2, PIM e BGPV4+.
Può funzionare da RP.
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 23 / 27
Implementazioni
Monitoraggio con dbeacon
Uno strumento di monitoraggio distribuito che produce statistiche sullo
stato della connettività multicast.
Ogni nodo fa il join di un gruppo e ci invia informazioni sul proprio
stato e su cosa riceve dagli altri nodi.
Vengono tenute statistiche su TTL, pacchetti persi, latenza e jitter,
che opzionalmente sono archiviate con RRD.
Le informazioni sono anche esportate in XML e possono essere
mostrate in un sito web.
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 24 / 27
Risorse
Risorse
Risorse in rete
#m6bone su irc.freenode.net.
#networker su IRCNet.
Mailing list di m6bone.
http://www.m6bone.net/
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 25 / 27
Risorse
Per concludere...
IPV6 multicast
È più semplice da configurare e più scalabile che con IPV4.
Si basa su un protocollo di routing di provata affidabilità (PIM).
Ci sono concrete possibilità di fornire IPV6 multicast ai propri clienti già
dall’inizio del deployment di IPV6 (salvo bug nelle implementazioni).
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 26 / 27
Risorse
Domande?
http://www.linux.it/~md/text/multicast6.pdf
(google . . . Marco d’Itri . . . I feel lucky)
Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 27 / 27

More Related Content

What's hot

Progetto Netkit
Progetto NetkitProgetto Netkit
Progetto Netkit
Florin D. Tanasache
 
Introduzione al livello di rete e Dijkstra algorithm
Introduzione al livello di rete e Dijkstra algorithmIntroduzione al livello di rete e Dijkstra algorithm
Introduzione al livello di rete e Dijkstra algorithm
orestJump
 
9 Intranetting
9 Intranetting9 Intranetting
9 Intranettingacapone
 
4 Protocollo Ip
4 Protocollo Ip4 Protocollo Ip
4 Protocollo Ipacapone
 
6 Inoltro Instradamento
6 Inoltro Instradamento6 Inoltro Instradamento
6 Inoltro Instradamentoacapone
 
10 Reti Accesso
10 Reti Accesso10 Reti Accesso
10 Reti Accessoacapone
 
Sistemi e reti : Il livello di trasporto
Sistemi e reti : Il livello di trasportoSistemi e reti : Il livello di trasporto
Sistemi e reti : Il livello di trasporto
Stefano Scarpellini
 
Pf e netfilter, analisi dei firewall open source
Pf e netfilter, analisi dei firewall open sourcePf e netfilter, analisi dei firewall open source
Pf e netfilter, analisi dei firewall open source
Giovanni Bechis
 
Wep crack
Wep crackWep crack
Wep crackaspy
 
Darknet 1.2.2
Darknet 1.2.2Darknet 1.2.2
Darknet 1.2.2
Alessandro Selli
 
[Ldna 2019 marcello marino] mt's driver ravenna aes67 audio contribution over...
[Ldna 2019 marcello marino] mt's driver ravenna aes67 audio contribution over...[Ldna 2019 marcello marino] mt's driver ravenna aes67 audio contribution over...
[Ldna 2019 marcello marino] mt's driver ravenna aes67 audio contribution over...
Marcello Marino
 
01 Internet: origini e definizioni
01 Internet: origini e definizioni01 Internet: origini e definizioni
01 Internet: origini e definizioni
Dario Avantaggiato
 
PfSense Cluster
PfSense ClusterPfSense Cluster
PfSense Cluster
Francesco Taurino
 
introduzione_a_pfSense
introduzione_a_pfSenseintroduzione_a_pfSense
introduzione_a_pfSense
Massimo Giaimo
 

What's hot (20)

SCTP
SCTPSCTP
SCTP
 
Progetto Netkit
Progetto NetkitProgetto Netkit
Progetto Netkit
 
Introduzione al livello di rete e Dijkstra algorithm
Introduzione al livello di rete e Dijkstra algorithmIntroduzione al livello di rete e Dijkstra algorithm
Introduzione al livello di rete e Dijkstra algorithm
 
9 Intranetting
9 Intranetting9 Intranetting
9 Intranetting
 
4 Protocollo Ip
4 Protocollo Ip4 Protocollo Ip
4 Protocollo Ip
 
6 Inoltro Instradamento
6 Inoltro Instradamento6 Inoltro Instradamento
6 Inoltro Instradamento
 
10 Reti Accesso
10 Reti Accesso10 Reti Accesso
10 Reti Accesso
 
Packet Sniffing
Packet SniffingPacket Sniffing
Packet Sniffing
 
Sistemi e reti : Il livello di trasporto
Sistemi e reti : Il livello di trasportoSistemi e reti : Il livello di trasporto
Sistemi e reti : Il livello di trasporto
 
Pf e netfilter, analisi dei firewall open source
Pf e netfilter, analisi dei firewall open sourcePf e netfilter, analisi dei firewall open source
Pf e netfilter, analisi dei firewall open source
 
Wep crack
Wep crackWep crack
Wep crack
 
Slide Bit Torrent
Slide Bit TorrentSlide Bit Torrent
Slide Bit Torrent
 
Darknet 1.2.2
Darknet 1.2.2Darknet 1.2.2
Darknet 1.2.2
 
Oltre I firewall
Oltre I firewallOltre I firewall
Oltre I firewall
 
[Ldna 2019 marcello marino] mt's driver ravenna aes67 audio contribution over...
[Ldna 2019 marcello marino] mt's driver ravenna aes67 audio contribution over...[Ldna 2019 marcello marino] mt's driver ravenna aes67 audio contribution over...
[Ldna 2019 marcello marino] mt's driver ravenna aes67 audio contribution over...
 
zeroconf
zeroconfzeroconf
zeroconf
 
01 Internet: origini e definizioni
01 Internet: origini e definizioni01 Internet: origini e definizioni
01 Internet: origini e definizioni
 
Arp Attack
Arp AttackArp Attack
Arp Attack
 
PfSense Cluster
PfSense ClusterPfSense Cluster
PfSense Cluster
 
introduzione_a_pfSense
introduzione_a_pfSenseintroduzione_a_pfSense
introduzione_a_pfSense
 

Similar to Multicast IPv6

TCP IP
TCP IPTCP IP
Internetworking
InternetworkingInternetworking
Internetworking
Vincenzo Calabrò
 
Piano di indirizzamento di una rete IPv6
Piano di indirizzamento di una rete IPv6Piano di indirizzamento di una rete IPv6
Piano di indirizzamento di una rete IPv6
Marco d'Itri
 
Introduzione ai protocolli tcp/ip ed al Domain Name System
Introduzione ai protocolli tcp/ip ed al Domain Name SystemIntroduzione ai protocolli tcp/ip ed al Domain Name System
Introduzione ai protocolli tcp/ip ed al Domain Name System
RoBisc
 
Polito v2 (2010 05-19)
Polito v2 (2010 05-19)Polito v2 (2010 05-19)
Polito v2 (2010 05-19)
Luca Cicchelli
 
Modello TCP/IP
Modello TCP/IPModello TCP/IP
RPSL e rpsltool
RPSL e rpsltoolRPSL e rpsltool
RPSL e rpsltool
Marco d'Itri
 
Traffic Shaping Su Linux
Traffic Shaping Su LinuxTraffic Shaping Su Linux
Traffic Shaping Su LinuxMajong DevJfu
 
Firewall and Proxy Server
Firewall and Proxy ServerFirewall and Proxy Server
Firewall and Proxy ServerStefano Sasso
 
Lumit.Basic.Knowledge.Training.Introduzione.Tcp Ip
Lumit.Basic.Knowledge.Training.Introduzione.Tcp IpLumit.Basic.Knowledge.Training.Introduzione.Tcp Ip
Lumit.Basic.Knowledge.Training.Introduzione.Tcp Ip
Luca Astori
 
Corso VoIP per Area Commerciale 2006
Corso VoIP per Area Commerciale 2006Corso VoIP per Area Commerciale 2006
Corso VoIP per Area Commerciale 2006rosariolatorre
 
IoT: protocolli, dispositivi, architetture
IoT: protocolli, dispositivi, architettureIoT: protocolli, dispositivi, architetture
IoT: protocolli, dispositivi, architetture
Stefano Valle
 
Marco Sommani 0904 Wbf09 Sommani
Marco Sommani 0904 Wbf09 SommaniMarco Sommani 0904 Wbf09 Sommani
Marco Sommani 0904 Wbf09 SommaniGoWireless
 
Reti Locali
Reti LocaliReti Locali
Reti Locali
Vincenzo Calabrò
 
5 Protocolli Trasporto Parte1
5 Protocolli Trasporto Parte15 Protocolli Trasporto Parte1
5 Protocolli Trasporto Parte1Majong DevJfu
 
Portfolio SELTA per le Reti di Accesso 2018
Portfolio SELTA per le Reti di Accesso 2018Portfolio SELTA per le Reti di Accesso 2018
Portfolio SELTA per le Reti di Accesso 2018
SELTA
 

Similar to Multicast IPv6 (20)

TCP IP
TCP IPTCP IP
TCP IP
 
Internetworking
InternetworkingInternetworking
Internetworking
 
Piano di indirizzamento di una rete IPv6
Piano di indirizzamento di una rete IPv6Piano di indirizzamento di una rete IPv6
Piano di indirizzamento di una rete IPv6
 
Introduzione ai protocolli tcp/ip ed al Domain Name System
Introduzione ai protocolli tcp/ip ed al Domain Name SystemIntroduzione ai protocolli tcp/ip ed al Domain Name System
Introduzione ai protocolli tcp/ip ed al Domain Name System
 
Enter goes ipv6
Enter goes ipv6 Enter goes ipv6
Enter goes ipv6
 
Polito v2 (2010 05-19)
Polito v2 (2010 05-19)Polito v2 (2010 05-19)
Polito v2 (2010 05-19)
 
Modello TCP/IP
Modello TCP/IPModello TCP/IP
Modello TCP/IP
 
RPSL e rpsltool
RPSL e rpsltoolRPSL e rpsltool
RPSL e rpsltool
 
Traffic Shaping Su Linux
Traffic Shaping Su LinuxTraffic Shaping Su Linux
Traffic Shaping Su Linux
 
8 Www2009 Parte1
8 Www2009 Parte18 Www2009 Parte1
8 Www2009 Parte1
 
Firewall and Proxy Server
Firewall and Proxy ServerFirewall and Proxy Server
Firewall and Proxy Server
 
Lumit.Basic.Knowledge.Training.Introduzione.Tcp Ip
Lumit.Basic.Knowledge.Training.Introduzione.Tcp IpLumit.Basic.Knowledge.Training.Introduzione.Tcp Ip
Lumit.Basic.Knowledge.Training.Introduzione.Tcp Ip
 
Corso VoIP per Area Commerciale 2006
Corso VoIP per Area Commerciale 2006Corso VoIP per Area Commerciale 2006
Corso VoIP per Area Commerciale 2006
 
IoT: protocolli, dispositivi, architetture
IoT: protocolli, dispositivi, architettureIoT: protocolli, dispositivi, architetture
IoT: protocolli, dispositivi, architetture
 
Marco Sommani 0904 Wbf09 Sommani
Marco Sommani 0904 Wbf09 SommaniMarco Sommani 0904 Wbf09 Sommani
Marco Sommani 0904 Wbf09 Sommani
 
Reti Domestiche
Reti DomesticheReti Domestiche
Reti Domestiche
 
Reti Locali
Reti LocaliReti Locali
Reti Locali
 
5 Protocolli Trasporto Parte1
5 Protocolli Trasporto Parte15 Protocolli Trasporto Parte1
5 Protocolli Trasporto Parte1
 
3 H2 N Parte2
3 H2 N Parte23 H2 N Parte2
3 H2 N Parte2
 
Portfolio SELTA per le Reti di Accesso 2018
Portfolio SELTA per le Reti di Accesso 2018Portfolio SELTA per le Reti di Accesso 2018
Portfolio SELTA per le Reti di Accesso 2018
 

More from Marco d'Itri

Exploring the Huawei HG8010H GPON ONT
Exploring the Huawei HG8010H GPON ONTExploring the Huawei HG8010H GPON ONT
Exploring the Huawei HG8010H GPON ONT
Marco d'Itri
 
BGP security at internet exchanges
BGP security at internet exchangesBGP security at internet exchanges
BGP security at internet exchanges
Marco d'Itri
 
The Internet of (other people's) Things
The Internet of (other people's) ThingsThe Internet of (other people's) Things
The Internet of (other people's) Things
Marco d'Itri
 
Introduzione alla sicurezza di BGP
Introduzione alla sicurezza di BGPIntroduzione alla sicurezza di BGP
Introduzione alla sicurezza di BGP
Marco d'Itri
 
Introduzione al peering
Introduzione al peeringIntroduzione al peering
Introduzione al peering
Marco d'Itri
 
The Internet of (other people's) Things
The Internet of (other people's) ThingsThe Internet of (other people's) Things
The Internet of (other people's) Things
Marco d'Itri
 
State-encouraged BGP hijacking
State-encouraged BGP hijackingState-encouraged BGP hijacking
State-encouraged BGP hijacking
Marco d'Itri
 
Sicurezza di BGP
Sicurezza di BGPSicurezza di BGP
Sicurezza di BGP
Marco d'Itri
 
Un mistero di censura all'italiana
Un mistero di censura all'italianaUn mistero di censura all'italiana
Un mistero di censura all'italiana
Marco d'Itri
 
Interconnessioni tra le reti Italiane
Interconnessioni tra le reti ItalianeInterconnessioni tra le reti Italiane
Interconnessioni tra le reti Italiane
Marco d'Itri
 
An introduction to peering in Italy
An introduction to peering in ItalyAn introduction to peering in Italy
An introduction to peering in Italy
Marco d'Itri
 
Peering e depeering
Peering e depeeringPeering e depeering
Peering e depeering
Marco d'Itri
 
Introduzione al peering
Introduzione al peeringIntroduzione al peering
Introduzione al peering
Marco d'Itri
 
Depeering di Telecom Italia
Depeering di Telecom ItaliaDepeering di Telecom Italia
Depeering di Telecom Italia
Marco d'Itri
 
RPSL and rpsltool
RPSL and rpsltoolRPSL and rpsltool
RPSL and rpsltool
Marco d'Itri
 
Il nuovo Bryar.pm
Il nuovo Bryar.pmIl nuovo Bryar.pm
Il nuovo Bryar.pm
Marco d'Itri
 
Transizione a IPv6: come la vedo io
Transizione a IPv6: come la vedo ioTransizione a IPv6: come la vedo io
Transizione a IPv6: come la vedo io
Marco d'Itri
 
Networking in ambienti cloud
Networking in ambienti cloudNetworking in ambienti cloud
Networking in ambienti cloud
Marco d'Itri
 
DNSSEC - una breve introduzione
DNSSEC - una breve introduzioneDNSSEC - una breve introduzione
DNSSEC - una breve introduzione
Marco d'Itri
 
PBL e SBL DROP
PBL e SBL DROPPBL e SBL DROP
PBL e SBL DROP
Marco d'Itri
 

More from Marco d'Itri (20)

Exploring the Huawei HG8010H GPON ONT
Exploring the Huawei HG8010H GPON ONTExploring the Huawei HG8010H GPON ONT
Exploring the Huawei HG8010H GPON ONT
 
BGP security at internet exchanges
BGP security at internet exchangesBGP security at internet exchanges
BGP security at internet exchanges
 
The Internet of (other people's) Things
The Internet of (other people's) ThingsThe Internet of (other people's) Things
The Internet of (other people's) Things
 
Introduzione alla sicurezza di BGP
Introduzione alla sicurezza di BGPIntroduzione alla sicurezza di BGP
Introduzione alla sicurezza di BGP
 
Introduzione al peering
Introduzione al peeringIntroduzione al peering
Introduzione al peering
 
The Internet of (other people's) Things
The Internet of (other people's) ThingsThe Internet of (other people's) Things
The Internet of (other people's) Things
 
State-encouraged BGP hijacking
State-encouraged BGP hijackingState-encouraged BGP hijacking
State-encouraged BGP hijacking
 
Sicurezza di BGP
Sicurezza di BGPSicurezza di BGP
Sicurezza di BGP
 
Un mistero di censura all'italiana
Un mistero di censura all'italianaUn mistero di censura all'italiana
Un mistero di censura all'italiana
 
Interconnessioni tra le reti Italiane
Interconnessioni tra le reti ItalianeInterconnessioni tra le reti Italiane
Interconnessioni tra le reti Italiane
 
An introduction to peering in Italy
An introduction to peering in ItalyAn introduction to peering in Italy
An introduction to peering in Italy
 
Peering e depeering
Peering e depeeringPeering e depeering
Peering e depeering
 
Introduzione al peering
Introduzione al peeringIntroduzione al peering
Introduzione al peering
 
Depeering di Telecom Italia
Depeering di Telecom ItaliaDepeering di Telecom Italia
Depeering di Telecom Italia
 
RPSL and rpsltool
RPSL and rpsltoolRPSL and rpsltool
RPSL and rpsltool
 
Il nuovo Bryar.pm
Il nuovo Bryar.pmIl nuovo Bryar.pm
Il nuovo Bryar.pm
 
Transizione a IPv6: come la vedo io
Transizione a IPv6: come la vedo ioTransizione a IPv6: come la vedo io
Transizione a IPv6: come la vedo io
 
Networking in ambienti cloud
Networking in ambienti cloudNetworking in ambienti cloud
Networking in ambienti cloud
 
DNSSEC - una breve introduzione
DNSSEC - una breve introduzioneDNSSEC - una breve introduzione
DNSSEC - una breve introduzione
 
PBL e SBL DROP
PBL e SBL DROPPBL e SBL DROP
PBL e SBL DROP
 

Multicast IPv6

  • 1. Multicast IPv6 Teoria e pratica Marco d’Itri <md@linux.it> ITgate Network IPv6 Task Force Italia - Luglio 2005
  • 2. Indice 1 Introduzione 2 Formato degli indirizzi 3 Protocolli di routing 4 m6bone 5 Implementazioni 6 Risorse Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 2 / 27
  • 3. Introduzione Multicast in breve Un metodo per inviare in modo efficiente gli stessi dati a un grande numero di destinatari. Tipi di multicast Any Source Multicast (ASM) Una o più sorgenti e destinatari multipli. (∗, G) Single Source Multicast (SSM) Una sola sorgente e destinatari multipli. (S, G) Gli indirizzi multicast identificano un insieme di interfacce. I pacchetti ad essi inviati vengono consegnati a tutte le interfacce che fanno parte del gruppo. In pratica, ogni pacchetto inviato al gruppo multicast viene replicato per ogni destinatario dai router sul percorso. Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 3 / 27
  • 4. Formato degli indirizzi Formato degli indirizzi FF00::/8: indirizzi multicast (RFC 3513). 8 4 4 112 1111 1111 00PT scope group ID Flag P = 1: costruito con il prefisso della rete unicast, P = 0: no. T = 1: assegnato in modo temporaneo, T = 0: permanente. Per definizione, sono temporanei tutti gli indirizzi non allocati staticamente da IANA. Sono a disposizione 120 bit per provare schemi di indirizzamento differenti. Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 4 / 27
  • 5. Formato degli indirizzi Scope degli indirizzi Scope (4 bit) 1 node-local 2 link-local 5 site-local 8 organization-local E globale Gli altri valori sono sono a disposizione di ogni sito. I router devono essere configurati per limitare la propagazione del traffico con scope locale. Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 5 / 27
  • 6. Formato degli indirizzi Indirizzi basati su un prefisso FF3x::/16: indirizzi multicast basati sul prefisso di una rete unicast (RFC 3306). 8 4 4 8 8 64 32 1111 1111 0011 scope 0 pref. len. network group ID Flag P = 1: costruito con il prefisso della rete unicast. T = 1: temporaneo. Prefix length indica la lunghezza in bit (≤ 64) del prefisso contenuto nel campo successivo, che è la rete unicast a cui appartiene l’indirizzo. Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 6 / 27
  • 7. Formato degli indirizzi Indirizzi SSM FF3x::/96: indirizzi per Single Source Multicast (RFC 3569). 8 4 4 8 8 64 32 1111 1111 0011 scope 0 0 0 group ID Se un indirizzo unicast-prefix-based ha il prefisso uguale 0 allora si tratta di un indirizzo SSM. Di conseguenza anche la lunghezza del prefisso è uguale a 0. Principali vantaggi del SSM Semplifica l’allocazione degli indirizzi. Semplifica notevolmente il routing. Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 7 / 27
  • 8. Formato degli indirizzi Indirizzi embedded-RP Un Rendezvous Point è un router che conosce le sorgenti dei gruppi attivi in un dominio PIM. È necessario per ASM. (RFC 3956). 8 4 4 4 4 8 64 32 1111 1111 0111 scope 0 RIID plen network group ID Flag R = 1: identifica gli indirizzi embedded-RP. P = 1 e T = 1 come per gli altri indirizzi basati su un prefisso. 4 dei bit riservati diventano il campo RIID, che aggiunto alla rete forma l’indirizzo unicast del RP. Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 8 / 27
  • 9. Formato degli indirizzi Tipi di indirizzi Ricapitolando: 8 4 4 4 4 8 64 32 multicast 0RPT scope 1111 1111 0000 XXXX ID (112) 1111 1111 0001 XXXX ID (112) 1111 1111 0010 XXXX non valido 1111 1111 0011 XXXX 0 plen net ID 1111 1111 0011 XXXX 0 0 0 ID 1111 1111 0111 XXXX 0 RIID plen net ID Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 9 / 27
  • 10. Formato degli indirizzi Generazione dell’ID L’ID multicast contenuto in ogni indirizzo deve essere allocato in modo che sia unico per lo scope, la rete o l’indirizzo della sorgente. (RFC 3307) Metodi di assegnazione possibili Statica da parte della IANA (P = 0, T = 0). Automatica tramite un server MADCAP (RFC 2730). Automatica da parte degli host interessati tramite Zeroconf. A caso da chi gestisce il servizio. Attenzione: solo gli ultimi 32 bit sono usati nel MAC Ethernet! Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 10 / 27
  • 11. Formato degli indirizzi Esempi di indirizzi FF02::1 (ping6 -I eth0 FF02::1) permanente, scope link-local: tutti i nodi sulla LAN. FF05::101 permanente, scope site-local: tutti i server NTP del sito. FF1E::8888 (vlc udp://@[FF1E::8888]:8888) temporaneo, scope globale: stream audio di Frequence 3. FF3E:0020:2001:660::BEAC temporaneo, prefix-based, scope globale: ex beacon di Renater (2001:660::/32). FF3E::BEAC temporaneo, SSM, scope globale: dbeacon. FF7E:D40:2001:660:3001:4001::/96 embedded-RP, scope globale: prefisso del gateway multicast IPV4-IPV6. Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 11 / 27
  • 12. Formato degli indirizzi Esempi di indirizzi FF02::1 (ping6 -I eth0 FF02::1) permanente, scope link-local: tutti i nodi sulla LAN. FF05::101 permanente, scope site-local: tutti i server NTP del sito. FF1E::8888 (vlc udp://@[FF1E::8888]:8888) temporaneo, scope globale: stream audio di Frequence 3. FF3E:0020:2001:660::BEAC temporaneo, scope globale, prefix-based: beacon di Renater (2001:660::/32). FF3E::BEAC temporaneo, SSM, scope globale: dbeacon. FF7E:D40:2001:660:3001:4001::/96 embedded-RP, scope globale: prefisso del gateway multicast IPV4-IPV6. Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 11 / 27
  • 13. Protocolli di routing Protocolli di routing: MLD MLD è il protocollo di segnalazione tra router e host (RFC 2710). È l’omologo di IGMP per IPV6. È implementato con messaggi ICMPv6 di tipo informativo. Prevede tre tipi di messaggi: query: il router cerca host interessati a gruppi multicast. report: un host comunica al router l’interesse per un gruppo. done: un host segnala al router la fine dell’interesse. MLDV2 (RFC 3810) è la sua evoluzione: Come MLDV1, ma in più ha il supporto per SSM. Non è implementato da FreeBSD e Windows. MLD snooping: è in corso di sviluppo per i 7601. Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 12 / 27
  • 14. Protocolli di routing Protocolli di routing: PIM PIM è il protocollo di segnalazione tra router (RFC 2362). Permette di conoscere la sorgente di un gruppo ASM usando un Rendez-vous Point (RP). Le sorgenti ASM sono registrate a un RP dal router a cui sono connesse. Lo stato costruito con PIM viene usato dai router per decidere come fare il forwarding dei pacchetti multicast. È progettato come protocollo intra-domain: non scala a livello globale. Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 13 / 27
  • 15. Protocolli di routing I Rendez-vous Point Se si usa PIM, un edge router che riceve un join (∗, G) o del traffico deve conoscere l’indirizzo del RP su cui è stato registrato il gruppo: Tramite una configurazione statica. Dinamicamente tramite il Bootstrap Router Protocol (BSR). Dinamicamente tramite il protocollo Auto-RP. Costruendolo da un gruppo Embedded-RP. Se si usa SSM non serve un RP, e il router invia direttamente un join (S, G) verso la sorgente. Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 14 / 27
  • 16. m6bone m6bone m6bone è l’insieme dei siti, prevalentemente accademici, che hanno connettività multicast IPV6. È un gruppo informale. Come connettersi Iniziare ad configurare il routing multicast nella propria rete. Cercare un sito topologicamente vicino. Chiedere di attivare un tunnel. Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 15 / 27
  • 17. m6bone m6bone in Italia Siti italiani con connettività IPv6 multicast CNIT GARR ITgate Non ci sono peering! Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 16 / 27
  • 18. m6bone PIM in m6bone Non esiste MSDP per IPV6, quindi c’è un unico dominio PIM. Come trovare il RP? Renater gestisce un RP centrale, configurato staticamente in ogni router. Alcuni siti usano dei RP site-local, configurati staticamente o tramite BSR. A lungo termine È una buona idea usare SSM, quando possibile. Se proprio serve ASM, si possono usare gruppi Embedded-RP. Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 17 / 27
  • 19. Implementazioni Implementazioni di router Cisco: a partire da 12.0(26)S, 12.2(25)S, 12.3(2)T Attenzione ai bug: qui 12.3(11)T2 funziona, YMMV. Juniper: a partire da JunOS 6.0. Linux (≥ 2.6.10) e mrd6. Forwarding in user space. Forwarding in kernel space (con una patch). Linux e pim6sd (con una patch). BSD e pim6sd. BSD e XORP. Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 18 / 27
  • 20. Implementazioni Proxy MLD In alternativa a un router completo si può usare un proxy MLD, che ripete verso la sorgente i join ricevuti e fa il forwarding del traffico. Questo funziona definendo manualmente quali sono le interfacce di ingresso e di uscita, quindi si può solo ricevere traffico. Implementazioni ecmh (Linux e BSD) mrd6 (Linux) Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 19 / 27
  • 21. Implementazioni Configurazione di IOS (1) ipv6 multicast routing ipv6 route 2001:1418:100::/40 Tunnel10 multicast router bgp 12779 neighbor 2001:1418:1:400::26 remote-as 29259 address-family ipv6 multicast neighbor 2001:1418:1:400::26 route-map IABG-OUT6M out route-map IABG-OUT6M permit 100 match community CUSTOMERS ip community-list standard CUSTOMERS permit 12779:6500 Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 20 / 27
  • 22. Implementazioni Configurazione di IOS (2) Per attivare ASM: ipv6 pim rp-address 2001:660:3007:300:1:: RP-GLOBAL6 ipv6 access-list RP-GLOBAL6 permit ipv6 any FF0E::/16 permit ipv6 any FF1E::/16 Con lo stesso meccanismo si possono definire i RP per domini PIM locali o per scopi speciali. Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 21 / 27
  • 23. Implementazioni Configurazione di un host Linux È necessario configurare una route con metrica minore di quella delle route create automaticamente dal kernel. (Perché?) ip route add ff00::/8 dev eth0 metric 128 Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 22 / 27
  • 24. Implementazioni mrd6 Se si usa Linux, solitamente mrd6 è la soluzione più semplice e immediata. Funziona con un kernel normale, senza bisogno di patch. È attivamente sviluppato, e l’autore è disponibile in IRC per fare debugging e discutere nuove feature. Implementa MLDV1, MLDV2, PIM e BGPV4+. Può funzionare da RP. Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 23 / 27
  • 25. Implementazioni Monitoraggio con dbeacon Uno strumento di monitoraggio distribuito che produce statistiche sullo stato della connettività multicast. Ogni nodo fa il join di un gruppo e ci invia informazioni sul proprio stato e su cosa riceve dagli altri nodi. Vengono tenute statistiche su TTL, pacchetti persi, latenza e jitter, che opzionalmente sono archiviate con RRD. Le informazioni sono anche esportate in XML e possono essere mostrate in un sito web. Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 24 / 27
  • 26. Risorse Risorse Risorse in rete #m6bone su irc.freenode.net. #networker su IRCNet. Mailing list di m6bone. http://www.m6bone.net/ Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 25 / 27
  • 27. Risorse Per concludere... IPV6 multicast È più semplice da configurare e più scalabile che con IPV4. Si basa su un protocollo di routing di provata affidabilità (PIM). Ci sono concrete possibilità di fornire IPV6 multicast ai propri clienti già dall’inizio del deployment di IPV6 (salvo bug nelle implementazioni). Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 26 / 27
  • 28. Risorse Domande? http://www.linux.it/~md/text/multicast6.pdf (google . . . Marco d’Itri . . . I feel lucky) Marco d’Itri (ITgate Network) Multicast IPv6 IPv6TF-IT Luglio 2005 27 / 27