IPv 6. Welkom bij IPv6 Martijn Bellaard Martijn Bellaard –mbellaard@twice.nl mbellaard@twice.nl...

Post on 08-Jun-2015

214 views 1 download

Transcript of IPv 6. Welkom bij IPv6 Martijn Bellaard Martijn Bellaard –mbellaard@twice.nl mbellaard@twice.nl...

IPvIPv66

Welkom bij IPv6Welkom bij IPv6

• Martijn BellaardMartijn Bellaard– mbellaard@twice.nlmbellaard@twice.nl– www.twice.nlwww.twice.nl

AgendaAgenda

• Waarom IPv6Waarom IPv6• IPv6 NummersIPv6 Nummers

– Verschillende IPv6 nummersVerschillende IPv6 nummers• Neighbor DiscoveryNeighbor Discovery Protocol Protocol• Routing IPv6Routing IPv6• Routing IPv6 over IPv4Routing IPv6 over IPv4• TunnelenTunnelen

– HandmatigHandmatig– AutomatischAutomatisch

• 6to46to4• ISATAP (Demo)ISATAP (Demo)• TeredoTeredo

• DNSDNS• DHCPv6DHCPv6

Waarom IPv6Waarom IPv6

• IPv4 NummersIPv4 Nummers

• IPv4 ConfiguratieIPv4 Configuratie

• IPv4 BeveiligingIPv4 Beveiliging

• IPv4 PerformanceIPv4 Performance

Waarom IPv6Waarom IPv6

• IPv4 NummersIPv4 Nummers– IPv4 is 32 bitsIPv4 is 32 bits– NATNAT

• IPv6 NummersIPv6 Nummers– IPv6 is 128 BitsIPv6 is 128 Bits– Elk apparaat zijn Elk apparaat zijn

eigen nummer?eigen nummer?

Totaal 4,294,967,296 Private 10.x.y.z 16,777,216

172.16.x.y 1,048,576 172.31.x.y192.168.x.y 65,536

Localhost 127.0.0.0 16,777,216

Class D 224.x.y.z 520,093,696 Class EEinde 255.x.y.z

3,740,205,056

3.4028236692093846346337460743177e+38

6.6713399230871781977895920808634e+35

Waarom IPv6Waarom IPv6

• IPv4 ConfiguratieIPv4 Configuratie– Met de handMet de hand– DHCPDHCP

• IPv6IPv6– Neighbor Discovery Neighbor Discovery

ProtocolProtocol

Waarom IPv6Waarom IPv6

• IPv4 BeveiligingIPv4 Beveiliging– Standaard nietStandaard niet– AanvullingAanvulling

•SSLSSL

• IPSecIPSec

• IPv6 BeveiligingIPv6 Beveiliging– Standaard IPSecStandaard IPSec

Waarom IPv6Waarom IPv6

• IPv4 PerformanceIPv4 Performance– HeaderHeader

• IPv4,beperkte groteIPv4,beperkte grote

• IPv6 headerIPv6 header– Next headerNext header

– MTUMTU• IPv4, fragmentatieIPv4, fragmentatie

• IPv6, geen fragmentatieIPv6, geen fragmentatie– Path MTU DiscoveryPath MTU Discovery

Daarom IPv6Daarom IPv6

• IPv4 NummersIPv4 Nummers

• IPv4 ConfiguratieIPv4 Configuratie

• IPv4 BeveiligingIPv4 Beveiliging

• IPv4 PerformanceIPv4 Performance

AgendaAgenda

• Waarom IPv6Waarom IPv6• IPv6 NummersIPv6 Nummers

– Verschillende IPv6 nummersVerschillende IPv6 nummers• Neighbor DiscoveryNeighbor Discovery Protocol Protocol• Routing IPv6Routing IPv6• Routing IPv6 over IPv4Routing IPv6 over IPv4• TunnelenTunnelen

– HandmatigHandmatig– AutomatischAutomatisch

• 6to46to4• ISATAP (Demo)ISATAP (Demo)• TeredoTeredo

• DNSDNS• DHCPv6DHCPv6

IPv6 NummerIPv6 Nummer

• IPv4 nummerIPv4 nummer

