Zanimiva vprašanja o IPv6, ki se začnejo porajati ko si nov protokol malo bolj ogledamo…

Na neuradnem forumu T-2 je oseba pod psevdonimom “gulikoza” zacela zastavljati vprasanja, ki so tipična za prve korake v učenju in razumevanju IPv6. Vprašanja so tako široko generična, da jih bom z dovoljenjem avtorja objavil tudi tukaj, vas bom pa povabil, da v komentarjih nanje odgovorite in razvijete okrog teh vprašanj širšo razpravo…

Uporabnik “gulikoza” je na forumu zapisal:

————
Malo razmišljam in se mi zadeve zdijo vedno manj rožnate:

1. RDP

Veliko delam iz terena doma, preko RDP. Doma mi lepo lavfajo aplikacije, mail, imam vse certifikate, vpn povezave, … kjerkoli sem, se s z laptopom ali kar kakšnim random računalnikom povežem domov in delam. Da nimam od povsod odprt RDP port, se SSHjam na server (kjer so ustrezne fail2ban skripte za preprečevanje brute force napadov) in preko tunela sforwardam RDP na domačo kišto. Na IPv6 bom imel povsod zunanji IP, samo vpišem svoj IP in…eh? Mi bodo hekerji dan in noč hekali RDP? Na SSH imam relativno dolg pass, na windowsih pač ne, bom enkrat nek bug ali nek nezaščiten account na winsih omogočil vsem prost dostop do moje mašine? Odpade mi torej prva avtentikacija (in log, ker točno vidim kdaj od kje in za koliko časa sem se heftal), na public mašinah sem zdownloadal Putty, se sshajal, remotal na 127.0.0.1:3390 preko tunela in delal. Ko sem šel, sem putty izbrisal, razen fingerprinta v putty cachu na mašini ne ostane dosti – vsak ki odpre rdp bo videl, da sem se priklapljal na 127.0.0.1:3390…tako pa ostane notri moj ip. Razen če delam pač tako kot do sedaj…

IPv6 ima mandatory IPSEC. Vendar v praksi še nisem zasledil kako to deluje. Je to na nivoju aplikacije, operacijskega sistema, …? Mora vsaka aplikacija posebej podpirati IPSEC, bom namesto da zdownloadam Putty in se povezal na server s sabo na ključku nosil certifikat ali pa preshared key za IPSEC?
Kako je z VPNji? Načeloma VPN, vsaj zaradi dostopa do omrežja ni več nuja, ampak še vedno je pa nuja zaradi enkripcije in avtentikacije. Kako narediš site-to-site VPN, samo naštimaš v crypto-map destination IP? Bosta routerja potem avtomatično kriptirala promet? Kaj pa s trgovskimi potniki, kako njih varno povežeš v podjetje da ti realtime naročila padajo v bazo?

2. Torrenti in podobno

Nič več NATa, super zadeva, vsi “high-id”. Samo v firewallu odprem port na svoj IP…hm, kater IP? Za tiste, ki ne vejo, IPv6 stateless autoconfig načeloma kartici določi 2 IPja. Eden je relativno statičen in je zgeneriran iz prefixa + mac adrese kartice. IP je statičen vsaj toliko časa dokler ne zamenjaš mrežne, kar je nekako podobno kot če si MAC adreso vpisuješ v DHCP. Drugi IP se zgenerira popolnoma na random in se tudi menja vsake toliko časa (12 ur?). Za razliko od prvega je namenjen outgoing povezavam, saj če je IP vedno vezan na MAC adreso postane trackanje uporabnikov trivialno in deluje celo če zamenjajo omrežje, saj host del ostane enak . Kateri IP bo torej uporabljal torrent odjemalec? Nastavim v fw odprt port za “ta-statičen” IP in pozabim, da lahko kdorkoli naredi točno listo česarkoli sem kdajkoli posnel na torrentu, tudi če sem bil v drugem omrežju in bo imel točen računalnik z MAC adreso in vsem? Ali dam v firewall drugi, temporary IP, ki se menja vsakih 12(?) ur? Podoben problem z vsemi ostalimi aplikacijami, ki si dinamično po svoje odpirajo porte. NATa ni več, skini še firewall in orgija se lahko začne . FW na vsaki napravi posebej? Nightmare za administracijo in patchanje, poleg tega če je naprava okužena, padejo vse zaščite.

3. Ko naenkrat 18.446.744.073.709.551.616 (/64) IPjev postane premalo

