QoS Laboratorioharjoitus 3

Samankaltaiset tiedostot
QoS Laboratorioharjoitus 2

QoS Laboratorioharjoitus 6

QoS Laboratorioharjoitus 1

Internet Protocol version 6. IPv6

QoS Laboratorioharjoitus 5

Multicast perusteet. Ins (YAMK) Karo Saharinen Karo Saharinen

Laboratorio 5. Cisco QoS. Joonas Lepistö Tomi Porri Antti Saarenmaa Santtu Turunen

Laboratorio 6. Junos QoS. Joonas Lepistö Tomi Porri Antti Saarenmaa Santtu Turunen

CCNP4 CS2 Raportti. Ville Santikko Turo Santikko IT08POT

ESPOO VANTAA INSTITUTE OF TECHNOLOGY. ser 0/0. Right WS-3 WS-4. Ennen QoS-määrittelyjä tehdään normaalit reititinmäärittelyt ja testataan IP-yhteys:

KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikka / Tietoverkkotekniikka. Simo Suurnäkki 6PE SIMUNET. Projektiopinnot TI07TIVE

Turvallisuus verkkokerroksella

Turvallisuus verkkokerroksella

AH-otsake. Turvallisuus verkkokerroksella. AH-otsake. AH-otsake. ESP-otsake. IP-otsake

Vuonimiö on pelkkä tunniste

Vuonimiö on pelkkä tunniste

... Laajennusotsakkeet. Reititysotsake. Vuonimiö on pelkkä tunniste. Vuonimiöiden käsittely solmuissa

reitittimissä => tehokkaampi 2005 Markku Kojo IPv6

Monilähetysreititys. Paketti lähetetään usealle vastaanottajalle Miksi? Monet sovellukset hyötyvät

Multicast. Johdanto Ryhmien hallinta Reititys Reaaliaikaiset siirto- ja hallintaprotokollat Resurssien varaus Sessioiden hallinta

Opinnäytetyön loppuseminaari

Multicast. Johdanto Ryhmien hallinta Reititys Reaaliaikaiset siirto- ja hallintaprotokollat Resurssien varaus Sessioiden hallinta

ICMP-sanomia. 3. IP-kerroksen muita protokollia ja mekanismeja ICMP (Internet Control Message Protocol)

Kytkimet, reitittimet, palomuurit

3. IP-kerroksen muita protokollia ja

ICTLAB palomuuri ja etähallintayhteydet

Siirtyminen IPv6 yhteyskäytäntöön

Lisää reititystä. Tietokoneverkot 2009 (4 op) Syksy Futurice Oy. Lisää reititystä. Jaakko Kangasharju

KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikka / Tietoverkkotekniikka. Antti Parkkinen. ICTLAB tuotantoverkon IPv6 toteutus

Lisää reititystä. Tietokoneverkot 2008 (4 op) Syksy Teknillinen korkeakoulu. Lisää reititystä. Jaakko Kangasharju

S Tietoliikennetekniikan perusteet. Pakettikytkentäiset verkot. Helsinki University of Technology Networking Laboratory

Pikaohje IPv6-ominaisuuksiin FreeBSD-järjestelmässä Päivitetty Niko Suominen

Internet ja tietoverkot 2015 Harjoitus 5: (ISO/OSI-malli: Verkkokerros, TCP/IP-malli: internet-kerros)

Opinnäytetyön Loppuseminaari

IPTV:n asettamat vaatimukset verkolle ja palvelun toteutus. Lauri Suleva TI07 Opinnäytetyö 2011

IPV6-OPETUSVERKKO POHJOIS-KARJALAN AMMATTIRKOKEAKOULUSSA

3/3/15. Verkkokerros 2: Reititys CSE-C2400 Tietokoneverkot Kirjasta , Verkkokerros. Internet-protokollapino ja verkkokerroksen tehtävä

Kattava katsaus reititykseen

Security server v6 installation requirements

OSI ja Protokollapino

Verkkokerros 2: Reititys

Introduction to exterior routing

Introduction to exterior routing

Yleinen ohjeistus Linux-tehtävään

Johdanto. Multicast. Unicast. Broadcast. Protokollat. Multicast

Multicast. Johdanto Ryhmien hallinta Reititys Reaaliaikaiset siirto- ja hallintaprotokollat Resurssien varaus Sessioiden hallinta MBone

Introduction to exterior routing

Introduction to exterior routing. Autonomous Systems

Kymenlaakson Ammattikorkeakoulu Elektroniikan koulutusohjelma / tietoliikennetekniikka Opinnäytetyö 2011 Tuomo Korja

Demo 2: Virtuaalilähiverkot

IPv6 &lanne Ciscon tuo2eissa

QoS Laboratorioharjoitus 4

KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikka / Tietoverkkotekniikka

Redundanttisuus kontrolleripohjaisessa langattomassa lähiverkossa. Hakkarainen, Joni Vanhala, Pasi

Verkkoinformaation välittämiseen isäntäkoneiden ja reitittimien välillä

IPv6 käyttöönoton mahdollistajat operaattorin näkemys

TLT-2600 Verkkotekniikan jatkokurssi Multicast

T Tietokoneverkot : Reititys sisäverkossa

T Tietokoneverkot kertaus

TIETOKONEYLIASENTAJAN ERIKOISAMMATTITUTKINTO

Security server v6 installation requirements

6. Monilähetysreititys

Laitteessa tulee olla ohjelmisto tai uudempi, tarvittaessa päivitä laite

D-Link DSL-504T ADSL Reitittimen Asennusohje ver. 1.0

KYMENLAAKSON AMMATTIKORKEAKOULU Tietotekniikan koulutusohjelma / Tietoverkkotekniikka INTERNETPALVELUNTARJOAJIEN RYHMÄLÄHETYSTEKNIIKAT

Tietokone. Tietokone ja ylläpito. Tietokone. Tietokone. Tietokone. Tietokone

IP asetus -harjoitus Tietojenkäsittelyn koulutusohjelma

INTERNET-yhteydet E L E C T R O N I C C O N T R O L S & S E N S O R S

Sovelluskerros. Sovelluskerros. Kuljetuskerros Verkkokerros Linkkikerros Fyysinen kerros. Kuljetuskerros Verkkokerros Linkkikerros Fyysinen kerros

TeleWell TW-EA711 ADSL modeemi & reititin ja palomuuri. Pikaohje

IPv6. IPv6. IPv6-otsake. Otsakekentät. 16 tavun osoitteet => rajaton määrä osoitteita

CIDR on kikkailua, ei ratkaise IP:n perusongelmia tavoitteita:

GROUP ENCRYPTED TRANSPORT VIRTUAL PRIVATE NETWORK JA CISCO DYNAMIC MULTIPOINT VIRTUAL PRIVATE NETWORK -TOTEUTUS

OSI malli. S Tietoliikenneverkot S Luento 2: L1, L2 ja L3 toiminteet

Directory Information Tree

Mark Summary Form. Tulospalvelu. Competitor No Competitor Name Member

1.1 Palomuuri suunnitelma

TCP/IP-protokollapino. Verkkokerros ja Internetprotokolla. Sisältö. Viime luennolla. Matti Siekkinen

Osoitemanipulaation syitä. Miten? Vaihtoehtoja. S Verkkopalvelujen tuotanto Luento 4: Verkko osoitteiden manipulaatiopalvelut.

3. Kuljetuskerros 3.1. Kuljetuspalvelu

Sisältö. Linkkikerros ja sen laitteet Linkkikerroksen osoitteet (MAC-osoite) ARP (eli IP-MAC-mäppäys) ja kytkintaulu

Antti Vähälummukka 2010

SMART BUSINESS ARCHITECTURE

4 reititintyyppiä. AS:ien alueet. sisäinen reititin alueen sisäisiä. alueen reunareititin sekä alueessa että runkolinjassa

reitittimet käyttävät samaa reititysprotokollaa (intra-as protocol)

Demo 1: 2950/2550-kytkimen perusmäärittely

Netemul -ohjelma Tietojenkäsittelyn koulutusohjelma

100 % Kaisu Keskinen Diat

Page1. 6. Monilähetysreititys. D-osoitteet. IGMP:n toimintaperiaate. Monilähetyksen

Yleinen ohjeistus Linux tehtävään

Hello-paketin kentät jatkuvat

Hello-paketin kentät jatkuvat

Tietoliikenteen perusteet. Langaton linkki

Tietoliikenteen perusteet. Langaton linkki

Tikon Ostolaskujenkäsittely versio 6.2.0

Tikon Ostolaskujenkäsittely versio SP1

TEHTÄVÄ 4: Microsoft Windows Deployment Services asennus ja hallinta

ELEC-C7241 Tietokoneverkot Verkkokerros

2/24/15. Verkkokerros 1: IP-protokolla CSE-C2400 Tietokoneverkot Kirjasta , 4.4. ja 8.7. Verkkokerros. Verkkokerroksen tehtävä

Tekninen kuvaus Aineistosiirrot Interaktiiviset yhteydet iftp-yhteydet

Transkriptio:

QoS Laboratorioharjoitus 3 Eemeli Paananen Henrik Saari Robert Rahikainen Laboratorioharjoitus Tammikuu 2016 Tekniikan ja liikenteen ala Insinööri (AMK), Tietoverkkotekniikan tutkinto-ohjelma