• IPv6 nummerIPv6 nummer– Regels voor notatieRegels voor notatie– PrefixPrefix

• Verschillende IPv6 NummersVerschillende IPv6 Nummers– UnicastUnicast– MulticastMulticast– AnycastAnycast

IPv6 NummerIPv6 Nummer

• IPv4 nummerIPv4 nummer– u.x.y.zu.x.y.z– u,x,y,x=0-255u,x,y,x=0-255– Bijv; 134.55.67.2Bijv; 134.55.67.2

• SubnetmaskSubnetmask– 255.255.255.0255.255.255.0– /24/24

• 134.55.67.2/24134.55.67.2/24

IPv6 NummerIPv6 Nummer

• IPv6 nummerIPv6 nummer– Regels voor notatieRegels voor notatie

• HexadecimaalHexadecimaal

• 128 Bits128 Bits

• 8 groepen van 4 hexadecimale getallen8 groepen van 4 hexadecimale getallen

• Voorloop nullen hoeven niet genoteerd te wordenVoorloop nullen hoeven niet genoteerd te worden

• Aaneengesloten nullen mogen vervangen worden Aaneengesloten nullen mogen vervangen worden door “::”door “::”

2345:0000:0000:0900:56CD:3423:0022:9099

2345::900:56CD:3423:22:9099

IPv6 NummerIPv6 Nummer

• IPv6 nummerIPv6 nummer– PrefixPrefix

•/60/60

•2345:0000:0000:9002345:0000:0000:900::/60::/60

2345::900:56CD:3423:22:9099/60

IPv6 NummerIPv6 Nummer

• Verschillende IPv6 NummersVerschillende IPv6 Nummers– UnicastUnicast

•Van host naar hostVan host naar host

•Link-LocalLink-Local– FE80::/10FE80::/10

•SiteSite– FEC0::/10FEC0::/10– Private rangePrivate range

•GlobalGlobal

IPv6 NummerIPv6 Nummer

• Verschillende IPv6 NummersVerschillende IPv6 Nummers– MulticastMulticast

• Van 1 host naar meerder hosts.Van 1 host naar meerder hosts.– Non-permanently-assigned (1)Non-permanently-assigned (1)– permanently-assigned (0)permanently-assigned (0)

– Begint met FF0X of FF1XBegint met FF0X of FF1X– Waar bij X=Waar bij X=

• 0 reserved0 reserved• 1 interface-local scope1 interface-local scope• 2 link-local scope (FF02)2 link-local scope (FF02)• 3 reserved3 reserved• 4 admin-local scope4 admin-local scope• 5 site-local scope5 site-local scope• 8 organization-local scope8 organization-local scope• E global scopeE global scope• F reservedF reserved

IPv6 NummerIPv6 Nummer

• Verschillende IPv6 NummersVerschillende IPv6 Nummers– AnycastAnycast

•Naar de eerst reagerende hostNaar de eerst reagerende host

– Broadcast bestaat niet meer.Broadcast bestaat niet meer.

IPv6 NummerIPv6 Nummer

• Hoe wordt een IPv6 nummer Hoe wordt een IPv6 nummer gemaaktgemaakt– We nemen FE80::We nemen FE80::– We nemen een beetje MAC adres:00-C0-We nemen een beetje MAC adres:00-C0-

9F-2C-25-449F-2C-25-44– Men krijgt: fe80::2c0:9fff:fe2c:2544Men krijgt: fe80::2c0:9fff:fe2c:2544

IPv6 NummerIPv6 Nummer

00-C0-9F-2C- 25-44

fe80::2c0:9fff:fe2c:2544

00C0-9F 2C- 2544

We flippen ergens een bitjeKnallen er “fffe” tussenWe noemen het EUI-64 formatEn we krijgen:

SECURITY

AgendaAgenda

• Waarom IPv6Waarom IPv6• IPv6 NummersIPv6 Nummers

– Verschillende IPv6 nummersVerschillende IPv6 nummers• Neighbor DiscoveryNeighbor Discovery Protocol Protocol• Routing IPv6Routing IPv6• Routing IPv6 over IPv4Routing IPv6 over IPv4• TunnelenTunnelen