Osnovni subnet v IPv6 je /64. Drobljenje na manjše subnete je načeloma možno, vendar potem ne deluje več stateless autoconfig. Pri IPv4 si zaradi NATa lokalno omrežje lahko postavil kakor si hotel. Pri IPv6 si omejen na tisto kar ti ponudi ISP. Če dobiš en /64 subnet, je to to. Nič več ločenega wirelessa v svojem subnetu, nič več DMZ za serverje…vse skupaj je en velik /64 subnet.
Ok, mogoče sem poseben primer, malo bolj napreden uporabnik. Trenutno, roughly, imam IPv4 omrežje razdeljeno takole:
– subnet za statične mašine
– subnet za WIFI (ločen zaradi multicasta)
– DMZ za serverje
– Virtualno omrežje za VMWare

Med vsakim omrežjem je firewall, ki natančno predpisuje kaj gre lahko kam. Da bi postavil enako na IPv6, bi rabil 1 /62 ali še bolje 2x /63 subnet (zakaj, beri točko 4.). S tem bi dobil 4 /64 subnete. Kaj če bi hotel postaviti še en ločen WIFI (dandanes, ko so WIFI routerji poceni, se mi je že nekajkrat zgodilo, da je nekdo hotel imeti 2 različna WIFI subneta, enega z dolgim geslom ki ga itak ne ve in ga ima vpisanega v laptop in drugega, ločenega, samo z dostopom do interneta, z enostavnim geslom za obiske, ki se nikoli ne znajo priklopit na prvi wifi ker noben razen mene ne ve gesla in ker bi lahko v takem primeru vseeno našli hidden stash pr0na nekje na nekem NASu). Potrebe po subnetih se ti povečajo, in moraš “fehtati” ISPja da ti dodeli večjo alokacijo, menjati vse public IPje itd…

Lahko vzameš nekaj za rezervo, nekje se je govorilo, da bo standardna rezidenčna alokacija /56 in /48 za firme. Kar naenkrat pa potem IPv6 ni več tako velika zverina, kjer je IPjev več kot atomov na zemlji (ali kjerkoli že). ISPji načeloma dobijo /32 alokacijo. Iz /32 sestaviš 16,7M /56 alokacij ali komaj 65K /48 alokacij. Veliko mogoče za slovenijo in T-2, vendar ne za nekega recimo US ali kitajskega kabelskega operaterja. Glede na to, da se včasih že za povezovalne segmente priporoča kar cel /64 subnet, je tukaj izguba IPjev astronomska. Trenutno se IPji dodeljujejo iz enega 2000::/3 subneta, kar pomeni približno 2^28 /32 alokacij (dobrih 260 miljonov). Glede na to, da bodo večji ISPji pokurili sigurno več kot eno /32 alokacijo, da se /32 dodeljuje tudi ne-ISPjem (več v naslednjem odstavku) in da je ostalih 7 /3 ali reserved ali future use (kako je z future use vemo iz IPv4…ko pride future ni useable, ker so si vsi označili za future use ) naenkrat IPv6 ni več tako astronomsko velik, ane.

SLO trenutno kuri 33 /32 alokacij, če sem prav našel. Poleg ISPjev se najdejo na seznamu tudi Domenca, Kontrola zračnega prometa, RTV SLO, FE UNI, itd., ki niti pod razno ne spadajo v kategorijo ISPja. Zakaj rabi nekdo, ki ni ISP, kar za 4 miljarde (2^32, toliko kot je sedaj vseh IPjev!) /64 subnetov? Hja…točno ne vem, pač, lahko da se sedaj tala /32 tako kot se je včasih /8…in bomo čez 30 let jih grdo gledali kaj so hoteli s celim /32 subnetom. Druga, najbrž verjetnejša možnost je, da vzameš /32 zato, ker rabiš povezljivost preko različnih providerjev. Spet posledica da ni NATa. Danes je redundanco lahko postaviti. Na router daš nek tracking, ki v primeru izpada primarne preklopi na rezervno povezavo. Za oddaljene PE enote, narediš več tunelov za vsako povezavo posebej in s kakim enostavnim EIGRP routaš promet čez pravi tunel, tisti ki je pač trenutno up. Na IPv6 je zadeva težavnejša. Ko izpade primarna povezava, izpade cel tvoj naslovni prostor. Razen če imaš svojega. Alo fethat RIPE za /32 subnet in svojo AS številko, nastavit routerje za BGP… (čeprav sem nekje bral, da naj bi RIPE za take primere raje dodeljeval /48 iz enega posebnega subneta, ampak to samo RIPE, ostali pač dajo /32 pa fertik maša). Skratka, redundanca postane nightmare, IPjev pa dobiš like miljonkrat preveč.