1 Sisältö 1 Toimeksianto... 4 2 Teoria... 4 2.1 IPv6... 4 2.1.1 IPv6 laajennusotsikot... 4 2.2 Network Address Translation... 6 2.2.1 Yleisesti... 6 2.2.2 Staattinen NAT... 8 2.2.3 Dynaaminen NAT... 8 2.2.4 PAT... 8 2.2.5 NAT64... 9 2.3 Protocol Independent Multicast... 10 2.3.1 Yleisesti... 10 2.3.2 Reverse Path Forwarding... 10 2.3.3 Dense Mode... 11 2.3.4 Sparse Mode... 11 2.3.5 Bidirectional PIM... 12 2.3.6 Source Specific Multicast... 12 2.4 IGMPv3... 12 2.4.1 Membership Query Messagen rakenne... 13 2.4.2 Membership Report Messagen Rakenne... 15 2.4.3 Group Recodien rakenne... 15 2.5 MLD... 16 2.5.1 Multicast Listener Query Messagen rakenne... 16 2.5.2 Multicast Listener Report Message rakenne... 18 2.5.3 Multicast Address Record rakenne... 18 3 Suunnitelmat... 20 3.1 Yhteydellisyys työryhmien välille... 20 3.1.1 IPv4... 20 3.1.2 IPv6... 22 3.2 PIM SSM IPv4 & IPv6... 23 4 Toteutus... 24 4.1 Yhteydellisyys... 24 4.1.1 IPv4... 24 4.1.2 IPv6... 27 4.2 Multicast... 30 4.2.1 IPv4... 30 4.2.2 IPv6... 34 5 Pohdinta... 41 Lähteet... 43 Liitteet... 44

2 Kuviot Kuvio 1. NAT osoitteet (CCNA Routing and Switching: Routing and Switching Essentials, 2014).... 8 Kuvio 2. RPF Check (IP Multicast Technology Overview).... 11 Kuvio 3: Verkon arkkitehtuurin ja protokollien korrelointi. (IGMP Basic Architecture)... 12 Kuvio 4: IGMPv3 viestin formaatti. (RFC3376)... 13 Kuvio 5. Report Messagen rakenne. (RFC3376)... 15 Kuvio 6: Group Recordien rakenne. (RFC3376)... 16 Kuvio 7: MLQM -viestin rakenne... 17 Kuvio 8.: MLRM viestin rakenne... 18 Kuvio 9: MAR -rakenne.... 19 Kuvio 10. Harjoituksen fyysinen topologia... 20 Kuvio 11. IPv4 osoitteistus... 22 Kuvio 12. IPv6 osoitteistus... 23 Kuvio 13. Ping ja Traceroute komennot... 24 Kuvio 14. IPv4 reitit Juniper Core R3 reittitaulusta... 25 Kuvio 15. OSPF database external reitit... 25 Kuvio 16. Show ip nat translations WG2-R1... 26 Kuvio 17. Virtuaalikoneiden rajapinta-asetukset... 26 Kuvio 18. Ping ja Traceroute komennot... 27 Kuvio 19. IPv6 reitit Juniper Core R3 reittitaulusta... 28 Kuvio 20. OSPF3 database external reitit... 29 Kuvio 21: WG2-R1 IPv4 Multicast reittitaulu.... 30 Kuvio 22: WG2-R1 IPv4 Multicast välitysmäärät.... 30 Kuvio 23: Juniper Core R4 IPv4 multicast välitysmäärät.... 31 Kuvio 24: IGMP Allow new sources 239.0.0.1. Source Address 157.30.85.33.... 32 Kuvio 25: IGMP Block Old Sources 239.0.0.1. Source Address 157.30.85.33.... 33 Kuvio 26: Multicast lähete aukaistaan.... 34 Kuvio 27: WG2-R1 IPv6 Multicast reittitaulu.... 35 Kuvio 28: WG2-R1 IPv6 Multicast välitysmäärät.... 35 Kuvio 29: Juniper Core R4 IPv6 multicast välitysmäärät.... 36 Kuvio 30: ICMPv6 Allow new sources FF08::1. S. Addr 2001:1337:5:2003::10.... 37 Kuvio 31: ICMPv6 Block Old Sources FF08::1. S. Addr 2001:1337:5:2003::10.... 38 Kuvio 32: Multicast lähete aukaistaan.... 39 Kuvio 33. UDP pakettien vastaanotto ja VLC-source... 40 Kuvio 34. Show PIM join Core R4... 41 Taulukot Taulukko 1. NAT osoitteet (CCNA Routing and Switching: Routing and Switching Essentials, 2014).... 7

Taulukko 2. Käytetyt 1-to-1 NAT -osoitteet... 21 3

4 1 Toimeksianto Tässä laboratorioharjoituksessa on tarkoitus luoda yhteydellisyys kahden lähiverkon välille käyttäen Juniperin laitteistoa. Työryhmien välille ja corelle toteutetaan multicast-yhteydellisyys. Kun coren ja lähiverkkojen reititys on tehty, lähetetään toisesta lähiverkosta toiselle multicastia käyttäen suoratoistolähetys, jota voidaan katsoa vlcohjelmistolla. 2 Teoria 2.1 IPv6 IPv6 on luotu paikkaamaan muutamia IPv4:n ongelmia. Yksi ongelmista on se, että julkisesti jaettavat IP-osoitteet loppuvat. Ennen IPv6:n käyttöönottoa osoitteiden loppumista on paikattu NAT:n avulla, jossa useampi yksityinen IP-osoite on pystytty pakkaamaan yhteen julkiseen IP-osoitteeseen. IPv6 tuo mukanaan uudenlaiset 128-bittiset IP-osoitteet IPv4:n 32-bittisten sijaan. Tämä mahdollistaa lähes rajattoman määrän yksittäisiä laitteita kytkettäväksi suoraan internettiin. (Technet) IPv6 pyrkii myös parempaan automaattiseen konfigurointiin 2.1.1 IPv6 laajennusotsikot 2.1.1.1 Hop-by-Hop Options Header ja Destination Options header Hop-by-Hop Options Header kantaa sisällään vaihtoehtoista dataa, minkä kaikkien paketin polulla olevien laitteiden täytyy tutkia. Se koostuu seuraavanlaisista kentistä: - Next Header: 8 bittinen kenttä, joka kertoo arvolla 0, että nyt Hop-by-Hop Options Header on tulossa. - Hdr Ext Len: 8 bittinen kenttä, joka kertoo headerin pituuden. - Options-kenttä: Sisältää vaihtoehtoiset TLV-koodatut optiot ja täydennykset. Kentän koko vaihtelee. Destination Options headeriin voidaan laittaa vaihtoehtoista tietoa mitä vain paketin kohdelaitteen tarvitsee tutkia. Se on aivan vastaavanlainen kuin Hop-by-Hop Options Header, mutta sen next header arvo on 60.

5 2.1.1.2 Routing header Routing headerillä määritetään yksi tai useampi solmu, missä paketin tulee käydä päästäkseen kohteeseensa. Routing headerissä kenttiä on viisi: - Next Header: 8 bitin kenttä, jonka arvo 43 kertoo seuraavaksi tulevan Routing Header - Hdr Ext Len: 8 bitin kenttä, joka kertoo minkä pituinen headeri on tulossa - Routing Type: 8 bitin kenttä, joka määrittää käytettävän Routing headerin variantin - Segments Left: 8 bitin kenttä, joka kertoo montako solmua vielä täytyy käydä läpi ennen kuin ollaan kohteessa. - Type-specific data: Vaihtelevan kokoinen kenttä, jonka formaatti määräytyy Routing Type kentän mukaan. 2.1.1.3 Fragment header Mikäli käytettävän tietoliikennereitin MTU ei riitä IPv6-paketille, tarvitaan fragment headeriä. Lähettävä laite siis jakaa lähetettävän paketin useampaan osaan. Fragment headerin rakenne on seuraavan lainen: - Next Header: Kertoo arvolla 44, että Fragment Header on tulossa. - Reserved: 8 bitin kenttä, joka on 0 tiedonsiirron aikana. - Fragment Offset: 13 bitin kenttä, mikä pitää jaetut osat sisällään 8-oktetin yksiköissä. - Res: 2 bitin varattu kenttä. Arvo on 0 lähetyksen aikana. - M lippu: 1 mikäli lisää osia on vielä tulossa ja 0 mikäli osa on paketin viimeinen. - Identification: 32 bitin kenttä, jonka avulla vastaanottava puolisko kykenee kasaamaan paketin osat takaisin alkuperäiseen muotoon. 2.1.1.4 Authentication header ja Encapsulating Security Payload header Nämä kaksi headeriä ovat osa IPsec:iä ja toimivat täysin samalla tavalla niin IPv6:ssa kuin IPv4:ssa. Authentication headerin tehtävä on taata IP-paketin yhteydetön datan eheys ja sen alkuperäisyyden tunnistus. Rakenteeltaan Authentication header on seuraavan lainen: - Next Header: 8-bittinen arvo 51. - Payload Len: Authentication headerin pituus 4 oktetin yksiköissä miinus 2. IPv6:n tapauksessa headerin pituus tulee olla 8 oktetin moninkerta. - Reserved: 16 bittiä jotka ovat lähetyksen ajan nollia. - Security Parameters Index: Satunnainen luku mitä käytetään lähetyksen kohteen kanssa tunnistautumiseen. - Sequence Number: 32 bittiä jatkuvasti kasvava arvo. - Integrity Check Value: Vaihtelee useamman 32 bitin välillä. Käytetään paketin eheyden tarkistukseen.