– HandmatigHandmatig– AutomatischAutomatisch

• 6to46to4• ISATAP (Demo)ISATAP (Demo)• TeredoTeredo

• DNSDNS• DHCPv6DHCPv6

Neighbor Discovery ProtocolNeighbor Discovery Protocol

• NDND– DoelDoel

• Router discoveryRouter discovery

• Prefix discoveryPrefix discovery

• Parameters discoveryParameters discovery

• Address autoconfigurationAddress autoconfiguration

• Address resolution (ARP)Address resolution (ARP)

• Next-hop determinationNext-hop determination

• Neighbor unreachability detectionNeighbor unreachability detection

• Duplicate address detectionDuplicate address detection

• redirectredirect

Neighbor Discovery ProtocolNeighbor Discovery Protocol

• SecuritySecurity– Router Advertisement (RA), Router Router Advertisement (RA), Router

Solicitation (RS), Neighbor Solicitation (NS), Solicitation (RS), Neighbor Solicitation (NS), Neighbor Advertisement (NA) and Neighbor Advertisement (NA) and Redirect Redirect

– ““Gratis” een adres.Gratis” een adres.– Mobile IPv6Mobile IPv6– Router HeaderRouter Header

• IPSec IPSec

Neighbor Discovery ProtocolNeighbor Discovery Protocol

Address autoconfigurationAddress autoconfiguration• Maakt een “link-local” adres :fe80::[interface ID]Maakt een “link-local” adres :fe80::[interface ID]• Host stuurt drie “Router Host stuurt drie “Router SolicitationSolicitation” ” • Krijgt een “Router Krijgt een “Router AdvertisementAdvertisement respons” respons”• Kijkt of het nummer al bestaat, “Neighbor Solicitation”Kijkt of het nummer al bestaat, “Neighbor Solicitation”• Neemt het in gebruikNeemt het in gebruik

STATELESSSTATELESS

AgendaAgenda

• Waarom IPv6Waarom IPv6• IPv6 NummersIPv6 Nummers

– Verschillende IPv6 nummersVerschillende IPv6 nummers• Neighbor DiscoveryNeighbor Discovery Protocol Protocol• Routing IPv6Routing IPv6• Routing IPv6 over IPv4Routing IPv6 over IPv4• TunnelenTunnelen

– HandmatigHandmatig– AutomatischAutomatisch

• 6to46to4• ISATAP (Demo)ISATAP (Demo)• TeredoTeredo

• DNSDNS• DHCPv6DHCPv6

Routing IPv4Routing IPv4

Network IDNetwork ID MaskMask InterfaceInterface GatewayGateway

10.0.2.010.0.2.0 255.255.255.0255.255.255.0 10.0.2.110.0.2.1 10.0.2.110.0.2.1

10.0.1.010.0.1.0 255.255.255.0255.255.255.0 10.0.1.110.0.1.1 10.0.1.110.0.1.1

10.0.3.010.0.3.0 255.255.255.0255.255.255.0 10.0.2.110.0.2.1 10.0.2.210.0.2.2

0.0.0.00.0.0.0 0.0.0.00.0.0.0 10.0.2.110.0.2.1 10.0.2.210.0.2.2

Routing IPv6Routing IPv6

• Wat heb ik nodigWat heb ik nodig– Destination PrefixDestination Prefix– Next-Hop AddressNext-Hop Address– InterfaceInterface– MetricMetric

• Wat vind je in een router tabelWat vind je in een router tabel– Directly-attached network routesDirectly-attached network routes– Remote network routesRemote network routes– Host routesHost routes– Default route (::/0)Default route (::/0)

Routing IPv6Routing IPv6

• Hoe gaat dit nu op internet?Hoe gaat dit nu op internet?– TLA=TLA=Top Level AggregatorTop Level Aggregator. . – NLA=NLA=Next Level AggregatorNext Level Aggregator. . – SLA=SLA=Site Level AggregatorSite Level Aggregator..

TLA

NLA NLA NLA

SLA SLA SLA SLA SLA SLA

Routing IPv6Routing IPv6

DemoDemo

• Routing IPv6Routing IPv6– netsh interface ipv6 set interface “10.0.2" forwarding=enabled netsh interface ipv6 set interface “10.0.2" forwarding=enabled