4. Redundanca v povezljivosti

Trenutno na T-2 dobiš poleg statičnega tudi nekaj dinamičnih IPjev oz. če si firma celo več statičnih. To pride prav zaradi redundance v povezljivosti. Če jaz drkam svoj wifi router (ki je recimo tudi glavni router) mi pade celo omrežje. Če imam pa recimo serverje in DMZ posebej priklopljeno na T-2, tisto potem ni več odvisno od mojega routerja, da mi pa pade samo lokalno omrežje pa recimo za čas flašanja routerja ni take panike. Skratka point of failure se skrči na single točko, to je router, ki je na T-2 zaveden kot gateway za moj prefix. Če mi, bognedaj, skuri vse strela, lahko sedaj priklopim laptop, ki je bil varno v torbi na T-2 switch (recimo da je preživel) in bom surfal preko dinamičnega IPja. Na IPv6 rabim najprej dobiti nek router, ki bo spet znal usmerjati moj /64 prefix. Lahko sicer nastavim statično IP povezovalnega segmenta…ne vem, ali je to ok? Imam slabe izkušnje s tem, ker sem nekoč za neko šolo konfiguriral router in mi je vse delalo fino fajn, razen router sam ni prišel nikamor (nisem mogel narediti backupa, ntp se ni sinhroniziral…). Ko sem si razbijal glavo in na koncu vprašal na Arnes zakaj mi to ne dela, so mi rekli da jasno da ne morem surfati z IPjem povezovalnega segmenta (čeprav je bil čisto klasičen public IPv4). Dobro, sem pač na samem routerju nastavil SNAT za outgoing povezave na routed subnet, vendar od takrat nekako IPje povezovalnih segmentov pustim pri miru . Skratka, ne samo da bi bil en /64 zame premajhen, za podobno postavitev kot jo imam sedaj, bi rabil nekaj ločenih večjih subnetov, ki bi jih preko različnih routerjev usmerjal v pravi subnet.

Ali pa pač vzameš od ISPja stateless konfiguracijo namesto routed, vržeš vse v en subnet in čao bao? Deluje potem to tako, da ti pač ISP direktno dodeli prefix in se tvoje mašine direktno autoconfigurirajo? Kje imaš potem firewall?

Obstaja sicer varianta, da rečeš stateless autoconfigu adijo in grem na dhcpv6. V tem primeru si lahko iz enega /64 subneta naredim 72.057.594.037.927.936 (2^56) klasičnih 256 IP velikih /120 subnetov. Dovolj za vse privat wifije in dmzje . S statičnim IPjem v dhcpv6 rešim še 2. točko. 1. točko pač delam tako kot do sedaj, 4. točke pa to ne reši. Poleg tega me označijo za konzervo, ker ne znam ven iz IPv4 okvirov

V glavnem, zdi se mi, da IPv6 nekatere probleme rešuje zelo slabo oz. jih še dodatno zakomplicira. Dobro, ni NATa, vendar pa je NAT vseeno sem ter tja kar uporabna zadeva. Če bi na grobo aplikacije razdelil na 3 dele, dobim:

1. strežniške aplikacije (mail, dns, www)
2. uporabniške aplikacije z dinamičnim dodeljevanje portov (torrent, videokonference, chat, …)
3. uporabniške aplikacije brez incoming povezovanja (klasično surfanje…)

1. IPv6 rešuje super. Za https server rabiš za vsak virtualhost svoj public IP (tisti extension še ni povsod podrt…). Tukaj jih imaš v enem subnetu kar 2^64, dovolj da daš vse serverje, na svoj IP. In vsi so public, nobenega NATa, FTP se ne pokvari zaradi ne-transliranja port komand, itd…
2. se rešuje zelo slabo. Stateless config še dodatno zakomplicira, da klient mašine nimajo statičnih IPjev. Ali odpreš firewall na cel rang IPjev, ali pa je vse skupaj popolnoma zaprto…dvomim da bo v tem segmentu manj težav kot je bilo pri IPv4. Sploh ker ti bojo naprimer na public točkah in podobno pomojem zaprli vse incoming porte, boš na istem kot sedaj.
3. je že z NATom delal čisto ok…včasih se mi to res zdi najbolj enostavno – klientu lahko daš katerkoli IP, ga NATaš na ven, bolj ali manj si ga uspešno že samo s tem obvaroval pred odprtimi RDP in VNC porti ali čem drugim, če bo samo surfal mu je prav malo mar kako in kolikokrat se nekaj NATa.
————