Encapsulating Security Payload:n (tästä eteenpäin ESP) tehtävä on taata IP-pakettien luotettavuus ja alkuperäisyys. Se tukee kryptaus- ja tunnistautumis-pohjaisia konfiguraatioita. Authentication Headerista poiketen ESP kattaa koko IP-paketin vain tunneloidussa tilassa, jolloin koko IP-paketti on tiivistetty. Kuljetustilassa ESP siis ei kata koko pakettia. ESP:n rakenne on puolestaan seuraavanlainen: - Security Parameters Index: Satunnainen luku mitä käytetään lähetyksen kohteen kanssa tunnistautumiseen. - Sequence Number: Satunnainen luku mitä käytetään lähetyksen kohteen kanssa tunnistautumiseen. - Padding: 0-255 oktettia pitkä täyte, joka sovittaa kryptauksen vastaamaan salausjärjestelmän lohkon kokoa. - Pad Length: 8 bittiä, jotka kertoo käytetyn täytteen koon. - Next Header: 8 bittinen arvo 50. Integrity Check Value: Vaihtelee useamman 32 bitin välillä. Käytetään paketin eheyden tarkistukseen. 2.1.1.5 Mobility Header Mobility headearia käytetään tukemaan IPv6:sta mobiililaitteissa. Jotta data menee eheänä perille, tulee otsikon olla 8-bitin monikerran pituinen. Mobility Header koostuu seuraavanlaisista osista: - Next Header: 8-bitin pituinen arvo 59. - Lenght: Otsikon koko 8-bitin yksiköissä. Lukee pois ensimmäiset 8 bittiä. - Type: 8-bitin kokoinen arvo, joka kertoo minkälainen viesti on tulossa. - Reserved: Lähettäjä asettaa tämän nollaksi ja vastaanottaja ei noteeraa mitenkään. - Checksum: 16-bitin kokoinen tarkastussumma varmistamaan otsikon eheys. - Data: Hyötydata. 6 2.2 Network Address Translation 2.2.1 Yleisesti Network Address Translation eli NAT on monikäyttöinen tekniikka, joka alunperin kehitettiin säästämään julkista IPv4 osoiteavaruutta siihen asti, että IPv6 saataisiin implementoitua maailmanlaajuisesti. NAT sallii sisäverkon laitteiden käyttää yksityistä IPv4 oisoiteavaruutta, jotka NAT kääntää julkisiin IP-osoitteisiin joita taas voidaan reitittää globaalisti. Tämä lisää myös hiukan turvallisuutta, sillä sisäverkoin osoitteistus on piilossa ulkomaailman suunnasta. (CCNA Routing and Switching: Routing and Switching Essentials, 2014.)

7 NAT reitittimelle voidaan konfiguroida yksi tai useampi julkinen IP-osoite, joita kutsutaan NAT pooliksi. Poolista voidaan kääntää osoitteita usealla eri tavalla joko tietylle laitteelle tai usealle eri laitteelle eri tavalla, joko jakaen tarvittaessa osoitteita dynaamisesti tai kääntämällä aina tietty yksityinen IP-osoite tiettyyn julkiseen IPosoitteiseen. (CCNA Routing and Switching: Routing and Switching Essentials, 2014.) Yleisesti NAT toimii verkon rajareitittimellä, border routerilla. Kun sisäverkon laite haluaa kommunikoida ulkoverkkoon, sen lähettämät paketit kulkevat border routerille ja kyseinen reititin suorittaa NAT prosessin, jossa yksityinen osoite käännetään julkiseksi. Reititin pitää yllä taulua NAT käännöksistä hyväksikäyttäen neljää erityyppistä osoitetta. Taulukko 1 esittelee erityyppiset NAT-osoitteet. (CCNA Routing and Switching: Routing and Switching Essentials, 2014.) Taulukko 1. NAT osoitteet (CCNA Routing and Switching: Routing and Switching Essentials, 2014). Osoite Kuvaus Esimerkki Inside Local Inside Global Outside Local Outside Global Lähdeosoite sisäverkosta katsottuna. Lähdeosoite ulkoverkosta katsottuna. Kohdeosoite sisäverkosta katsottuna. Saattaa myös olla eri kuin globaalisti reititettävä osoite. Kohdeosoite ulkoverkosta katsottuna. 192.168.0.10 200.200.200.10 200.100.10.25 200.100.10.25 Kuvio 1 esittää NAT osoitteet edellisen taulukon 1 osoitteistuksia käyttäen. Lähiverkko on kuviossa vasemmalla käyttäen yksityistä IPv4 osoiteavaruutta ja lähiverkon reititin suorittaa NAT prosessin, muuttaen lähdeosoitteen reititettäväksi, julkiseksi osoitteeksi.

8 Kuvio 1. NAT osoitteet (CCNA Routing and Switching: Routing and Switching Essentials, 2014). 2.2.2 Staattinen NAT Staattinen NAT kääntää osoitteet yksi yhteen periaatteella. NAT prosessin suorittava verkkolaite on konfiguroitu kääntämään aina tietty yksityinen osoite tiettyyn julkiseen osoitteeseen. Staattinen NAT voi olla käytössä esimerkiksi Web-palvelimelle käännettävässä liikenteessä. Staattinen NAT luonnollisesti vaatii, että käytettävissä on riittävä määrä julkisia osoitteita kattamaan tarvittavat istunnot. (CCNA Routing and Switching: Routing and Switching Essentials, 2014.) 2.2.3 Dynaaminen NAT Dynaaminen NAT käyttää määrättyä julkisen osoiteavaruuden osaa, josta julkisia osoitteita jaetaan käyttäjille first come, first served periaatteella. Tämä tarkoittaa sitä, että ensimmäinen julkista osoitetta tarvitseva yksityinen osoite käännetään konfiguroidun julkisen osoiteavaruuden ensimmäiseen vapaaseen osoitteeseen, toinen toiseen ja niin edelleen. Dynaaminen NAT vaatii myös tarpeeksi julkisia osoitteita kattamaan kaikki yhtäaikaiset käyttäjäistunnot. (CCNA Routing and Switching: Routing and Switching Essentials, 2014.) 2.2.4 PAT Port Address Translation tai myös NAT overload nimellä kulkeva NAT tekniikka kääntää useita yksityisiä IP-osoitteita yhdeksi julkiseksi IP-osoitteeksi. Tämä toteutetaan siten, että reititin seuraa NAT käännösten IP-osoitteiden lisäksi myös TCP tai UDP porttinumeroa, käytettävästä siirtokerroksen protokollasta riippuen.

9 Kun NAT reititin siis saa paketin, se käyttää lähdeporttia uniikkina tunnisteena NAT käännökselle. PAT myös huolehtii siitä, että jokainen yhteys käyttää eri porttinumeroa siinäkin tapauksessa, että sisäverkon kaksi eri käyttäjää generoisivat esimerkiksi http yhteydelleen saman lähdeportin. Tässä tapauksessa PAT kääntää myös lähdeportin seuraavaksi vapaaksi portiksi. (CCNA Routing and Switching: Routing and Switching Essentials, 2014.) 2.2.5 NAT64 IPv4 osoiteavaruuden ollessa riittämätön siirrytään IPv6 osoitteistukseen. Huomioitavaa on, että kuitenkin olemassa oleva infra suurilta osin edelleen käyttää IPv4 osoitteistusta ja tämä luo yhteensopivuusongelmia haluttaessa saada IPv4 hostit ja IPv6 hostit juttelemaan keskenään. Tämä voidaan toteuttaa luomalla täysin dual-stack ympäristö, eli kaikilla latteilla on sekä IPv4 osoite että IPv6 osoite. Tämä kuitenkin vaatii laitteiston, joka tukee molempia ja suuren määrän konfigurointia. (NAT64 Technology, 2012.) Toinen vaihtoehto on tunneloida eli käytännössä enkapsuloida yhteen sopimattoman protokollan osoite yhteensopivan protokollan osoitteen sisään. Tämä ei välttämättä kuitenkaan mahdollista uuden arkkitehtuurin käyttäjiä kommunikoimaan vanhan infrastruktuurin kanssa. (Bagnulo, M., Matthews, P. & van Beijnum, I. 2011; NAT64 Technology, 2012.) Kolmantena vaihtoehtona on osoitteenkäännös IPv6 osoitteesta IPv4 osoitteeksi tai toisinpäin. Tämän tekee NAT64 yhteensopiva reititin ja mekaniikka on vastaavanlainen edellä esitettyihin IPv4 käännöksiin. Osoitteenkäännös mahdollistaa asteittaisen siirtymisen IPv6 verkkoihin. (Bagnulo, M., Matthews, P. & van Beijnum, I. 2011; NAT64 Technology, 2012.)