advertise=enabledadvertise=enabled– netsh interface IPv6 set interface “10.0.3" forwarding=enabled netsh interface IPv6 set interface “10.0.3" forwarding=enabled

advertise=enabledadvertise=enabled– netsh interface IPv6 add route fec0:0:0:2::/64 “10.0.2" publish=yesnetsh interface IPv6 add route fec0:0:0:2::/64 “10.0.2" publish=yes– netsh interface IPv6 add route fec0:0:0:3::/64 “10.0.3" publish=yesnetsh interface IPv6 add route fec0:0:0:3::/64 “10.0.3" publish=yes– netsh interface IPv6 add route ::/0 “10.0.2" nexthop=fec0::2:20c:29ff:fee6:cb3f netsh interface IPv6 add route ::/0 “10.0.2" nexthop=fec0::2:20c:29ff:fee6:cb3f

publish=yespublish=yes– netsh interface IPv6 set interface “10.0.2" siteid=1netsh interface IPv6 set interface “10.0.2" siteid=1– netsh interface IPv6 set interface “10.0.3" siteid=1netsh interface IPv6 set interface “10.0.3" siteid=1

AgendaAgenda

• Waarom IPv6Waarom IPv6• IPv6 NummersIPv6 Nummers

– Verschillende IPv6 nummersVerschillende IPv6 nummers• Neighbor DiscoveryNeighbor Discovery Protocol Protocol• Routing IPv6Routing IPv6• Routing IPv6 over IPv4Routing IPv6 over IPv4• TunnelenTunnelen

– HandmatigHandmatig– AutomatischAutomatisch

• 6to46to4• ISATAP (Demo)ISATAP (Demo)• TeredoTeredo

• DNSDNS• DHCPv6DHCPv6

Routing IPv6 over IPv4Routing IPv6 over IPv4

• Host to routerHost to router

• Router to hostRouter to host

Routing IPv6 over IPv4Routing IPv6 over IPv4

• Router to RouterRouter to Router

Routing IPv6 over IPv4Routing IPv6 over IPv4

• Host to HostHost to Host

AgendaAgenda

• Waarom IPv6Waarom IPv6• IPv6 NummersIPv6 Nummers

– Verschillende IPv6 nummersVerschillende IPv6 nummers• Neighbor DiscoveryNeighbor Discovery Protocol Protocol• Routing IPv6Routing IPv6• Routing IPv6 over IPv4Routing IPv6 over IPv4• TunnelenTunnelen

– HandmatigHandmatig– AutomatischAutomatisch

• 6to46to4• ISATAP (Demo)ISATAP (Demo)• TeredoTeredo

• DNSDNS• DHCPv6DHCPv6

Het maken van TunnelsHet maken van Tunnels

• HandmatigHandmatig

• 6to46to4

• ISATAPISATAP

• TeredoTeredo

HandmatigHandmatig

• Te gebruiken voor:Te gebruiken voor:– Host to HostHost to Host– Host to router en router to hostHost to router en router to host– Router to routerRouter to router

HandmatigHandmatig

• VoordelenVoordelen– Je hebt het zelf Je hebt het zelf

onder controleonder controle– Vraagt niet om het Vraagt niet om het

gebruik van een gebruik van een techniektechniek

– Voor elke Voor elke infrastructuur infrastructuur bruikbaarbruikbaar

• NadelenNadelen– Beide kanten Beide kanten

moeten door jou moeten door jou beheerd wordenbeheerd worden

– Bij een verandering Bij een verandering moet je alles moet je alles aanpassenaanpassen

6to46to4

• Te gebruiken voor:Te gebruiken voor:– Router to routerRouter to router– Host to HostHost to Host– Router to HostRouter to Host

• CommunicatieCommunicatie– 6to4 Host6to4 Host– 6to4 Router6to4 Router– 6to4 relay router6to4 relay router

6to46to4

• Tweede InterfaceTweede Interface– 6to4 interface6to4 interface– 2002:2002:IPv4IPv4 adres in hexadres in hex weergegevenweergegeven:NetworkID:HostID:NetworkID:HostID