No, go6 community, komentarji in odgovori so več kot zaželjeni.

Jan Žorž

P.S: Lahko bi jaz na to odgovoril, ampak potem ne bi bilo zabavno in nihče se ne bi nič naučil 🙂

Vaš IP naslov (ali ste na IPv6 ?):
3.14.70.203

Comments

  1. BlazR
    March 9th, 2011 | 14:00

    K tocki 2:
    Predvidevam, da je to na windowsih. Torej, za autoconfiguration obstajata dva nacina dodeljevanja naslova. Eden je iz MAC naslova mrezne kartice (EUI64), drugi pa je privacy nacin, ki ne uporablja MAC naslova ampak neko random stevilko, ki ne razkriva MAC naslova in s tem kaksno opremo imamo. Windowsi imajo to moznost vklopljeno po defaultu, in ti naslovi se zaradi varnosti regenerirajo. Torej bi moral na windowsih nekako disable-at to privacy opcijo, ali pa nastaviti staticen IP.

  2. Robert
    March 9th, 2011 | 15:28

    1. točka, kakor je sam ugotovil, pač še naprej uporabljaš firewall. Je pa vseeno bolje, da ga tisti mali % uporabnikov, ki ga rabi vklopi, kot pa da je prisiljeno vkloplen za vse na ipv4 preko NAT ane? Svoboda izbire + za ipv6.

    2. točka je problem routerja in ne ipv6 protokola. Dober res da imaš dosti autoconfiguration standardov že napisanih, ampak spet, ti so za 99.9% ljudi kot defult na routerjih. Bolj precizni uporabniki se komot igrajo, kot so se sedaj. Meni najboljši način avtokonfiguracije bi bil statičen in privacy hkrati. Torej da za vsak računalnik dodeli IP iz MAC in številko “pomnoži” z neko random(ali magari manual, če menjavaš router recimo, da dobiš spet iste IPje) in tako dobi končni IP, ki bo vedno enak, če boš enako manual cifro vpisal, to je pač na router proizvajalcih da se z tem igrajo, ipv6 je mlad, se bo ža kak standard prijel v par letih, če EUI64 ne bo zadoščal. Pri ipv4 je tudi bilo naknadno še dosti reči dorečenih.

    3. /64 na subnet je pa lapsus v designu, z katerim se strinjam. Če so se že odločili za 128bitov, bi komot jih za subnet naredili samo /32. In čisto vsak bi dobil /64 (torej /32 subnetov). IMO veliko bolša rešitev. Ali pa /48 subnet tudi bolša rešitev pa /16 subnetov.

    Ali pa so res prišli do kake teze, da morda pa v prihodnosti le bomo imeli kak /64 velik subnet(nanoroboti swarm?:D)

  3. March 9th, 2011 | 21:55

    Sicer je bilo tudi vprašanje na forumu glede vzpostavitve PPTP-ja in tako vzpostaviti/širiti IPv6. Težava je res radvd ampak obstaja workaround z skriptami if-up in auth-up za ppp. Prav tako deluje samo na vista sp1 and higher-prej ni bilo implementacije za IPv6 na pptp protokolu v windows-ih.

    mojih 5c 🙂

  4. j
    March 11th, 2011 | 08:48

    netsh interface ipv6 set global randomizeidentifiers=disabled store=persistent

  5. March 12th, 2011 | 15:27

    1. Uporabi firewall. Ni treba da imaš odprt dostop iz Interneta do RDP mašine. Še vedno lahko napišeš pravilo ki preprečuje promet navznoter na to mašino in se ssh-jaš na linux seerver. To kar zna NAT zna čisto vsak še tako bogi firewall, tudi na routerjih za 20EUR 🙂

    1.1 IPsec na IPv6? http://linuxtopia.org/online_books/network_administration_guides/Linux+IPv6-HOWTO/Linux_IPv6_HowTo_x2376.html

    2. verjetno si na windowsih. Večno pravilo, že iz IPv4 sveta: Če se na server vzpostavljajo povezave iz Interneta – nastavi IP naslove ročno.

    3. Default bo verjetno /56 za rezidente (256 /64 omrežij) in /48 za poslovne stranke.
    3.1 /32 je najmanjša alokacija možna. Večina operaterjev je registrirala /32 brez da bi si prebrala pravila igre in ugotovila, koliko v resnici lahko dobijo. Od tu naprej je na voljo nekaj različnih možnosti, kako te zadeve popraviti, a bo treba najprej prebrati pravila, zapisana v RIPE-512 🙂

    4. Lahko si na laptopa nastaviš ročno IPv6 naslov od routerja, gw in lepo delaš. V omrežjih kjer je ppp boš itak dobil IPv6 naslov namesto routerja, prefix delegationa pač ne boš razumel in ga ignoriral, a dostop do interneta boš imel. V DHCPv6 okolju boš spet dobil IPv6 naslov (+RA za gw), spet boš ignoriral PD in zadeva ti bo delovala.
    4.1 /56 boš menda imel dovolj za igranje, mar ne?
    4.2 Ne razbijaj /64 na manjše subnete. Weird things may happen 🙂
    4.3.1 Da
    4.3.2 To ni problem protokola, to je problem aplikacij. Aplikacije se bodo morale adaptirati, ne protokol ki je star 10 let.
    4.3.3 Skregano z idejo Interneta. Se ne bom ponavljal, NAT je skoraj komplet uničil osnovno idejo Interneta.

    IPv6 dela čisto lepo in rešuje večino težav, le naučiti se je treba njegove zmožnosti in specifike. Počasi bo treba pozabiti poglede na networking iz IPv4, saj takšno razumevanje povzroča v IPv6 samo težave in negodovanje. Ravno zaradi tega je učenje IPv6 težje, kot bi si nekdo to lahko predstavljal – več kot veš o IPv4, težje je. Najprej se je treba “od-naučiti” določene zadeve in se jih potem lotiti čisto znova.

    Včasih je to lahko kar udarec za ego, tudi to smo že videli in doživeli.

    Zato pa obstajajo izobraževanja, tečaji, zato imamo v sklopu IPv6 summitov brezplačne IPv6 delavnice, veliko informacij se dobi tudi skozi predavanja na samem v6 summitu.

    Sem na kaj pozabil odgovoriti?

  6. March 17th, 2011 | 19:31

    Tole se direktno ne veže na vprašanja pač pa bolj kot opozorilo vsem oz. prikaz ‘pospreševanja’ nekaterih ISP-jev pri nas. Mislim, da ib ti morali biti prvi, ki i zagovarjali in podpirali širitev novega protokola…drugače ne bomo hitro prišli it IPv4.

    Že 10dni si mailam z enim izmed ponudnik pri nas in ne boste verjeli…želijo 240€ za ‘vzpostavitev’ IPv6 na obstoječi opremi, ter dodatnih 70€ mesečno za Ipv6 dostop …ne moreš verjet. Po mojem nasprotovanju so ceno spustili na 85€ vzpostavitve in 50€ letnega ‘vzdrževanja’ 🙂 Mislim, da je ta vzdrževalnina povsem neupravičena sja gre za zagotavljanje dostopa do interneta, kot ima stranka zagotovljeno že sedaj. joj, vsi bi radi meli nekaj zase še pri teh migracijah…

    lpM

  7. March 18th, 2011 | 08:36

    @Marko: Mi lahko prosim na jan@go6.si posredujes ime operaterja/ponudnika? Do sedaj mi še nihče ni omenil, da bi kdo zahteval posebej plačilo za vzpostavitev dostopa do IPv6 in tako bi moralo tudi ostati.

    Lahko se pa to vprašanje zastavi tudi na 5. Slo IPv6 summitu, ki bo 11. Maja v Tehnološkem parku na Brdu pri Lj.

  8. March 19th, 2011 | 18:11

    Se strinjam. Gre za ponudnika Tušmobil in je tudi mene presenetilo. Se mi zdi da to precej upošasnjuje širitev novega protokola. Prav tako pa ne vpliva na obstoječo storitev, da bi bil potreben ankes ali dodatno plačilo.

  9. March 23rd, 2011 | 12:58

    Samo dodatek…so nekako opustili idejo o mesečnem zaračunavanju in ostajajo na vzpostavitvenem znesku.

  10. March 23rd, 2011 | 13:46

    Njihov IPv6 prostor ali tvoj? Zaracunavanje vzpostavitve je normalna, dodatno zaracunavanje protokola na mesec pa ne. Paketi so paketi, 100Mbps je 100Mbps, stejejo vsi paketi.

  11. March 27th, 2011 | 20:02

    Se strinjam. Gre pa za njihov prostor – še bolj neprimerno po moje.

Leave a reply

website