10 2.3 Protocol Independent Multicast 2.3.1 Yleisesti Protocol Independent Multicast on unicast reititykseen pohjautuva multicast lähetystä kuljettava protokollaperhe. PIM tarvitsee pohjalleen toimivan unicast-reitityksen, kuten EIGRP, OSPF tai staattiset reitit. Unicast-reittitaulua PIM käyttää luomaan jakelupuut, joiden yli multicast-lähetys välitetään. Unicast-reititystä PIM käyttää myös tehdessään Reverse Path Forwarding tarkastuksen. PIM ei myöskään lähetä tai vastaanota reittipäivityksiä. (IP Multicast Technology Overview.) 2.3.2 Reverse Path Forwarding Reverse Path Forwarding eli RPF on yksi multicast-liikenteen edelleenlähetyksen avaintekijöistä. Käytännössä RPF huolehtii siitä, että multicast-lähetys saapuu kohteeseen aina parasta saatavaa reittiä myöten sillä RPF tarkistus tehdään unicast-reittitauluun nojaten. (IP Multicast Technology Overview). Kun reititin vastaanottaa multicast-paketin, reititin suorittaan RPF-tarkastuksen. RPF tarkastuksessa reititin vertaa multicast-paketin lähdeosoitetta unicast-reittitauluunsa ja tarkistaa lähettäisikö reititin itse liikennettä lähdeosoitteeseen käyttäen samaa rajapintaa kuin mihin multicast-paketti saapui. Jos rajapinta on sama, paketti välitetään eteenpäin ja jos rajapinta on eri, niin paketti tiputetaan. Kuviossa 2 esitetään onnistuva RPF tarkastus.(ip Multicast Technology Overview.)

11 Kuvio 2. RPF Check (IP Multicast Technology Overview). 2.3.3 Dense Mode PIM Dense Mode eli PIM-DM on multicast-lähetystapa, jossa liikenne työnnetään verkkoon välittämättä siitä onko liikenteelle vastaanottajia. PIM-DM rakentaa jokaiselle multicast lähteelle oman jakelupuunsa floodaamalla liikennettä verkkoon ja reitittimet matkan varrella ovat vastuussa ylimääräisten datavoiden karsimisesta. Dense Mode puut koostuvat aina lähde-, ja ryhmä merkinnöistä eli (S, G) merkinnällä kuten esimerkiksi (157.30.85.11, 239.1.1.1). (IP Multicast Technology Overview.) 2.3.4 Sparse Mode PIM Sparse Mode lähestyy multicast lähetystä eri näkökulmasta. Liikennettä ei vain pusketa linjoille, ja anneta alavirrassa sijaitsevien reitittimien huolehtia puun rakentumisesta, vaan multicast lähetys täytyy erikseen tilata lähteeltä. PIM-SM käyttää jaettua puuta mallina, joten multicast lähteet käyttävät Rendezvous Pointia, joka toimii lähetyksen juurena. Lähteet rekisteröityvät RP:lle ja reunareitittimet oppivat lähteet saadessaan multicast liikennettä kyseisestä lähteestä RP:n kautta. Reverse Path testi toimii tässä tapauksessa niin, että metriikkaa RP:lle verrataan lähteen suoraan metriikka-arvoon. Jos lähteen metriikka-arvo on parempi, PIM Join viesti lähetetään lähteen suuntaan ja jos RP:n metriikka-arvo on parempi, Join viesti lähetetään RP:n suuntaan. (IP Multicast Technology Overview.)

12 2.3.5 Bidirectional PIM Kaksisuuntainen PIM eli Bidirectional PIM (Bidir-PIM) on parannus PIM protokollaan, joka kehitettiin parantamaan monelta-monelle kommunikaation tehokkuutta. PIM- SM:n luomat jakelupuut ovat yksisuuntaisia ja lähteen täytyy rekisteröityä RP:lle, eli täytyy luoda lähdepuu lähteestä RP:lle. Bidir-PIM:ssä liikenne reititetään kaksisuuntaista jaettua puuta pitkin RP:n toimiessa juurena ja toimien ikään kuin spanning treen roottina. Bidir-PIM skaalautuu hyvin tämän vuoksi, mutta source specific tila ei ole mahdollinen. (IP Multicast Technology Overview.) 2.3.6 Source Specific Multicast Source Specific Multicast eli SSM käyttää PIM-SM ja IGMPv3 yhdistelmää. Näiden avulla asiakkaan on mahdollista saada multicast-liikenne suoraan lähteeltä. PIM SSM käyttää PIM-SM toiminnallisuutta jakelupuun eli Shortest Path Treen muodostamiseen ilman RP:n apua. Jokainen lähdettä tilaava asiakas saa oman kanavan, sillä PIM SSM ei käytä multicast-ryhmän osoitetta vaan lähteelle tulee aina kanavaosoite. (Understanding PIM Source-Specific Mode.) 2.4 IGMPv3 IGMPv3 eli Internet Group Management protocol version 3 on protokolla jolla luodaan ja hallinnoidaan multicast-ryhmiä. IGMP toimii paikallisessa lähiverkossa multicastiä välittävän reitittimen ja loppuasiakkaan välissä. Kuviossa 3 on esitetty multicastissä käytetyt protokollat ja korreloitu ne verkon arkkitehtuuriin. (RFC3376) Kuvio 3: Verkon arkkitehtuurin ja protokollien korrelointi. (IGMP Basic Architecture)

13 2.4.1 Membership Query Messagen rakenne IGMPv3:ssa käytettävä formaatti Membership Query Messagelle on esitetty kuviossa 4. Kuvio 4: IGMPv3 viestin formaatti. (RFC3376) 2.4.1.1 Tyyppi (Type) Versio 3 käyttää kahta eri viesti tyyppiä. 0x11 0x22 Membership Query Version 3 Membership Report Versio 3 on myös takaperin yhteensopiva vanhempien versioiden kanssa ja tukee seuraavia tyyppejä. 0x12 0x16 0x17 Version 1 Membership Report Version 2 Membership Report Version 2 Leave Group (RFC3376) 2.4.1.2 Max Resp Code Kentällä määritellään suurin mahdollinen aika minkä sisään on vastattava raportteihin. Aikaa käsitellään 1/10 osa sekuntteina. Käytetään vain jos viestin tyyppi on 0x11. Muissa viesteissä kentän arvo on 0 ja sitä ei oteta huomioon. (RFC3376)

14 2.4.1.3 Checksum Viestin tarkastussumma. Varmistetaan viestin eheys. Tarkastus summaa laskettaessa kentän arvo on nolla. Tarkastussumma käsitellään aina kun viesti vastaanotetaan. (RFC3376) 2.4.1.4 Group Address Kentän arvo on yleississä kyselyissä nolla. Arvo asetetaan jos lähetään ryhmäkohtainen tai ryhmä- ja osoitekohtainen kysely. (RFC3376) 2.4.1.5 Resv Kenttä ei ole vielä käytössä ja se on varaus mahdollista tulevaisuuden käyttöä varten. (RFC3376) 2.4.1.6 S-flag. S-lippu. Lipun avulla voidaan ilmoittaa reitittimelle, että jättää tulevaisuuden aikapäivitykset huomiotta. (RFC3376) 2.4.1.7 Querier s Query Interval Code Koodilla määritelläään kyselijän kyselyiden väli sekunteina. Mikäli arvo on alle 128, niin arvoa käytetään suoraan. (RFC3376) 2.4.1.8 Number of Sources Lähteiden lukumäärä. Yleisissä ryhmäkohtaisissa kyselyissä arvo on 0. (RFC3376) 2.4.1.9 Source Address Lähdeosoite. Osoitteita on yhtä monta mitä Number of Source kentän arvossa määritellään. (RFC3376)

15 2.4.2 Membership Report Messagen Rakenne Kuviossa 5 on esitetty Membership Report Messagen rakenne. Kuvio 5. Report Messagen rakenne. (RFC3376) 2.4.2.1 Number of Group reports Ilmaisee viestissä olevien Group Recordien määrän. (RFC3376) 2.4.3 Group Recodien rakenne Kuviossa 6 on esitetty Group Recordsien rakenne.

16 Kuvio 6: Group Recordien rakenne. (RFC3376) 2.4.3.1 Aux Data Len Nolla jos kenttä on tyhjä, muuten kenttä sisältää datan kuinka monta 32-bittisiä sanoja kenttä sisältää. (RFC3376) 2.5 MLD Multicast Listener Discovery on IPv6 verkoissa käytetty protokolla joka on verrattavissa IGMP:hen jota käytetään IPv4 multicastissä. (RFC3810) 2.5.1 Multicast Listener Query Messagen rakenne Kuviossa 7 on esitetty MLQM viestissä käytettävä rakenne. Kenttien sisältö on hyvin pitkälle sama mitä IGMP:ssä IPv4. (RFC3810)

Kuvio 7: MLQM -viestin rakenne 17

18 2.5.2 Multicast Listener Report Message rakenne Kuviossa 8 on esitetty Multicast Listener Report Message viestin rakenne. Kuvio 8.: MLRM viestin rakenne 2.5.3 Multicast Address Record rakenne Kuviossa 9 on esitetty MAR:n rakenne. MAR on osa MLRM viestiä.

Kuvio 9: MAR -rakenne. 19