(d488:3701=212.136.55.1)(d488:3701=212.136.55.1)

6to46to4

• VoordelenVoordelen– AutomatischAutomatisch– Open standaardOpen standaard

• NadelenNadelen– Werkt niet voor IPv4 Werkt niet voor IPv4

private rangeprivate range– Gaat niet door een Gaat niet door een

NAT translatieNAT translatie

ISATAPISATAP

• Intra-Site Automatic Tunnel Addressing ProtocolIntra-Site Automatic Tunnel Addressing Protocol • Host-to-hostHost-to-host• Host-to-routerHost-to-router• ISATAP ziet IPv4 netwerk als ISATAP ziet IPv4 netwerk als Non-Broadcast Multiple Non-Broadcast Multiple

Access (Access (NBMANBMA) link layer ) link layer • Link-local adres::5efe:IPv4 Link-local adres::5efe:IPv4

ISATAPISATAP

• Communicatie verloopCommunicatie verloop

ISATAP ???•ISATAP.TWICE.NL•ISATAP

Router Solicitation Message

Router Advertisement Message

ISATAPISATAP

• VoordelenVoordelen– AutomatischAutomatisch– Werkt met IPv4 Werkt met IPv4

private rangeprivate range– Heeft geen speciale Heeft geen speciale

service op IPv4 service op IPv4 nodignodig

– Kan samenwerken Kan samenwerken met 6to4met 6to4

• NadelenNadelen– Gaat niet door een Gaat niet door een

NAT translatieNAT translatie– ““ISATAP” moet ISATAP” moet

kunnen worden kunnen worden gevonden.gevonden.

IsatapIsatap

ISATAP Router

ISATAPClient

ISATAPISATAP

DemoDemo1.1. Disabling Forwarding en Advertising op router 1 en 2Disabling Forwarding en Advertising op router 1 en 2

netsh interface ipv6 set interface "lan2" forwarding=disabled netsh interface ipv6 set interface "lan2" forwarding=disabled advertise=disabledadvertise=disablednetsh interface ipv6 set interface "lan3" forwarding=disabled netsh interface ipv6 set interface "lan3" forwarding=disabled advertise=disabledadvertise=disabled

2.2. Van router 1 een ISATAP router makenVan router 1 een ISATAP router makennetsh interface ipv6 isatap set router 10.0.2.1netsh interface ipv6 isatap set router 10.0.2.1netsh interface ipv6 set interface "Automatic Tunneling Pseudo-netsh interface ipv6 set interface "Automatic Tunneling Pseudo-Interface" forwarding=enabled advertise=enabledInterface" forwarding=enabled advertise=enablednetsh interface ipv6 add route fec0:0:0:10::/64 "Automatic Tunneling netsh interface ipv6 add route fec0:0:0:10::/64 "Automatic Tunneling Pseudo-Interface" publish=yesPseudo-Interface" publish=yes

3.3. DNS Entry voor ISATAP router maken DNS Entry voor ISATAP router maken 4.4. Pingen vanaf workstation2 naar workstation1 IP#v6Pingen vanaf workstation2 naar workstation1 IP#v6

TeredoTeredo

• ProbleemProbleem– NATNAT

Client A Server

TeredoTeredo

• OnderdelenOnderdelen– Teredo clientTeredo client– Teredo serverTeredo server– Teredo relay Teredo relay – Teredo host-specific relayTeredo host-specific relay

TeredoTeredo

1.1. Client A Client A Client B Client B

2.2. Client A Client A TeredoSVR TeredoSVR

3.3. TeredoSVRTeredoSVRClientBClientB

4.4. ClientBClientBClientAClientA

5.5. ClientBClientBTeredoSVRTeredoSVR

Client A

Client B

TeredoSVR

TeredoTeredo

• VoordelenVoordelen– Gaat door NATGaat door NAT

• NadelenNadelen– Vraagt om een Vraagt om een

server buitenserver buiten– Mogelijkheid tot Mogelijkheid tot

spoofing op de spoofing op de teredo serverteredo server

AgendaAgenda

• Waarom IPv6Waarom IPv6• IPv6 NummersIPv6 Nummers

