1. Gremo 6
delavnica za skrbnike lokalnih računalniških omrežij
8. IPv6-srečanje
Matjaž Straus Istenič
Arnes, go6
Tehnološki park Ljubljana, 23. 10. 2013
torek, 22. oktober 13
Hec: dva priimka (včasih zelo praktično) vs. dve različici IP-protokola (neprimerno, saj protokola nista združljiva - komunikacija brez
posrednikov ni možna).
1
2. IPv6 kot sprememba
Tehnično
Vendar ...
Ne!
Uf, a še vedno?
Gledam druge
Ne
Da
×
IPv6
✓
Vedno sem bil “za”!
Uspeh!
Poskusim
Vprašam druge
torek, 22. oktober 13
Pogled na uvajanje IPv6, kjer ne gre zgolj za jasne tehnične odločitve, temveč za sociološki problem.
Q: Se lahko prepoznamo v tem procesu?
2
4. Tehnično
Vendar ...
Da
IPv6
Vedno sem bil “za”!
Izobraževanje je ključno, da
Ne!
Uspeh!
proces uvajanja skrajšamo!
Uf, a še vedno?
Gledam druge
Poskusim
Vprašam druge
torek, 22. oktober 13
Z ustreznim izobraževanje preskočimo nekaj korakov “sociološke daljšnjice”:
- pomembno je zaobiti dno “gledam druge”/“vprašam druge”
- če se le da, pa že prvi “ne” obrniti v “da”
4
5. Osnove IPv6
•
•
•
•
•
torek, 22. oktober 13
IPv6-naslov
ICMP in samodejne nastavitve
osnovne omrežne storitve
varnost
tranzicijski mehanizmi za prehod na IPv6
5
7. •
•
•
•
•
torek, 22. oktober 13
IPv6-naslov
ICMP in samodejne nastavitve
osnovne omrežne storitve
varnost
tranzicijski mehanizmi za prehod na IPv6
7
13. Vrste IPv6-naslovov
•
•
torek, 22. oktober 13
glede na namembnost - kako, za kaj?
glede na stopnjo lokalnosti (področje ali scope) kje?
13
14. Naslov za določen namen
• iz naslova je razvidno, za kaj in kje se uporablja
• komunikacija v lokalnem omrežju
• globalna komunikacija
• komunikacija v skupini
• komunikacija le z nekaterimi v skupini
torek, 22. oktober 13
14
15. Tipi IPv6-naslova
• kako
• med dvema - unicast
• z mnogimi - multicast
• z najbližjim - anycast
×
•
•
nič več “z vsemi” - broadcast
kje
• lokalno na povezavi - link-local
• lokalno na lokaciji - unique local
• globalno, javno
torek, 22. oktober 13
Dva kriterija: “kako” in “kje”.
Zakaj ni več potrebno “trobljenje” (broadcast/razpršeno oddajanje)? Sporočila pošiljamo le tistim, ki se za njih “zanimajo”, oz. so ta sporočila za
njih pomembna, ne pa vsem --> multicast (oglaševanje znotraj skupine).
15
16. Tipi IPv6-naslova
Naslov
Obseg naslovov
127.0.0.1
169.254.0.0/16
loopback
::1
lokalen (link-local)
fe80::/10
lokalen (unique local)
fc00::/7
javen globalen naslov
2000::/3
naslov skupine (multicast) ff00::/8
10.0.0.0/8
192.168.0.0/16
Kje se uporablja?
na sistemu samem
na povezavi
na lokaciji/organizaciji
224.0.0.0/4
globalno
lokalno ali globalno
torek, 22. oktober 13
“Global Unicast” ustreza javnemu IPv4 naslovu *“Link local” ustreza privatnim naslovom, ki so vidni le znotraj povezovalnega segmenta.
Naslovi “Unique Local Address” se lahko usmerjajo znotraj neke skupine omrežij. Naslovi imajo v omrežnem delu naključno 40-bitno število s
čimer se zmanjša nevarnost združevanja skupin ali problemov v primeru, da paketi po pomoti “zaidejo” v internet. Lokalna uporaba vendar
možnost usmerjanja - globalen “scope”.
16
17. Vmesnik ima več naslovov
•
5 obveznih naslovov
•
na vsakem vmesniku lokalen
naslov na povezavi (link-local)
•
katerikoli dodeljen unicast ali
anycast naslov
•
naslov skupine “vsi
sistemi” (all-nodes multicast)
•
za vsak unicast in anycast
naslov še pripadajoč
pooblaščen naslov (solicitednode multicast)
•
# ip -6 addr show dev eth1
3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qlen 100
inet6 2001:1470:8000:60a:0:1:fee1:600d/64 scope global
valid_lft forever preferred_lft forever
inet6 fe80::216:35ff:fe82:45a2/64 scope link
valid_lft forever preferred_lft forever
# ip -6 maddr
3:
eth1
inet6
inet6
inet6
show dev eth1
ff02::1:ffe1:600d
ff02::1:ff82:45a2
ff02::1
+ naslovi vseh ostalih
skupin, v katerih je sistem
torek, 22. oktober 13
Q: najmanj koliko IPv6-naslovov ima IPv6-sistem? A: (primer na sliki + loopback ::1)
17
18. V IPv6-naslov vstavljeni IPv4-naslov
Naslov
IPv4-compatible
IPv4-mapped
Obseg naslovov
Primer
Namen
::/96
::193.2.1.66
ni več v
uporabi
::ffff:0:0/96
::ffff:193.2.1.66
poenotenje
TCP/IPsklada
<nat64-prefix>:<ipv4>/
(64|96)+ipv4_pfxlen
2001:db8::193.2.1.66
NAT64
IPv4-embedded
- IPv4-translatable
- IPv4-converted
torek, 22. oktober 13
18
Razlika med converted in translatable naslovi:
IPv4-translatable naslov je naslov IPv6-naprave, npr. strežnika, ki je preko translacijskega mehanizma dosegljiv iz
IPv4-omrežja. Ta naslov se lahko pretvori v IPv4-naslov, kar ne velja za poljuben IPv6-naslov. Naslovi zunanjih
IPv4-naprav, ki dostopajo do tega (IPv6) sistema, so predstavljeni kot IPv4-converted IPv6-naslovi. Zapis obeh
(translatable in converted) je enak = IPv4-embedded naslov.
19. Posebni naslovi
Naslov
6to4
Teredo
dokumentacija
torek, 22. oktober 13
Obseg naslovov
Primer
Opis
2002::/16
2002:c102:142::/48
tuneliranje 6to4:
prefiks za 193.2.1.66
2001:0:9d38:6abd:47f:
2c9b:66fa:f7b
tuneliranje Teredo:
IPv4-naslov
strežnika, odjemalca,
UDP vrata, ...
2001:db8::66
v dokumentaciji,
primerih, predavanjih
(debate |dɪˈbeɪt)
2001::/32
2001:db8::/32
19
20. Lepopis
• vedno odstrani vodilne ničle v 16-bitnih besedah
• skrajšaj, kot se le da
• ene same 16-bitne besede ne nadomesti z ::
• če je za :: več možnosti, uporabi :: na prvem
možnem mestu z leve proti desni
• male črke a - f
• v IPv4-mapped in IPv4-embedded naslovih lahko
spodnjih 32 bitov zapišeš decimalno
RFC 5952 - A Recommendation for IPv6 Address Text Representation
torek, 22. oktober 13
20
21. Vaja 1
• IPv6-naslovi na vašem operacijskem sistemu?
• Zapis IPv6-naslova (priloga, str. 1, 2)
torek, 22. oktober 13
21
22. Področje (scope)
•
torek, 22. oktober 13
področje (scope) je določeno z naslovom
•
•
•
•
interface-local
link-local
unique local (prej site-local)
global
22
24. Vmesnik v coni
zone
nt
er
ne
t
in
te
r
fa
c
ad e
dr + g
es lo
s ba
l
scope
gl
ob
lo
klin
+ ss
ce re
fa add
al
r
te
zo
in
ne
-i
interface
ca
l
lin
k
zo
ne
torek, 22. oktober 13
- področje je enolično določeno z IPv6-naslovom, na primer: v področju link-local so le naslovi oblike fe80::
- vmesnik in njegov IPv6-naslov (torej področje!) enolično določata cono, v kateri je ta vmesnik
- cona je konkretizacija področja,
na primer, cona linka-med-vmesnikoma-1-in-2 je množica parov (vmesnik, naslov) z naslovi v področju link-local
- globalnejša cona lahko vsebuje bolj specifične cone, vendar le v celoti
- med conami ni delnih presekov, lahko se "dotikajo"
--> cone so med seboj izolirane
Vmesnik in njegov lokalen naslov (na primer fe80::1) določata cono "link zone", ta isti vmesnik v paru z globalnim naslovom (na primer
2001:db8::2) pa cono "global zone - internet". Cona link je v celoti v coni internet (je podmnožica). Vmesnik sam je v obeh conah hkrati.
24
25. Princip izolacije con
• paket z naslovom v določeni coni nikoli ne
zapusti te cone
• potreben in zadosten pogoj za komunikacijo je,
- da je izvorni vmesnik (od koder je paket
poslan) v isti coni kot ciljni naslov in...
- da je ciljni vmesnik (kjer je bil paket prejet) v
isti coni kot izvorni naslov
torek, 22. oktober 13
Ni potrebno, da sta izvorni in ciljni naslov v isti coni! Potrebno je le ujemanje cone vmesnika pošiljatelja in ciljnega naslova in
vmesnika sprejemnika in izvornega naslova.
Celotna pot paketa, katerega izvorni ali ciljni naslov pripadata neki coni, mora biti znotraj meja cone!
25
26. Kateri naslov izbrati?
• prednostni seznam
1. par naslovov istega tipa glede na lokalnost
2. izbere se bolj lokalen ciljni naslov
3. prednostni naslov (“preffered”)
4. prednost pred tranzicijskimi naslovi (Teredo, 6to4)
5. par naslovov v ožjem skupnem podomrežju
6. kot izvorni naslov ima pred začasnim prednost globalen
naslov
7. mobilna naprava: prednost ima domači (home) naslov
RFC 6724 - Default Address Selection for Internet Protocol Version 6
torek, 22. oktober 13
Kaj so to “tranzicijski” naslovi? Kratek opis. Problem varnosti sistema, ki ima samo tranzicijski naslov, npr. Teredo mikrosoftis (P2P aplikacije na
windozah: default v6, torej?).
Default address selection for IPv6: RFC6724
26
27. Globalna delitev naslovnega prostora
/3
IANA
/12
RIPE
/32
n × /48
alokacija
Arnes
/48
Članica
/48
dodeli ponudnik (LIR)
neodvisno od ponudnika
vir: RIPE NCC, IPv6 for LIRs tutorial
torek, 22. oktober 13
27
28. Delitev naslovnega prostora v organizaciji
}
2001:1470:pppp::/48
2001:1470:pppp:0000::/52
2001:1470:pppp:0000::/56
strežniki
2001:1470:pppp:1000::/52
2001:1470:pppp:0100::/56
delovne postaje
2001:1470:pppp:0100::/64
2001:1470:pppp:0101::/64
administrativni del
učilnice
torek, 22. oktober 13
...
...
2001:1470:pppp:f000::/52
2001:1470:pppp:0900::/56
organizacija
}
do 16 lokacij
}
do 16 skupin
na vsaki lokaciji
}
do 256 lokalnih omrežij
v vsaki skupin
omrežja za goste
...
2001:1470:pppp:0109::/64
knjižnica
28
29. Naslavljanje v organizaciji
Oznaka
omrežja
Oznaka
ISP
ja
(Arnesov
prefiks)
Oznaka
naprave
Lokacija
Številka
omrežja
2001:1470:pppp:LSNN:aaaa:bbbb:cccc:dddd
Prefiks
organizacije
•
•
•
•
Skupina
pppp - organizaciji dodeli Arnes
L = 0 ali lokacija
S - skupina, glede na namembnost (varnostno politiko) omrežja
NN - podomrežje v skupini S
Zelo dober priročnik:
http://www.surfnet.nl/Documents/rapport_201309_IPv6_numplan_EN.pdf
torek, 22. oktober 13
29
30. Vaja 2
• Razdelite 192.168.0.0/23 na 5 delov.
• Izberite 5 omrežij /64 iz 2001:db8:1234::/48.
• Predlagajte hierarhično delitev omrežja
organizacije (priloga, str. 3).
• Zapišite naslovni prostor “svoje” organizacije v
laboratoriju Gremo6 (priloga, str. 4, 5, 6).
torek, 22. oktober 13
Bistvena razlika! Delitev omrežja IPv4 vs izbiranje, označevanje IPv6.
30
31. •
•
•
•
•
torek, 22. oktober 13
IPv6-naslov
ICMP in samodejne nastavitve
osnovne omrežne storitve
varnost
tranzicijski mehanizmi za prehod na IPv6
31
32. ICMP in samodejne nastavitve
•
•
ICMPv6
•
samodejne nastavitve
(SLAAC - Stateless Address Autoconfiguration)
torek, 22. oktober 13
lokalni omrežni mehanizmi
(ND - Neighbor Discovery)
32
33. ICMPv6
•
•
•
torek, 22. oktober 13
zelo pomemben protokol
posebno v lokalnem omrežju
•
samodejne nastavitve omrežnih parametrov
- tudi preverjanje unikatnosti naslova
•
•
•
vzpostavljanje sosedstva
poizvedbe po usmerjevalniku
preverjanje dosegljivosti
brez ICMPv6 ni IPv6-povezljivosti
33
Kaj je ICMP? V IPv6 je ICMP zelo pomemben protokol - skrbi za osnovne mehanizme, kot so iskanje sosedov v omrežju, samodejna nastavitev
naslova in drugih parametrov sistema, izbira prehoda (usmerjevalnika), ugotavljanje maksimalne velikosti paketa (Path MTU discovery) itd. Brez
ICMP je komunikacija po protokolu IPv6 nemogoča. Zato je zelo pomembno, da prometa po protokolu ICMPv6 ne filtriramo in ne omejujemo, ne da
bi točno vedeli, na kaj vse bodo te omejitve vplivale. Če protokola ne poznamo, je v tem primeru bolje, da ga dovolimo brez izjem. ICMP večinoma
deluje le v lokalnem omrežju -- pomembna izjema so sporočila o prevelikih paketih, ki omogočajo PMTU.
34. Pomembna sporočila ICMPv6
•
•
•
•
•
•
•
•
sosed, kje si?
sosed, si še “živ”?
ima že kdo enak naslov?
usmerjevalnik, kje si?
jaz sem tvoj usmerjevalnik
...in pošiljam podatke za samodejno nastavitev
kako velik paket lahko pošljem?
paket je prevelik
torek, 22. oktober 13
Primeri ICMPv6-sporočil.
34
35. Demo
13. Tu imaš pakete, dva si? ...
11. Naslovnik, kje kosa
6. Paket je prevelik, pošlješ lahko
10. Posredujem C-ju.
največ 3 dcl.
14. Sprejemam in sestavljam
skupaj ... 12. Tu sem!
C
3
2. Tu sem. Pošiljam podatke
5.9. za nastavitevB-ju ...
OK, pošiljam B-ju.
Posredujem ...
B
5
A
7. No prav - pošiljam v dveh
1. 8. Tuje mojpakete, dva dcl ... ...
Kje Pošiljam paket 5 kosa
4. imaš usmerjevalnik?
kosih, 3 dcl in 2 dcl ...
3. Nastavil sem si naslov.
Ima še kdo tak naslov?
torek, 22. oktober 13
Router sol. *RA/SLAAC *DAD -> *MTU discovery/adjust *Pošiljatelj fragmentira -> Neighbor sol. - *Prejemnik sestavi.
14 korakov. Q: Koliko različnih ICMPv6 sporočil je poslal računalnik v omrežju A? 6.
35
36. Demo
12. Tu sem!
11. Naslovnik, kje si?
6. Paket je prevelik, pošlješ lahko
največ 3 dcl.
C
3
2. Tu sem. Pošiljam podatke
za nastavitev ...
B
5
A
1. Kje je moj usmerjevalnik?
3. Nastavil sem si naslov.
Ima še kdo tak naslov?
torek, 22. oktober 13
A: 6.
36
37. ND namesto ARP
×
•
✓
•
ARP
protokol ND
•
•
48 bitov - naslov MAC
uporablja se ICMP
samodejne nastavitve (SLAAC)
•
podomrežje
naslov
podomrežje
EUI-64
FF FE
ID vmesnika
povzeto po: RIPE NCC, IPv6 for LIRs tutorial
•
•
usmerjevalnik (privzeti prehod)
MTU
torek, 22. oktober 13
SLAAC: Mehanizem, ki omogoča, da si IPv6 sistem samodejno ustvari naslov, npr. iz MAC-naslova, ne da bi za to potreboval zunanji DHCP
strežnik. *Global Unicast naslov sistema je sestavljen iz naslova podomrežja, ki ga posreduje usmerjevalnik z RA (Router Announcement) in
identifikacijske številke vmesnika EUI-64, ki se določi iz naslova MAC.
* ID vmesnika: 1) med 4 in 5 byte MAC naslova se vrine FFFE. 2) en bitek se zamenja, običajno iz 0 v 1 (Modified EUI).
37
38. Vaja 3
• Laboratorij Gremo6 (priloga, str. 7, 8)
- povežite se na računalnik v laboratoriju in
preverite omrežne nastavitve
torek, 22. oktober 13
38
40. Samodejne nastavitve SLAAC
1. naprava določi svoj ID
2. naprava izbere svoj lokalen naslov in preveri, ali je unikaten (DAD)
3. naprava pošlje RS
4. naprava dobi odgovor RA
5. za vsako veljavno predpono iz RA
•
upošteva predpono in nastavi globalen naslov (izvede tudi DAD)
6. na podlagi RA:
•
•
•
•
torek, 22. oktober 13
nastavi prehod na link-local naslova pošiljatelja RA
oznaki M in O = 0: brez DHCP
oznaka M: DHCP za IPv6-naslov
oznaka O: DHCP za druge omrežne parametre
40
41. Vaja 4
• Vklop IPv6 s samodejnimi nastavitvami SLAAC
(priloga, str. 9, 10)
torek, 22. oktober 13
41
45. tu je prehod, na fe80::6
si v omrežju 2001:1470:c:100::/64
za globalen naslov in DNS vprašaj DHCP
fe80::1:2:3:4
torek, 22. oktober 13
45
46. kje je strežnik DHCP?
potrebujem podatke
fe80::1:2:3:4
gw: fe80::6
2001:1470:c:100:1:2:3:4
nastavil sem si globalen naslov 2001:1470:c:100:1:2:3:4
vem tudi za prehod fe80::6
torek, 22. oktober 13
46
48. IP: 2001:1470:c:100::72
DNS: 2001:1470:c::d
domena: gremo6.si
fe80::1:2:3:4
gw: fe80::6
2001:1470:c:100:1:2:3:4
2001:1470:c:100::72
DNS: 2001:1470:c::d
domena: gremo6.si
moja globalna naslova sta 2001:1470:c:100:1:2:3:4 in
2001:1470:c:100::72
torek, 22. oktober 13
48
49. Vaja 5
• Več globalnih naslovov na vmesniku
• Izbor izvornega naslova (priloga, str. 11)
torek, 22. oktober 13
49
50. •
•
•
•
•
torek, 22. oktober 13
IPv6-naslov
ICMP in samodejne nastavitve
osnovne omrežne storitve
varnost
tranzicijski mehanizmi za prehod na IPv6
50
52. DHCPv6
•
•
•
strežniki in posredniki so v multicast skupini ff02::1:2
•
•
posrednik posreduje izvorni DHCP-zahtevek
•
•
dinamično posodabljanje DNS
DHCPv6 ne posreduje privzetega prehoda
za identifikacijo odjemalcev in strežnikov se uporablja
sistemski DUID (namesto MAC na vmesnikih)
zastavici M in O v sporočilih RA (stateful in stateless
DHCP)
dobra praksa: velikost omrežja naj bo /64
torek, 22. oktober 13
DUID =
DHCP Unique Identifier. 12 - 20 bytov, odvisno od tipa.
M = managed, O = other config flag
DHCPv6 lahko delegira tudi prefikse za ND
52
54. Vaja 6
• Vklop DHCPv6 (priloga, str. 11)
torek, 22. oktober 13
54
55. DNS
•
torek, 22. oktober 13
nič pretresljivo novega
•
•
•
A za IPv4: ime ➝ IPv4-naslov
AAAA (quad A): ime ➝ IPv6-naslov
PTR: IP-naslov ➝ ime
•
ip6.arpa (namesto in-addr.arpa)
55
56. gremo3.ipv6.si.zone
$ORIGIN .
$TTL 3600
; 1 hour
gremo3.ipv6.si
IN SOA
hostmaster.arnes.si. (
minutes)
NS
$ORIGIN gremo3.ipv6.si.
$TTL 1800
; 30 minutes
ubuntu1204
A
windows7
A
windowsxp
A
test
AAAA
test2
AAAA
torek, 22. oktober 13
gremo3-nameserver.ipv6.si.
1263528045
10800
3600
604800
38400
;
;
;
;
;
serial
refresh (3 hours)
retry (1 hour)
expire (1 week)
minimum (10 hours 40
)
gremo3-nameserver.ipv6.si.
153.5.242.132
153.5.242.130
153.5.242.133
2001:1470:e812:b00::123
2001:1470:e812:b00::1234
56
58. Vaja 7
• V DNS vpišite AAAA in PTR zapise za
test.gremo?.ipv6.si, na primer:
test.gremo3.ipv6.si ⟷ 2001:1470:e812:b00::123.
(priloga, str. 12)
torek, 22. oktober 13
58
59. •
•
•
•
•
torek, 22. oktober 13
IPv6-naslov
ICMP in samodejne nastavitve
osnovne omrežne storitve
varnost
tranzicijski mehanizmi za prehod na IPv6
59
60. Varnost
•
•
torek, 22. oktober 13
zasebnost in sledljivost
varnost v lokalnem omrežju
(varovanje lokalnih omrežnih mehanizmov ND)
60
61. Zasebnost in sledljivost
vem, kdo si
ID: 1:2:3:4
2001:1470:c:100:1:2:3:4
ID: 1:2:3:4
2001:db8:1:2:1:2:3:4
torek, 22. oktober 13
61
62. Zasebnost in sledljivost
•
samodejni naključni naslovi
IPv6 Privacy Extensions
•
•
•
dobro za zasebnost
...vendar nezaželeno v lokalnem omrežju
kako onemogočiti samodejno izbiro naključnih
naslovov?
•
torek, 22. oktober 13
...ali vsaj imeti evidenco, dnevniške zapise?
62
63. Varnost v lokalnem omrežju
•
•
torek, 22. oktober 13
ND je ranljiv protokol
•
•
•
lažna sporočila RA
lažen strežnik DHCPv6
lažno predstavljanje - NDP spoofing
DoS
•
•
•
ND cache overflow
napadi na DAD
napadi na DHCPv6
63
64. Varnost v lokalnem omrežju
•
orodja
•
The Hacker’s Choice
https://www.thc.org/thc-ipv6/
•
SI6 Networks' IPv6 Toolkit
http://www.si6networks.com/tools/ipv6toolkit/
•
nmap + NSE scripts
http://nmap.org/nsedoc/scripts/
torek, 22. oktober 13
THC - Linux only. IPv6 Toolkit - BSD (tudi Mac OS X) in Linux
nmap skripte:
broadcast-dhcp6-discover dns-ip6-arpa-scan ipv6-node-info ipv6-ra-flood targets-ipv6-multicast-echo targets-ipv6multicast-invalid-dst targets-ipv6-multicast-mld targets-ipv6-multicast-slaac
64
65. Varnost v lokalnem omrežju
•
na trgu je že nekaj stikal z osnovnim naborom
varovalk:
•
•
•
•
•
•
RA Guard
DHCPv6 Guard
Snooping and device tracking
Source Guard
Destination Guard
Prefix Guard
http://docwiki.cisco.com/wiki/FHS
http://blog.ipspace.net/2013/07/first-hop-ipv6-security-features-in.html
torek, 22. oktober 13
65
IPv6 RA Guard rejects fake RA messages coming from host (non-router) ports (not sure whether it handles all possible IPv6 header fragmentation attacks).
Interestingly, it can also validate the contents of RA messages (configuration flags, list of prefixes) received through router-facing ports, potentially giving you a
safeguard against an attack of fat fingers.
DHCPv6 Guard blocks DHCPv6 messages coming from unauthorized DHCPv6 servers and relays. Like IPv6 RA Guard it also validates the DHCPv6 replies coming
from authorized DHCPv6 servers, potentially providing protection against DHCPv6 server misconfiguration.
IPv6 Snooping and device tracking builds a IPv6 First-Hop Security Binding Table (nicer name for ND table) by monitoring DHCPv6 and ND messages as well as
regular IPv6 traffic. The binding table can be used to stop ND spoofing (in IPv4 world we’d call this feature DHCP Snooping and Dynamic ARP Inspection).
IPv6 Source Guard uses the IPv6 First-Hop Security Binding Table to drop traffic from unknown sources or bogus IPv6 addresses not in the binding table. The
switch also tries to recover from lost address information, querying DHCPv6 server or using IPv6 neighbor discovery to verify the source IPv6 address after dropping
the offending packet(s).
IPv6 Prefix Guard denies illegal off-subnet traffic. It uses information gleaned from RA messages and IA_PD option of DHCPv6 replies (delegated prefixes) to build
the table of valid prefixes (IPv6 Prefix Guard is a layer-2 feature. You should use uRPF check on layer-3 interfaces).
IPv6 Destination Guard drops IPv6 traffic sent to directly connected destination addresses not in IPv6 First-Hop Security Binding Table, effectively stopping ND
exhaustion attacks.
66. •
•
•
•
•
IPv6-naslov
ICMP in samodejne nastavitve
osnovne omrežne storitve
varnost
tranzicijski mehanizmi za prehod na IPv6
torek, 22. oktober 13
Svet ni eden, svetova sta dva - v4 in v6. No, še tretji obstaja - no IP :-)
66
67. Tranzicijski mehanizmi
•
tuneli
•
•
•
6in4, 6to4 (IPv6-over-IPv4)
6rd (IPv6-over-IPv4)
DS-Lite (IPv4-over-IPv6)
•
MAP (Mapping of Address and Port)
•
translacija
•
NAT64/DNS64
torek, 22. oktober 13
Obsolete: Teredo (UDP/IPv4, dela skozi večino NAT-ov).
67
68. uporabnost
obliži in proteze za IP-tehnologijo
čas
torek, 22. oktober 13
Ozrimo se v začetke vzpona v4 interneta. Toga delitev na omrežja v naprej predpisanih
velikosti (se spomnite klas?) onemogoča učinkovito izrabo v4-naslovnega prostora.
Katastrofo so hitro (1993) preprečili z >
68
69. CIDR
torek, 22. oktober 13
CIDR - classless inter-domain routing
Mnogo boljša izkoriščenost naslovnega prostora - velikosti podomrežij so lahko različne
glede na število sistemov v omrežju (ne v naprej predpisane).
69
70. uporabnost
obliži in proteze za IP-tehnologijo
CIDR
čas
torek, 22. oktober 13
70
Sledi rast števila IP-naprav. Zavedo se, da bo prostora hitro zmanjkalo. Tehniki so se odločili,
da ne bodo izumljali nekaj novega, temveč da bodo zadevo “popravili” v pravem tehniškem
duhu ;-) Rešitev je NAPT >
71. NAPT
torek, 22. oktober 13
...ki je omogočil nadaljno rast interneta, bolje rečeno, da je sploh preživel vse do danes.
71
72. uporabnost
obliži in proteze za IP-tehnologijo
NAPT
CIDR
čas
torek, 22. oktober 13
72
In danes imamo nov - zelo resen problem. Prostih v4-naslovov ni več. Zdi se, da je rešitev na
dlani >
73. uporabnost
obliži in proteze za IP-tehnologijo
IPv6
NAPT
CIDR
čas
torek, 22. oktober 13
> IPv6.
v6 so izumili že 1998! Imeli smo dovolj časa za preskok v nov razvojni cikel. Vendar ...>
73
75. uporabnost
obliži in proteze za IP-tehnologijo
IPv6
NAPT
CIDR
akaj se prehoda
Z
nismo lotili že pred
10 leti?
tranzicijski
mehanizmi
čas
torek, 22. oktober 13
Žal ne. Predolgo smo odlašali in danes smo v dilemi pred komaj pregledno kopico
tranzicijskih pripomočkov, protez IP-tehnologije. Zakaj? Odgovor poiščemo z vprašanjem:
Katera v6-aplikacija (storitev?) je bila takrat najpogosteje uporabljena? ...>
75
82. statični tuneli skozi IPv4
IPv6
tunnel broker server
IPv4
IPv4
protocol 41
IPv6
IPv4
privatni IPv4
uporabniki
NAT
ponudnik storitev
internet
torek, 22. oktober 13
[pojasni delitev na uporabnike, ISP in internet]
v hrbtenici samo v4, pri uporabnikih NAT. v6 skozi statične (6in4) ali dinamične (6to4)
proto-41 tunele. Statične tunele nudijo razni Tunnel Brokerji (a la HE, SixXS).
82
83. dinamični tuneli skozi IPv4
IPv6
tunnel servers/relay routers
192.88.99.1
IPv4
IPv4
protocol 41
2002:<ipv4>::
IPv6
IPv4
privatni IPv4
uporabniki
NAT
ponudnik storitev
internet
torek, 22. oktober 13
Pri 6to4 je v4-naslov del v6-naslova 2002::/16 - skupaj /48, potreben je javen v4-naslov,
anycast do najbližjega strežnika/prehoda 192.88.99.1 (relay router).
83
84. IPv4 preko IPv6
DS-Lite
MAP
IPv6 preko IPv4
LISP
6rd
stateful
stateless
torek, 22. oktober 13
Bolj “resni” kandidati. ISP mora imeti globalno IPv6-povezljivost.
V tabeli so tehnološki triki razvrščeni po dveh kriterijih. Favorit je zgoraj desno.
LISP ni programski jezik (leto mlajši od Fortrana ;-)), temveč Locator/Identifier Separation
Protocol: IPv6 @Facebook
84
85. stateless tunel skozi IPv4 - 6rd
IPv6
6rd-prehod
IPv4
IPv4
IPv6
IPv4
privatni IPv4
uporabniki
NAT
ponudnik storitev
internet
torek, 22. oktober 13
[pojasni delitev na uporabnike, ISP in internet]
6rd: v4 v hrbtenici, pri uporabnikih NAT. v6 skozi samodejne proto-41 tunele. Stateless
preslikava med naslovi. Namesto 2002::/16 globalni prefiks + nek IPv4-blok. Problem:
dodatno delo za ISP-je, vendar le zaradi v6 (!?) Stroški za 6rd prehode ...
85
86. stateless tunel skozi IPv4 - 6rd
IPv6
6rd-prehodi
IPv4
IPv4
IPv6
IPv4
privatni IPv4
uporabniki
NAT
ponudnik storitev
internet
torek, 22. oktober 13
... število prehodov in stroški se večajo ob širjenju v6 -> kontraproduktivno (v nasprotju s
ciljem preiti na zgolj-v6) in nesmiselno.
Zamenjajmo vlogi v4 in v6 >
86
87. stateful tunel skozi IPv6 - DS-Lite
IPv4
veliki NAT
IPv6
IPv6
IPv6
IPv4
privatni IPv4
uporabniki
ponudnik storitev
internet
torek, 22. oktober 13
> ...in _premaknimo_ NAT44 s CPE na veeelik usmerjevalnik ISP-ja (CGN). v4 promet z
internetom posredujemo skozi v6 tunel. Problem: še vedno ohranjamo v4 in NAT44,
nedeterministično usmerjanje - nekatere aplikacije dajejo prednost v4 (skozi NAT!) pred
native v6, stateful. Velik problem: CGN!
Poskusimo se znebiti CGN in zasnovati nekaj, čemur bi lahko rekli “stateless DS-Lite” >
87
88. “stateless DS-Lite” - MAP
IPv4
MAP
IPv6
IPv6
• lasten IPv6-prefiks
• en sam javen IPv4-naslov
• nabor TCP/UDP vrat
IPv6
IPv4
NAT
privatni IPv4
MAP CPE
uporabniki
torek, 22. oktober 13
ponudnik storitev
internet
88
(marketinški naziv - stateless DS-Lite) NAT44 ohranimo pri uporabnikih/organizacijah, ki
uporabljajo privatne v4-naslove (tako in tako je že tam ali pa še bo) in ga dopolnimo s
statičnim algoritmičnim prevajanjem med v4-naslovi z nizom TCP/UDP vrat in v6-naslovom
(kot A+P). Na WAN strani CPE je zgolj v6. Organizacije si delijo iste v4 WAN naslove, vendar
ima vsaka svoj nabor vrat. Zadaj NAT. Enkapsulacija v v6, de-enkapsulacija na ISP-jevi MAP
napravi (npr. ASR 1k).
Problem: ne odpravlja problema izrabe naslovnega prostora, ga pa v veliki meri olajša;
krčenje nabora vrat; ne dela brez dual-stack-a. Je pa stateless! Popravki na CPE so minimalni.
MAP naprav je lahko več in so porazdeljene po mejah ISP-jevega omrežja.
89. MAP - preslikava IPv6-naslova → IPv4-naslov + vrata
}
14 bitov
IPv6-naslov
/42
izbran IPv6-prefiks
/56 /64
ID-organizacije
IPv4-naslov
za IPv6-naslove v organizaciji
TCP/UDP vrata
dopolnjeno
do 32 bitov
izbran IPv4-prefiks
ID-nabora
vrat
biti uporabnika
}
/32
}
/22
biti uporabnika
4 biti
10 bitov
http://6lab.cisco.com/map/MAP.php
torek, 22. oktober 13
89
Tehnologija MAP veliko obeta, zato kratka razlaga.
Organizacija ima (dodaten) javen v6-prefiks znotraj katerega razporedi svoja lokalna v6-omrežja. Ta prefiks je
sestavljen iz nekega v naprej definiranega dela in ID-ja organizacije (unique). Tako zgrajen v6 naslov se preslika v
v4-naslov /32 in niz TCP/UDP vrat. In obratno - 1:1. Podobno delitvi omrežij v CIDR, le da gremo od /32 naprej v
bitno polje vrat. Nabor vrat je izbran tako, da so well-known vrata (pod 1024) rezervirana za strežnike.
Primer: 16 organizacij si deli en v4-naslov, 16384 v /22. Vsaka lahko uporabi ∼4000 vrat.
90. Katera tehnologija je prava?
•
•
•
•
•
torek, 22. oktober 13
Ali ima IPv6 prednost?
Ali opuščamo IPv4?
Ali zagotavlja kakovost storitev med prehodom?
Je razširljiva, nadgradljiva?
Koliko stane?
90
Pri DS-Lite in MAP je v6 v prednosti. Vse dosedaj opisane tehnologije temeljijo na dualstacku-u in nujno potrebujejo v4. Kakovost je povezana s kompleksnostjo translacije. Staless
tehnologija je razširljiva in cenejša, stateful nikakor ne (potreba po strojnih virih raste z
naraščanjem števila sej).
91. Kaj pa NAT?
torek, 22. oktober 13
Bogokletna (bolje rečeno: arnesokletna) misel!
91
93. vstavljanje IPv4-naslova v IPv6-naslov
192. 168. 2. 33
}
zapišemo šestnajstiško in
vstavimo v IPv6-naslov
}
prefiks za translacijo
NAT64
2001:db8::/
32
20 01: d b8: c0 a8: 2 21::
2001:db8:100:/
40
20 01: d b8: 1
2001:db8:122:/
48
20 01: d b8: 1 22: c0 a8:
2001:db8:122:300::/
56
20 01: d b8:
1 22:
3 c0:
a8: 2 21:: /96
2001:db8:122:344::/
64
20 01: d b8:
1 22:
3 44:
c0: a8 02: 2100:: /104
2001:db8:122:344::/
96
20 01: d b8:
1
22:
3 44::
2001:db8:122:344::/
96
20 01: d b8:
1
22:
3 44::
c0: a8 02:
/64
21:: /80
2: 2100:: /88
c0 a8: 2 21
/128
192. 168. 2. 33 /128
/32 40 48 56 64 72 80 88 96 104 112 120 128
torek, 22. oktober 13
93
IPv4-embedded naslov: IPv4-naslov vstavimo v IPv6-naslov. Pri tem moramo poznati NAT64-prefiks in dolžino tega prefiksa.
IPv6-naslov se začne z NAT64-prefiksom znane dolžine, nato sledi 32-bitov IP4-naslova, ki so, odvisno od dolžine NAT64-prefiksa, razširjeni z 8
ničelnimi biti. Priporočamo uporaba javnega NAT64-prefiksa, RFC priporoča /40 pri ponudnikih internetnih storitev (1/256 prostora tipičnega ISPja z alokacijo /32), /56 v organizacijah z alokacijami /48 oz. /96 za interno stateless translacijo znotraj organizacije, kjer so vsi IPv4-translatable
naslovi na skupni povezavi.
V priporočljivem primeru, kjer je dolžina NAT64-prefiksa /64, se IPv4-naslov preslika v IPv6-omrežje /104.
Usmerjevalnik v tem primeru oglašuje IPv6-omrežje /104 ali krajši prefiks, npr. /96, če bi imeli v organizaciji več
sistemov z IPv4-translatable naslovi, ki izvirajo iz istega IPv4-subneta, npr. iz 192.168.2.0/24.
V primeru, ko je network specific prefix /96, morajo biti biti med 64 in 71 enaki nič. Najbolje je, da se izbere
prefiks /64 in se ga dopolni s 4 okteti ničel. Različica z /96 ima tudi najbolj pregleden zapis.
94. vstavljanje IPv4-naslova v IPv6-naslov
IPv4-embedded naslov
/96
/120 /128
izbran NAT64-prefiks
IPv4-naslov
IPv4-omrežje
/24
torek, 22. oktober 13
/32
94
Za preslikavo se dogovorimo za nek t.i. NAT64-prefiks, običajno /64 ali /96. v6 naslov
dobimo iz v4-naslova tako, da ta prefiks dopolnimo s celotnim v4-naslovom. Vsak v4-naslov
lahko preslikamo v v6 in iz vsakega tako sestavljenega v6-naslova lahko razberemo vanj
vstavljeni v4-naslov.
95. vstavljanje IPv4-naslova v IPv6-naslov
“IPv4-embedded” naslov
/96
2001:db8:122:344::
192.168.2.
/120 /128
33
IPv4-naslov
192.168.2.
33
/24
/32
torek, 22. oktober 13
Primer: preslikava v4-naslovov iz /24 v v6 /120.
Iz tako sestavljenega v6-naslova lahko izluščimo v4-naslov (kar seveda ne velja za poljuben
v6-naslov!).
95
96. stateful NAT pred odjemalci - NAT64/DNS64
IPv6
NAT64 prefiks: 2001:db8:122:344::/96
IPv4-naslovi za NAT: 192.168.2.0/24
2001:db8:122::1 →
2001:db8:122:344::193.2.1.87
192.168.2.33
193.2.1.87
IPv4
→
2001:db8:122::1
AAAA(strežnik.si) = ?
2001:db8:122:344::193.2.1.87
2001:db8:122::1
DNS64
AAAA(strežnik.si) =
IPv4-converted:
2001:db8:122:344::193.2.1.87
uporabniki
→
193.2.1.87 →
192.168.2.33
193.2.1.87
IPv4-converted:
2001:db8:122:344::193.2.1.87
NAT64 prefiks: 2001:db8:122:344::/96
omrežje
ponudnik vsebine
torek, 22. oktober 13
Delovanje NAT64/DNS64. Zgolj v6-odjemalci komunicirajo z zaprašenimi zgolj-v4 strežniki.
Ker poljubnega v6-naslova ne moremo prevesti v v4-naslov, potrebujemo stateful NAT.
Stateful = drago in z omejitvami :-(, olajševalna okoliščina: NAT64 se lahko razporedi po
lokalnih omrežjih.
96
97. Vaja 8
• Katero NAT64-predpono uporablja DNS64strežnik dns64.arnes.si?
- Poizvedite po nekaj AAAA-zapisih (IPv4-converted
IPv6-naslovih) strežnikov, ki nimajo javnih IPv6naslovov, na primer www.nlb.si, 24ur.com,
www.microsoft.si, ...
(priloga, str. 13)
torek, 22. oktober 13
97
98. stateless NAT64 pred strežniki - NAT46
IPv4
NAT64 prefiks: 2001:db8:122:344::/96
2001:db8:122:344::192.168.2.33
2001:db8:122:344::193.2.1.87
192.168.2.33
193.2.1.87
IPv6
→
→
192.168.2.33
IPv4-translatable:
2001:db8:122:344::193.2.1.87
A(strežnik.si) = 193.2.1.87
193.2.1.87 →
192.168.2.33
2001:db8:122:344::193.2.1.87 →
2001:db8:122:344::192.168.2.33
NAT64 prefiks: 2001:db8:122:344::/96
uporabniki
omrežje
ponudnik vsebine
torek, 22. oktober 13
NAT64 lahko uporabimo tudi v nasprotni smeri (recimo temu NAT46)- pred zgolj-v6
strežniki. V tem primeru je zelo učinkovit, saj za prevajanje med v4 v v6 ni potrebno beležiti
in upoštevati posameznih sej -- vsak v4-naslov lahko algoritmično in deterministično
prevedemo v unikaten v6-naslov.
98
99. Minister za ajpi opozarja:
“Prekomerna uporaba NAT-a škoduje razvoju internetnih storitev!”
NAT = zlo
O tveganju in neželenih učinkih se posvetujte s strokovnjakom za omrežno
tehnologijo in storitve.
torek, 22. oktober 13
99