20 3 Suunnitelmat 3.1 Yhteydellisyys työryhmien välille Harjoituksessa toteutetaan työryhmän WG2 sekä Juniper Core R5 reitittimessä kiinni olevan asiakaskoneen välille IPv4 sekä IPv6 yhteys. Yhteys suunnitellaan annetuilla osoitealueilla ja todennetaan traceroute ja ping komennoilla, sekä reittitaulun todennuksella. Kuviossa 10 esitetään harjoituksen fyysinen topologia. IPTV Serverinä toimii sesxci.labrabet.jamk alustalla pyörivä virtuaalikone IPTV Server2. IPTV Server on kiinni WG2 työryhmän SW1 kytkimen portissa Ge0/6. Asiakaslaite kytkettiin suoraan kiinni Juniper Core R5 reitittimeen. Kuvio 10. Harjoituksen fyysinen topologia 3.1.1 IPv4 IPv4 yhteydellisyys luotiin käyttämällä jo Cisco Core harjoituksessa käytössä ollutta operaattorin 130.0.0.0/16 osoiteblokkia ja jakamalla asiakaslaitteelle WG5 työtyh-

21 män julkisen IP blokin 157.30.85.128/27 osoitteistuksen, ja IPTV Serverille WG2 työryhmän julkisen IP blokin 157.30.85.32/27 osoitteistuksen. Työryhmästä ja Juniper Core R5 reitittimeltä reititys ulospäin tehtiin staattisella nollareitillä. Corelta takaisin tehtiin myös staattiset reitit käyttäen relevantteja työryhmän WG2 ja Juniper Core R5 julkisia, ryhmän omia IPv4 blokeja. Corelle tehdyt staattiset reitit mainostetaan OSPF reititysprotokollalle E1-reitteinä eli metric-type 1 reitteinä. WG2-R1 ja Juniper Core R2 välille tehtiin laboratorioharjoituksen dokumentaation mukainen 802.1Q verkko, jolle myös kuitenkin määritettiin operaattorin IPosoiteavaruus. Työryhmän sisäverkon osoitteet niin IPTV Serverille, kuin yhteystodennuksissa käytetylle WG2-SW2-WS virtuaalikoneelle käännettiin julkisiksi osoitteiksi 1-to-1 NATin avulla. Juniper Core R5:n takana ollut asiakaslaite sai suoraan julkiset IPv4 osoitteet. NAT työryhmälle WG2 tehtiin seuraavan taulukon 2 mukaisesti. Taulukko 2. Käytetyt 1-to-1 NAT -osoitteet Laite Yksityinen Osoite Julkinen Osoite IPTV Server 192.168.60.11 157.30.85.33 WG2-SW2-WS 192.168.40.11 157.30.85.34 Kuviossa 11 esitetään harjoituksen looginen IPv4 topologia. Center Switchille osoittava verkko 130.0.20.0/24 on sama verkko kuin Cisco Coressa määritetty Center Switchille osoittava verkko ja tätä kautta Cisco Core ja Juniper Core voidaan yhdistää.

22 Kuvio 11. IPv4 osoitteistus 3.1.2 IPv6 Myös IPv6 toteutuksessa käytetään jo Cisco Coressa ollutta operaattorin IPv6 blokia 2001:d074::/32. Toteutuksen selkeyden ja yksinkertaisuuden vuoksi lohkomme linkkiväleille helposti tunnistettavat osoiteavaruudet käyttäen suurta maskia. Juniper Coressa on mahdollista käyttää myös /127 maskia tehden suoraan point-to-point yhteyden sillä tällaisessa tapauksessa Juniperin J sarjalaiset reitittimet osaavat jättää subnet-router anycast osoitteen pois käytöstä. Työryhmän WG2 IPv6 osoitteistus käyttää WG2 työryhmälle osoitettuja globaaleja IPv6 osoiteblokkeja ja Juniper Core R5 ja sen takainen asiakaslaite käyttävät hyväksi työryhmälle WG5 osoitettuja globaaleja IPv6 blokeja. Kuten IPv4 toteutuksessa, myös IPv6 toteutuksessa rungon reititysprotokollana toimii OSPF ja tarkemmin OSPFv3, jossa on IPv6 tuki. Reititys asiakasverkosta ja työryhmästä ulos tapahtuu staattisella nollareitillä ja työryhmien käytössä oleviin osoitteisiin tehdään staattiset reitit rungon reunalaitteilta. Kyseiset reitit mainostetaan edelleen E1-reitteinä OSPFv3-reititysprotokollaan.

23 IPTV Serverille ja asiakaslaitteelle määritetään kiinteät IPv6 osoitteistukset, mutta todennuksessa käytettävä työryhmän WG2 virtuaalikone muodostaa osoitteensa SLAA- Cin avulla. Kuviossa 12 on esitetty harjoituksessa toteutettava looginen IPv6 topologia. Kuvio 12. IPv6 osoitteistus Käytetty IP-osoitesuunnitelma löytyy liitteestä 9. Se pitää sisällään käytetyt WG2 ja WG5 julkiset IPv4 blokit, sekä globaalit IPv6 blokit. 3.2 PIM SSM IPv4 & IPv6 Valitsimme multicastistä source specific version. Labran päämääränä on siirtää multicastillä video kuvaa WG2-työryhmän IPTV-serveriltä Juniper R5 reitittimeen kiinnitettyyn työasemaan. IPv4 multicast osoitteista käytetään osoitetta 239.0.0.1 ja IPv6- osoitteista FF08::1. Lähiverkon laitteille asetetaan käyttöön IGMPv3 ja MLD. Runkoverkon laitteille asetetaan käyttöön PIM kaikissa rajapinnoista ja multicast lähetysten osoitteet kartoitetaan.

24 4 Toteutus 4.1 Yhteydellisyys Kytkennät olivat valmiiksi tehtyjä poislukien asiakaskoneen liittäminen Juniper Core R5 reitittimeen. Käytimme aluksi asiakaslaitteena Windows käyttöjärjestelmällä varustettua kannettavaa Spidernetin tiloissa, mutta myöhemmin vaihdoimmen Lubuntu pöytäkoneeseen. Laite liitettiin Juniper Core R5 porttiin ge-1/0/6. 4.1.1 IPv4 Laitteiden osoitteiden ja reitityksen konfiguroimisen jälkeen todensimme yhteydellisyyden käyttämällä WG2-SW2-WS virtuaalikonetta ja Juniper Core R5 takana ollutta asiakaslaitetta. Käytimme toista työryhmän virtuaalikonetta IPTV Serverin sijaan koska IPTV palvelimelle ei ollut asennettu traceroutea ja tracepath sekä traceroute6 huomattiin vasta jälkeenpäin. Kuviossa 13 esitetään Ping ja tracert komennot WG2-SW2-WS laitteelta asiakaslaitteelle. Kuvio 13. Ping ja Traceroute komennot

25 Kuviosta nähdään, että polku kulkee reittiä WG2-R1 Core R2 Core R4 Core R5 Asiakaslaite, kun osoitteistusta verrataan loogiseen topologiaan. Kuviossa 14 esitetään reittitaulu reitittimeltä Juniper Core R3. Kuviosta nähdään, että käytössä olleet julkiset IPv4 blokit on jaettuina OSPF protokollaan. Kuvio 14. IPv4 reitit Juniper Core R3 reittitaulusta Lisäksi kuviossa 15 todennetaan vielä Core R3 reitittimen OSPF tietokannasta, että reitit todella ovat E1 reittejä. Tämä havaitaan Type External, Type 1 korostetuista riveistä. Kuvio 15. OSPF database external reitit

26 Kuviossa 16 todennetaan NAT:n toimivuus WG2-R1 reitittimeltä edellä esitetyn taulukon x mukaisesti. Kuvio todentaa käytetyt inside global eli taulukon julkiset osoitteet ja niihin linkitetyt inside local, eli taulukon yksityiset osoitteet. Kuvio 16. Show ip nat translations WG2-R1 Kuvioissa 17 esitetään rajapinta-asetuksia käytetyiltä virtuaalikoneilta, IPTV Server2 ja WG2-SW2-WS. Kuviossa ensin IPTV Serverin rajapinta-asetukset ja perässä WG2- SW2-WS rajapinta-asetukset. Kyseisiä osoitteita käytetään Ping ja Tracert todennuksissa. Kuvio 17. Virtuaalikoneiden rajapinta-asetukset

27 4.1.2 IPv6 IPv6 toteutus tehtiin samassa järjestyksessä kuin IPv4. Ensin rajapinnoille asetettiin osoitteet, tehtiin rungon OSPF ja lopuksi asiakas- ja työryhmäverkoille tehtiin ulos staattinen nollareitti ja sisäänpäin rungolta tehtiin staattiset reitit työryhmien WG2 ja WG5 osoitteita käyttäen. Kuviossa 18 esitetään Ping ja tracert komennot WG2-SW2-WS laitteelta asiakaslaitteelle käyttäen IPv6:sta. Jälleen peilaten loogiseen topologiaan IPv6 osalta, voidaan todeta, että reitti kulkee polkua WG2-R1 Core R2 Core R4 Core R5 asiakaslaite. Kuvio 18. Ping ja Traceroute komennot Kuviossa 19 esitetään show route IPv6 osalta Core R3 reitittimeltä. WG2 ja WG5 työryhmien globaalit IPv6 blokit on jaettu E1-reitteinä OSPFv3:n.