– Verschillende IPv6 nummersVerschillende IPv6 nummers• Neighbor DiscoveryNeighbor Discovery Protocol Protocol• Routing IPv6Routing IPv6• Routing IPv6 over IPv4Routing IPv6 over IPv4• TunnelenTunnelen

– HandmatigHandmatig– AutomatischAutomatisch

• 6to46to4• ISATAP (Demo)ISATAP (Demo)• TeredoTeredo

• DNSDNS• DHCPv6DHCPv6

DNSDNS

• AAAAAAAA

Host AAAA IP#v6Host AAAA IP#v6PTRPTR

in-addr.arpa in-addr.arpa ip6.int of ip6.arpa en ip# in decimale ip6.int of ip6.arpa en ip# in decimale IPv4 notatieIPv4 notatie

(0.1.2.3.0.0.0.0.0.enz IN PTR www.twice.nl)(0.1.2.3.0.0.0.0.0.enz IN PTR www.twice.nl)

• AndereAndere

– DNAMEDNAME– Status, ExperimentalStatus, Experimental

DNSDNS

• DNS IPv6 geschikt makenDNS IPv6 geschikt makendnscmd /config /EnableIPv6 1dnscmd /config /EnableIPv6 1

• support support toolstools

DNSDNS

• DemoDemo

1.1. Het aanmaken van AAAA recordHet aanmaken van AAAA record

2.2. Pingen met gebruikmaking van het Pingen met gebruikmaking van het AAAA recordAAAA record

3.3. Website opvragenWebsite opvragen

AgendaAgenda

• Waarom IPv6Waarom IPv6• IPv6 NummersIPv6 Nummers

– Verschillende IPv6 nummersVerschillende IPv6 nummers• Neighbor DiscoveryNeighbor Discovery Protocol Protocol• Routing IPv6Routing IPv6• Routing IPv6 over IPv4Routing IPv6 over IPv4• TunnelenTunnelen

– HandmatigHandmatig– AutomatischAutomatisch

• 6to46to4• ISATAP (Demo)ISATAP (Demo)• TeredoTeredo

• DNSDNS• DHCPv6DHCPv6

DHCPv6DHCPv6

• Stateless AutoconfigurationStateless Autoconfiguration– IP#v6 wordt gemaakt aan de hand van IP#v6 wordt gemaakt aan de hand van

het MAC adreshet MAC adres– Router geeft de rest van de informatieRouter geeft de rest van de informatie

• ““Stateful” AutoconfigurationStateful” Autoconfiguration– DHCPv6DHCPv6

• Aanwezig in Windows “Longhorn”Aanwezig in Windows “Longhorn”

Meer informatieMeer informatie

• BoekBoek– IPv6 van O’Reilly, ISBN 0596009348IPv6 van O’Reilly, ISBN 0596009348– IPv6, Het nieuwe Internet-protocol helder beschreven, ISBN IPv6, Het nieuwe Internet-protocol helder beschreven, ISBN

90395156629039515662• LinksLinks

– http://technet2.microsoft.com/WindowsServer/en/Library/b05f98ef-256http://technet2.microsoft.com/WindowsServer/en/Library/b05f98ef-2561-4a0a-af91-dbb155aa52211033.mspx1-4a0a-af91-dbb155aa52211033.mspx

– http://www.microsoft.com/downloads/details.aspx?FamilyID=fd7e1354-http://www.microsoft.com/downloads/details.aspx?FamilyID=fd7e1354-3a3b-43fd-955f-11edd39551d7&displaylang=en3a3b-43fd-955f-11edd39551d7&displaylang=en

– www.google.nlwww.google.nl• RFC’sRFC’s

– 21852185– 30563056– 35133513

• DraftDraft– draft-chown-v6ops-port-scanning-implications-01.txtdraft-chown-v6ops-port-scanning-implications-01.txt– draft-huitema-v6ops-teredo-05.txtdraft-huitema-v6ops-teredo-05.txt– draft-vives-v6ops-ipv6-security-ps-03.txtdraft-vives-v6ops-ipv6-security-ps-03.txt

Martijn BellaardMartijn Bellaard– mbellaard@twice.nlmbellaard@twice.nl– www.twice.nlwww.twice.nl