28 Kuvio 19. IPv6 reitit Juniper Core R3 reittitaulusta Myös IPv6 todennuksessa esitetään OSPFv3 tietokannasta kuvio reittitietojen todentamiseksi. Reitit on jaettu External reitteinä ja Type on 1. Kuviossa 20 tietokanta external reittien osalta.

Kuvio 20. OSPF3 database external reitit 29

30 4.2 Multicast 4.2.1 IPv4 Kuviossa 21 on esitetty WG2-R1 laitteen IPv4 multicast reittitaulu ja kuviossa 22 multicast välitysmäärät. Kuvio 21: WG2-R1 IPv4 Multicast reittitaulu. Kuvio 22: WG2-R1 IPv4 Multicast välitysmäärät. Kuviossa 23 on esitetty Juniper Core R4 laitteen multicast välitysmäärät eri rajapinnoissa. Näistä voidaan huomata liikenteen tulevan Juniper Core R2 laitteelta ja se välitetään Juniper Core R5 laitteelle.

31 Kuvio 23: Juniper Core R4 IPv4 multicast välitysmäärät. Kuviossa 24 on todennettu IGMP paketti uuden lähteen avaamisesta. IGMP Allow new sources 239.0.0.1. Source Address 157.30.85.33. Tässä iptv lähete avataan.

32 Kuvio 24: IGMP Allow new sources 239.0.0.1. Source Address 157.30.85.33. Kuviossa 25 on todennettu IGMP:n toiminta lähetteen sulkemisesta. IGMP Block old sources 239.0.0.1. Source Address 157.30.85.33.

33 Kuvio 25: IGMP Block Old Sources 239.0.0.1. Source Address 157.30.85.33. Kuviossa 26 on esitetty kuva VLC mediasoittimesta lähteen auetessa.

34 Kuvio 26: Multicast lähete aukaistaan. 4.2.2 IPv6 Kuviossa 27 on esitetty WG2-R1 laitteen IPv6 multicast reittitaulu ja kuviossa 28 multicast välitysmäärät.

35 Kuvio 27: WG2-R1 IPv6 Multicast reittitaulu. Kuvio 28: WG2-R1 IPv6 Multicast välitysmäärät. Kuviossa 29 on esitetty Juniper Core R4 laitteen IPv6 multicast välitysmäärät eri rajapinnoissa. Näistä voidaan huomata liikenteen tulevan Juniper Core R2 laitteelta ja se välitetään Juniper Core R5 laitteelle.

36 Kuvio 29: Juniper Core R4 IPv6 multicast välitysmäärät. Kuviossa 30 on todennettu ICMPv6 paketti uuden lähteen avaamisesta. ICMPv6 Allow new sources FF08::1. Source Address 2001:1337:5:2003::10. Tässä iptv lähete avataan.

37 Kuvio 30: ICMPv6 Allow new sources FF08::1. S. Addr 2001:1337:5:2003::10. Kuviossa 31 on todennettu ICMPv6 toiminta lähetteen sulkemisesta. ICMPv6 Block Old Sources FF08::1. Source Address 2001:1337:5:2003::10.

38 Kuvio 31: ICMPv6 Block Old Sources FF08::1. S. Addr 2001:1337:5:2003::10. Kuviossa 32 on esitetty kuva VLC mediasoittimesta vaatimasta komennosta lähteen avaamiseksi.

39 Kuvio 32: Multicast lähete aukaistaan. Kuviossa 33 on todennettu UDP-pakettien vastaanotto ja VLC mediasoittimen ilmoitus lähteen aukaisusta.

40 Kuvio 33. UDP pakettien vastaanotto ja VLC-source Kuviossa 34 todennetaan Juniper Core R4 laitteelta IPv4 ja IPv6 multicast lähteet, joihin PIM on liittynyt.

41 Kuvio 34. Show PIM join Core R4 5 Pohdinta Kun Juniperin laitteistoa ja komentoja oppii käyttämään, reitityksen ja multicastin konfigurointi on melko suoraviivaista. Ohjeita etsiessä internetistä saa tosin olla tarkkana laitemallien kanssa, koska Juniperilla tuntuu olevan melko paljonkin eroja eri laitemallien ja käyttöjärjestelmäversioiden välillä.

42 IPv6 multicastin todentamisessa tosin ongelmaksi koitui Windows-käyttöjärjestelmä. IPv4:n kanssa ei ilmennyt ongelmia, mutta millään VLC:n komennolla ei saatu IPv6:slla lähetettyä multicast-lähetystä näkymään. Lähetys lähti kuitenkin toimimaan vaihtamalla Linux-käyttöjärjestelmään. Linuxilla puolestaan ongelmaksi koitui dual-stack, eli molempien IP-versioiden käyttö yhtä aikaa. IPv4 lakkasi toimimasta kun IPv6:n laittoi päälle. Ilmeisesti Ubuntulla on tapana käyttää ensisijaisesti IPv6-osoitteita, mikäli ne on sille annettu.

43 Lähteet Bagnulo, M., Matthews, P. & van Beijnum, I. 2011. Stateful NAT64: Network Address and Protocol Translation from IPv6 Clients to IPv4 Servers. RFC 6146. https://tools.ietf.org/html/rfc6146. Viitattu 27.1.2016. CCNA Routing and Switching: Routing and Switching Essentials. 2014. Chapter 11: Network Address Translation for IPv4. CCNA Networking Academy course material. Viitattu 21.1.2016. Cisco. Elokuu 2006. IPv6 Extension Headers Review and Considerations. Viitattu 23.1.2016. http://www.cisco.com/en/us/technologies/tk648/tk872/technologies_white_paper 0900aecd8054d37d.html IP Multicast Technology Overview. 2001. IP Multicast White paper. Viitattu 7.3.2016. http://www.cisco.com/c/en/us/td/docs/ios/solutions_docs/ip_multicast/white_pap ers/mcst_ovr.htmlwp1009068 NAT64 Technology. 2012. NAT64 Technology: Connecting IPv6 and IPv4 Network. http://www.cisco.com/c/en/us/products/collateral/ios-nx-os-software/enterpriseipv6-solution/white_paper_c11-676278.html. Viitattu 27.1.2016. Ojanen, H. & Turpeinen, J. & Rahikainen, R. 2015. Active Directory Harjoitustyö. Jyväskylän ammattikorkeakoulu, IT-ala. Viitattu 15.1.2016. Technet. n/d.tcp/ip v4 and v6. Viitattu 23.1.2016. https://technet.microsoft.com/enus/network/bb530961.aspx Understanding PIM Source-Specific Mode. 2013. Juniper Networks TechLibrary. Viitattu 8.3.2015. http://www.juniper.net/documentation/en_us/junos13.2/topics/topic-map/mcastssm.html IGMP Basic Architecture. Viitattu 09.03.2016 https://upload.wikimedia.org/wikipedia/commons/c/c9/igmp_basic_architecture.pn g RFC3376. Viitattu 09.03.2016. https://tools.ietf.org/html/rfc3376

44 Liitteet Liite 1. Core-R2 konfiguraatio root@core-r2> show configuration Last commit: 2016-03-17 11:50:26 UTC by root version 12.1X44-D40.2; system { root-authentication { encrypted-password "$1$v0YaCGuz$7Dy9/WWQ/DMxxKqtUNQ2W1"; SECRET- DATA syslog { user * { any emergency; file messages { any any; authorization info; file interactive-commands { interactive-commands any; license { autoupdate { url https://ae1.juniper.net/junos/key_retrieval; interfaces { ge-1/0/0 { unit 0 { family inet { address 130.0.110.1/24; family inet6 { address 2001:d074:10::1/126; ge-1/0/1 { unit 0; ge-1/0/2 { unit 0 { family inet { address 130.0.100.1/24; family inet6 { address 2001:d074:9::1/126; ge-1/0/3 { unit 0; ge-1/0/4 { unit 0; ge-1/0/5 { unit 0; ge-1/0/6 { unit 0; ge-1/0/7 {

45 vlan-tagging; unit 0 { vlan-id 902; family inet { address 130.0.130.1/24; family inet6 { address 2001:d074:11::1/126; lo0 { unit 0; routing-options { rib inet6.0 { static { route 2001:1337:5:2001::/64 next-hop 2001:d074:11::2; route 2001:1337:5:2002::/64 next-hop 2001:d074:11::2; route 2001:1337:5:2003::/64 next-hop 2001:d074:11::2; static { route 157.30.85.32/27 next-hop 130.0.130.2; router-id 2.2.2.2; multicast { ssm-map ssm-map-ipv4 { policy ssm-policy; source 157.30.85.33; ssm-map ssm-map-ipv6 { policy ssm-policy; source 2001:1337:5:2003::10; protocols { igmp { interface ge-1/0/7.0 { version 3; ssm-map ssm-map-ipv4; mld { interface all { version 2; ssm-map ssm-map-ipv6; ospf { export exportstatic1; area 0.0.0.0 { interface ge-1/0/0.0; interface ge-1/0/7.0; interface ge-1/0/2.0; ospf3 { export exportstatic1; area 0.0.0.0 { interface ge-1/0/0.0; interface ge-1/0/2.0; interface ge-1/0/7.0; pim { interface all { mode sparse;

46 version 2; policy-options { policy-statement exportstatic1 { term exportstatic1 { from protocol static; then { external { type 1; accept; policy-statement ssm-policy { term A { from { route-filter 239.0.0.1/32 exact; then accept; term B { from { route-filter ff08::1/128 exact; then accept; security { policies { default-policy { permit-all; zones { security-zone All { host-inbound-traffic { system-services { all; protocols { all; interfaces { all;

47 Liite 2. Core-R3 konfiguraatio root@core-r3> show configuration Last commit: 2016-03-17 12:11:22 UTC by root version 12.1X44-D40.2; system { root-authentication { encrypted-password "$1$3dJc0SJX$OAj2lfyO0pwkp5L7z6otm1"; SECRET- DATA services { ssh; web-management { http { interface ge-0/0/0.0; syslog { user * { any emergency; file messages { any any; authorization info; file interactive-commands { interactive-commands any; license { autoupdate { url https://ae1.juniper.net/junos/key_retrieval; interfaces { ge-0/0/0 { unit 0; ge-1/0/0 { description "To R4"; unit 0 { family inet { address 130.0.90.1/24; family inet6 { address 2001:d074:8::1/126; ge-1/0/1 { description "To R2"; unit 0 { family inet { address 130.0.110.2/24; family inet6 { address 2001:d074:10::2/126; ge-1/0/2 { unit 0; ge-1/0/3 { unit 0; ge-1/0/4 {

48 unit 0; ge-1/0/5 { unit 0; ge-1/0/6 { unit 0; ge-1/0/7 { unit 0; lo0 { unit 0 { family inet { address 10.255.72.46/32; routing-options { router-id 3.3.3.3; multicast { ssm-map ssm-map-ipv4 { policy ssm-policy; source 157.30.85.33; ssm-map ssm-map-ipv6 { policy ssm-policy; source 2001:1337:5:2003::10; protocols { igmp { interface all { version 3; ssm-map ssm-map-ipv4; mld { interface all { version 2; static { group ff08::1; ssm-map ssm-map-ipv6; ospf { area 0.0.0.0 { interface ge-1/0/1.0; interface ge-1/0/0.0; interface fxp0.0 { disable; interface all; ospf3 { area 0.0.0.0 { interface ge-1/0/1.0; interface ge-1/0/0.0; pim { rp { local { address 10.255.72.46; group-ranges { 239.0.0.0/24;

49 interface all { mode sparse; version 2; policy-options { policy-statement ssm-policy { term A { from { route-filter 239.0.0.1/32 exact; then accept; term B { from { route-filter ff08::1/128 exact; then accept; security { policies { default-policy { permit-all; zones { security-zone All { host-inbound-traffic { system-services { all; protocols { all; interfaces { all;

50 Liite 3. Core-R4 konfiguraatio root@core-r4> show configuration Last commit: 2016-03-17 12:19:08 UTC by root version 12.1X44-D40.2; system { root-authentication { encrypted-password "$1$v0YaCGuz$7Dy9/WWQ/DMxxKqtUNQ2W1"; SECRET- DATA syslog { user * { any emergency; file messages { any any; authorization info; file interactive-commands { interactive-commands any; license { autoupdate { url https://ae1.juniper.net/junos/key_retrieval; interfaces { ge-1/0/0 { description to_r5; unit 0 { family inet { address 130.0.120.1/24; family inet6 { address 2001:d074:12::1/126; ge-1/0/1 { description to_r3; unit 0 { family inet { address 130.0.90.2/24; family inet6 { address 2001:d074:8::2/126; ge-1/0/2 { unit 0; ge-1/0/3 { description to_r2; unit 0 { family inet { address 130.0.100.2/24; family inet6 { address 2001:d074:9::2/126; ge-1/0/4 { unit 0; ge-1/0/5 {

51 unit 0; ge-1/0/6 { unit 0; ge-1/0/7 { unit 0; lo0 { unit 0; routing-options { rib inet6.0 { static { route 2001:1337:005:5001::/64 next-hop 2001:d074:12::2; route 2001:1337:005:5002::/64 next-hop 2001:d074:12::2; route 2001:1337:005:5003::/64 next-hop 2001:d074:12::2; static { route 157.30.85.128/27 next-hop 130.0.120.2; router-id 4.4.4.4; multicast { ssm-map ssm-map-ipv4 { policy ssm-policy; source 157.30.85.33; ssm-map ssm-map-ipv6 { policy ssm-policy; source 2001:1337:5:2003::10; protocols { mld { interface all { version 2; static { group ff08::1; ssm-map ssm-map-ipv6; ospf { export exportstatic1; area 0.0.0.0 { interface ge-1/0/3.0; interface ge-1/0/0.0; interface ge-1/0/1.0; interface fxp0.0; ospf3 { export exportstatic1; area 0.0.0.0 { interface ge-1/0/3.0; interface ge-1/0/0.0; interface ge-1/0/1.0; pim { interface all { mode sparse; version 2; interface fxp0.0 { disable;

52 policy-options { policy-statement exportstatic1 { term exportstatic1 { from protocol static; then { external { type 1; accept; policy-statement ssm-policy { term A { from { route-filter 239.0.0.1/32 exact; then accept; term B { from { route-filter ff08::1/128 exact; then accept; then reject; security { policies { default-policy { permit-all; zones { security-zone All { host-inbound-traffic { system-services { all; protocols { all; interfaces { all;

53 Liite 4. Core-R5 konfiguraatio root@core-r5> show configuration Last commit: 2016-03-17 12:17:51 UTC by root version 12.1X44-D40.2; system { root-authentication { encrypted-password "$1$v0YaCGuz$7Dy9/WWQ/DMxxKqtUNQ2W1"; SECRET- DATA syslog { user * { any emergency; file messages { any any; authorization info; file interactive-commands { interactive-commands any; license { autoupdate { url https://ae1.juniper.net/junos/key_retrieval; interfaces { ge-1/0/0 { unit 0; ge-1/0/1 { unit 0 { family inet { address 130.0.120.2/24; family inet6 { address 2001:d074:12::2/126; ge-1/0/2 { unit 0; ge-1/0/3 { unit 0; ge-1/0/4 { unit 0; ge-1/0/5 { unit 0; ge-1/0/6 { unit 0 { family inet { address 157.30.85.140/27; family inet6 { address 2001:1337:5:5003::1/64; ge-1/0/7 { unit 0; lo0 { unit 0;

54 routing-options { rib inet6.0 { static { route ::/0 next-hop 2001:d074:12::1; static { route 0.0.0.0/0 next-hop 130.0.120.1; multicast { ssm-map ssm-map-ipv4 { policy ssm-ipv4; source 157.30.85.33; ssm-map ssm-map-ipv6 { policy ssm-policy; source 2001:1337:5:2003::10; protocols { igmp { interface all { version 3; ssm-map ssm-map-ipv4; mld { interface all { version 2; static { group ff08::1; ssm-map ssm-map-ipv6; pim { interface all { mode sparse; version 2; policy-options { policy-statement ssm-ipv4 { term A { from { route-filter 239.0.0.1/32 exact; then accept; policy-statement ssm-policy { term B { from { route-filter ff08::1/128 exact; then accept; security { policies { default-policy { permit-all; zones {

55 security-zone All { host-inbound-traffic { system-services { all; protocols { all; interfaces { all;

56 Liite 5. WG2-R1 konfiguraatio WG2-R1sh run Building configuration... Current configuration : 3549 bytes version 12.4 service timestamps debug datetime msec service timestamps log datetime msec no service password-encryption hostname WG2-R1 boot-start-marker boot-end-marker logging message-counter syslog no aaa new-model memory-size iomem 5 dot11 syslog ip source-route ip cef ip dhcp excluded-address 192.168.40.1 192.168.40.10 ip dhcp excluded-address 192.168.50.1 192.168.50.10 ip dhcp excluded-address 192.168.60.1 192.168.60.10 ip dhcp pool VLAN10 network 192.168.40.0 255.255.255.0 default-router 192.168.40.1 ip dhcp pool VLAN20 network 192.168.50.0 255.255.255.0 default-router 192.168.50.1 ip dhcp pool VLAN30 network 192.168.60.0 255.255.255.0 default-router 192.168.60.1 no ip domain lookup ip multicast-routing ipv6 unicast-routing ipv6 cef ipv6 multicast-routing multilink bundle-name authenticated

voice-card 0 archive log config hidekeys interface GigabitEthernet0/0 no ip address duplex auto speed auto interface GigabitEthernet0/1 no ip address duplex auto speed auto interface GigabitEthernet0/1.10 encapsulation dot1q 10 ip address 192.168.40.1 255.255.255.0 ip pim sparse-mode ip nat inside ip virtual-reassembly ip igmp version 3 ipv6 address FE80:1337:5:2001::1 link-local ipv6 address 2001:1337:5:2001::1/64 ipv6 enable ipv6 mld join-group FF08::1 interface GigabitEthernet0/1.20 encapsulation dot1q 20 ip address 192.168.50.1 255.255.255.0 ip pim sparse-mode ip nat inside ip virtual-reassembly ip igmp version 3 ipv6 address FE80:1337:5:2002::1 link-local ipv6 address 2001:1337:5:2002::1/64 ipv6 enable ipv6 mld join-group FF08::1 interface GigabitEthernet0/1.30 encapsulation dot1q 30 ip address 192.168.60.1 255.255.255.0 ip pim sparse-mode ip nat inside ip virtual-reassembly ip igmp version 3 ipv6 address FE80:1337:5:2003::1 link-local ipv6 address 2001:1337:5:2003::1/64 ipv6 enable ipv6 mld join-group FF08::1 57

interface GigabitEthernet0/1.250 encapsulation dot1q 250 ip address 10.0.251.1 255.255.255.0 ipv6 address FE80:1337:5:2::1 link-local ipv6 enable interface Serial0/0/0 no ip address no fair-queue clock rate 2000000 interface Serial0/0/1 no ip address interface FastEthernet0/1/0 no ip address duplex auto speed auto interface FastEthernet0/1/1 description To-Juniper-R2 no ip address duplex auto speed auto interface FastEthernet0/1/1.902 encapsulation dot1q 902 ip address 130.0.130.2 255.255.255.0 ip pim sparse-mode ip nat outside ip virtual-reassembly ip igmp query-interval 125 ipv6 address 2001:D074:11::2/126 ipv6 mld join-group FF08::1 router ospf 1 log-adjacency-changes network 192.168.40.0 0.0.0.255 area 0 network 192.168.50.0 0.0.0.255 area 0 network 192.168.60.0 0.0.0.255 area 0 ip forward-protocol nd ip route 0.0.0.0 0.0.0.0 130.0.130.1 no ip http server no ip http secure-server ip pim ssm range ssm-range ip nat inside source static 192.168.60.11 157.30.85.33 ip nat inside source static 192.168.40.11 157.30.85.34 ip access-list standard ssm-range permit 239.0.0.0 0.255.255.255 ipv6 route ::/0 2001:D074:11::1 ipv6 mld ssm-map enable ipv6 mld ssm-map static multicast 2001:1337:5:2003::10 no ipv6 mld ssm-map query dns ipv6 access-list multicast permit ipv6 any host FF08::1 58

control-plane line con 0 password cisco login line aux 0 line vty 0 4 password cisco login line vty 5 15 password cisco login scheduler allocate 20000 1000 end 59

60 Liite 6. WG2-SW1 konfiguraatio WG2-SW1sh run Building configuration... Current configuration : 3609 bytes version 12.2 no service pad service timestamps debug datetime msec service timestamps log datetime msec no service password-encryption hostname WG2-SW1 no aaa new-model ip subnet-zero no ip domain-lookup vtp mode transparent crypto pki trustpoint TP-self-signed-3468661504 enrollment selfsigned subject-name cn=ios-self-signed-certificate-3468661504 revocation-check none rsakeypair TP-self-signed-3468661504 crypto pki certificate chain TP-self-signed-3468661504 certificate self-signed 01 30820240 308201A9 A0030201 02020101 300D0609 2A864886 F70D0101 04050030 31312F30 2D060355 04031326 494F532D 53656C66 2D536967 6E65642D 43657274 69666963 6174652D 33343638 36363135 3034301E 170D3933 30333031 30303132 33395A17 0D323030 31303130 30303030 305A3031 312F302D 06035504 03132649 4F532D53 656C662D 5369676E 65642D43 65727469 66696361 74652D33 34363836 36313530 3430819F 300D0609 2A864886 F70D0101 01050003 818D0030 81890281 8100AD6F 11D9836F 9CAEF00C C7672D83 E2126226 F114BA2E 4A0AF7CC C2F8E22F C7A1302F 46830DD5 11C4A1F2 16F1AB24 8653C537 E7C849E5 2A15AC4B 914AB8EB 9DA2880A 425421EA ED9B28C9 A0997B92 9C472DE9 9E46197D D81C577B 4B2F9D95 BCDD689A A44F0651 50A14C17 4A41D16C 6160B171 A537AAC3 2ABA2026 F70B8FC4 77F10203 010001A3 68306630 0F060355 1D130101 FF040530 030101FF 30130603 551D1104 0C300A82 08574732 2D535731 2E301F06 03551D23 04183016 80148538 F2A40EF1 936922CA 9580E596 7F4C420D AD3E301D 0603551D 0E041604 148538F2 A40EF193 6922CA95 80E5967F 4C420DAD 3E300D06 092A8648 86F70D01 01040500 03818100 874EB7EC 470D9CE6 94AA25AA 09B5062A 5BD66C2E 1DCCC59D FB91EB7B 0814230E 052F05FB 96255DBF AE4F5470 F8E19546 72795DD1 D379BB2B 4D9F7EE8 D29A4445 A461A699 5031E9BA 60AEB24B 7A203F61 F2CD9735 DBAB524A 04157C7E 73875EE2 9A969F9C DE862749 65C886A7 4C618107 BFDD37EE 7AF9F6D5 7F79ACED 97F033DD quit spanning-tree mode pvst spanning-tree extend system-id vlan internal allocation policy ascending vlan 10 name VoIP vlan 20 name DATA vlan 30 name IPTV vlan 50

name Hallinta vlan 250 name Management interface GigabitEthernet0/1 description Trunk-to-R1 switchport trunk encapsulation dot1q switchport mode trunk interface GigabitEthernet0/2 description Trunk-to-SW2 switchport trunk encapsulation dot1q switchport mode trunk interface GigabitEthernet0/3 description Trunk-to-SW3 switchport trunk encapsulation dot1q switchport mode trunk interface GigabitEthernet0/4 switchport mode dynamic desirable interface GigabitEthernet0/5 switchport mode dynamic desirable interface GigabitEthernet0/6 switchport access vlan 30 switchport mode access interface GigabitEthernet0/7 switchport mode dynamic desirable interface GigabitEthernet0/8 switchport mode dynamic desirable interface GigabitEthernet0/9 switchport mode dynamic desirable interface GigabitEthernet0/10 switchport mode dynamic desirable interface GigabitEthernet0/11 switchport mode dynamic desirable interface GigabitEthernet0/12 switchport mode dynamic desirable interface Vlan1 no ip address interface Vlan250 description Management ip address 10.0.251.2 255.255.255.0 ipv6 address 2001:1337:5:2::2/64 ipv6 address FE80:1337:5:2::2 link-local 61

ipv6 enable ip default-gateway 10.0.251.1 ip classless ip http server ip http secure-server control-plane line con 0 password cisco logging synchronous login line vty 0 4 password cisco login line vty 5 15 password cisco login end 62

63 Liite 7. WG2-SW2 konfiguraatio WG2-SW2show run Building configuration... Current configuration : 1731 bytes version 12.1 no service pad service timestamps debug uptime service timestamps log uptime no service password-encryption hostname WG2-SW2 ip subnet-zero no ip domain-lookup ip ssh time-out 120 ip ssh authentication-retries 3 vtp mode transparent spanning-tree mode pvst no spanning-tree optimize bpdu transmission spanning-tree extend system-id vlan 10 name VoIP vlan 20 name DATA vlan 30 name IPTV vlan 50 name Hallinta vlan 250 name Management interface FastEthernet0/1 description Trunk-to-SW1 switchport mode trunk interface FastEthernet0/2 interface FastEthernet0/3 interface FastEthernet0/4 interface FastEthernet0/5 interface FastEthernet0/6 interface FastEthernet0/7 interface FastEthernet0/8 interface FastEthernet0/9

interface FastEthernet0/10 interface FastEthernet0/11 interface FastEthernet0/12 interface FastEthernet0/13 interface FastEthernet0/14 interface FastEthernet0/15 interface FastEthernet0/16 interface FastEthernet0/17 interface FastEthernet0/18 interface FastEthernet0/19 interface FastEthernet0/20 interface FastEthernet0/21 switchport access vlan 10 switchport mode access interface FastEthernet0/22 interface FastEthernet0/23 interface FastEthernet0/24 interface Vlan1 no ip address no ip route-cache interface Vlan250 description Management ip address 10.0.251.3 255.255.255.0 no ip route-cache ip default-gateway 10.0.251.1 ip http server line con 0 line vty 5 15 end 64

65 Liite 8. WG2-SW3 konfiguraatio * WG2-SW3.1 show configuration Module devmgr configuration. configure snmp sysname "WG2-SW3" configure sys-recovery-level switch reset Module vlan configuration. configure vlan default delete ports all configure vr VR-Default delete ports 1-26 configure vr VR-Default add ports 1-26 configure vlan default delete ports 1-26 create vlan "DATA" configure vlan DATA tag 20 create vlan "IPTV" configure vlan IPTV tag 30 create vlan "Managerointi" configure vlan Managerointi tag 250 create vlan "VoIP" configure vlan VoIP tag 10 disable port 1 disable port 2 disable port 3 disable port 4 disable port 5 disable port 6 disable port 7 disable port 8 disable port 9 disable port 10 disable port 11 disable port 12 disable port 13 disable port 14 disable port 15 disable port 16 disable port 17 disable port 18 disable port 19 disable port 20 disable port 21 disable port 22 disable port 23 disable port 24 disable port 25 disable port 26 configure vlan DATA add ports 1-2 tagged configure vlan IPTV add ports 1-2 tagged configure vlan Managerointi add ports 1-2 tagged configure vlan VoIP add ports 1-2 tagged configure vlan Managerointi ipaddress 10.0.251.4 255.255.255.0 configure Managerointi ipaddress fe80:1337:5:2::4/64 configure Managerointi ipaddress 2001:1337:5:2::4/64 Module fdb configuration. Module rtmgr configuration. configure iproute add default 10.0.251.1 Module mcmgr configuration.