Archive for November, 2010

2010-11-26 v6sux

Saturday, November 27th, 2010

Понеже не ми стигна времето на lightning talk-а на OpenFest, ето едно по-подробно разписване на темата ми, “Защо мразим IPv6”.
Презентацията може да се свали от тук.

Ще започна със следната статистика по темата за IPv4 адресите:
Percentage of available address space announced: 62.1
Percentage of allocated address space announced: 65.4
Percentage of available address space allocated: 95.0
(weekly routing table report от 20ти ноември 2010)
Счита се, че някъде около април 2011та година IANA ще раздаде последните си останали /8 мрежи и изведнъж ще стане страшно. Това не значи, че RIR-овете нямат още достатъчно за раздаване, а и както виждате по статистиката от раздадените адреси още не всички се announce-ват, което ни дава още съвсем прилично количество време.
Дори обаче да свършат тотално за раздаване адресите, има съществуващи решения от типа на LSN (large-scale NAT) или CGN (carrier-grade NAT), две имена за почти същото, които ще помогнат да продължи растежа на мрежата, най-вече защото повечето трафик така и така е HTTP, който минава прекрасно през всякакви NAT-ове.
И, дори и да го нямаше това, пак Internet няма да спре, защото са свършили адресите, небето няма да падне, колкото и човека да се изредят да го кажат. Така че, аман от паника и натиск да се въведе нещо, което е пълно с глупости.

Разбира се, във IPv6 има и някои неща, които (може би по случайност) са хубави:
– прилично голямо адресно пространство, което позволява и да се отдели network locator-а в първите 64 бита
– премахната фрагментацията от router-ите и PMTUD е задължителна част от протокола, т.е. няма да има начин вече (малоумни) security експерти да казват “спрете всичкото ICMP”
– Няма (нужда от) NAT. Малко хора обичат NAT-а, и при подходящи stateful firewall-и спокойно ще може да се постигне същата функционалност.
– По-добра интеграция на IPSec (което трябва да се види доколко ще е полезно/работещо)

Като почнем с проблемите обаче става интересно:
– четейки документацията, човек остава с впечатлението, че са се старали (на принципа на Intercal) да направят нещата максимално различни от IPv4, точно като проява на синдрома “Not invented here”. Вместо ARP се използва ND (протокол, който работи върху ICMPv6), по подразбиране се прави stateless address autoconfiguration и по принцип в началната конфигурация на host-овете има добавен един още един елемент – router-а, който да раздава разни неща. Т.е. началния setup изглежда по следния начин:
машината тръгва
генерира си по някакъв начин 64 бита и с тях си прави link-local адрес, който през ND проверява дали е уникален, вдига го и се join-ва в multicast група
(навсякъде broadcast-а е заменен с multicast, да се чуди човек защо)
в multicast групата чува локален router пак по ND протокола (т.нар. router advertisement), който дава prefix и още няколко параметъра, вкл. дали да си говори с dhcp сървър (два бита, дали да иска адрес от него, и/или да иска и други параметри)
нататъка според двата бита решава как да си говори с dhcp сървър

Понеже dhcp-то се счита от IPv6 хората за нещо срамно, поддръжката му и работата му са бая странни и даже има разширение (още експериментално) да се раздава и DNS сървър от router-а (т.е. нека да омажем нещата колкото ни е възможно). Поради всичките тия неща на HAR миналата година открихме как най-лесно се раздават IPv6 адреси на nameserver-и чрез писането им на листи и лепенето им по разни стени.

Изобщо като цяло поне за мен го няма principle of least surprise. Би трябвало да се вземе в предвид как много хора са правили IPv4 мрежи, имат идея как работят и че принципите в тях не случайно са станали такива след прилично дебъгване и доизпипване.

– стари грешки – бяха направили задължителен т.нар. Type 0 routing header (т.е. source routing), добре, че преди около година се сетиха да го махнат. Source routing-а е прекрасен начин за реализация на tcp spoofing атаки.

– Като цяло има малко свързаност все още, особено в България – ако сте краен клиент е почти невъзможно да получите IPv6 свързаност вкъщи директно от доставчика си, не само защото те не са го подкарали навсякъде, а и защото крайните router-чета, които повечето хора ползват вкъщи просто не го поддържат. Всъщност има две причини да има IPv6 свързаност в България – едната е ентусиазма на разни хора, другата е, че в изискванията на Софийския Университет за Internet доставчик това е задължително условие и така бяха успели да накарат БТК да подкарат някаква такава свързаност.

– Липсва v6-only съдържание, с малки изключения (някои академични неща).

– IPv6 свързаността в почти всички случаи е с по-ниско качество от IPv4 – разчита се твърде много на тунели, тези тунели минават през всякакви странни места и винаги имат някакъв overhead. Всъщност, знам само за един случай, в който е валидно обраното – един доставчик, дето по една и съща тръба доставял v4 и v6 и за v6 нямало shaper-и. Като добавка, повечето router-и (особено тия, които Cisco прави) имат по-ниска производителност на IPv6 пакети.
Тази причина е основната да не виждам смисъл да подкарвам за моя проект IPv6 свързаност.

– Има и разни други неща, които слава богу (на сървърите) бяха преборени от здравия разум (например да няма PI адреси и multihoming да се прави като на всяка машина се дават по един адрес от всяка мрежа, към която сте свързани и чрез SHIM6 и черна магия машините да избират от кой адрес с кого да си комуникират, т.е. да изнесем routing-а от router-ите).

Като цяло, deployment-а на IPv6 се дължи на една сериозна група ентусиасти и на маркетингов натиск от тях и техни сподвижници. За момента нито е лесно и удобно, нито е особено смислено за повечето хора. Когато стане достатъчно лесно и удобно да се подкара и стане достатъчно нормална част от internet-а, може да се мисли по въпроса, но дотогава просто не си струва.

бележка: още съм скапан от openfest и разни други работи, така че може да не съм обяснил нещо достатъчно точно, ако имате въпроси/изяснявания, коментирайте.

2010-11-24

Wednesday, November 24th, 2010

Направихме lightning talks и в курса по мрежова сигурност, ето първа и втора част на записа.

За повечето неща малко търсене в google ще намери цялата нужна информация (казвам го, понеже съм скапан и не ми се рови за разни връзки).

Като си отспя и ще напиша това, дето говорих на openfest и не ми стигна времето.

In other news, следващата ни лекция е във вторник, че тоя четвъртък бил празник на университета.

2010-11-22 Openfest 2010

Monday, November 22nd, 2010

Мина Openfest.

Веселбата започна в петък, когато отидохме да поставим техниката. Аз бях приготвил router-а, бях написал конфигурацията на switch-а и оставаше само да се припали wireless-а (сутринта SpNet бяха опънали кабелите и бяха route-нали каквото трябваше). Имаше бая кримпване, пускане на финални жици и някакъв много крив бъг в hostapd, което Мишо Пунов ползва в неговите AP-та, та не можахме да подкараме WPA2 и трябваше да оставим wireless-а в отворен режим. Имаше и някакъв странен проблем с mesh-натите AP-та и връзката им до switch-а (който така и не хванахме) и вечерта стояхме до 8, след което на другата сутрин довършвахме нещата. Това е първоначалната схема на мрежата, имаше малка промяна, че едно от AP-тата беше закачено директно на switch-а.
От петък вечер е и лафа “Само да ми свърши батерията и си тръгваме” (Мариян викаше да си ходим, Мишо искаше да додебъгне wireless-а).
(някъде има снимка на антените, които бяха по 1.50м)

В събота станахме рано-рано и се почна събитието. Имаше малко неща за финализиране сутринта, оказа се, че единия лаптоп, който мислехме да ползваме за видеозаписи не му работи firewire (но имахме резерва), трябваше да пуснем кабел до лектора в едната зала (който бяхме забравили предния ден), но като цяло почнахме на време и нещата изглеждаха добре.
След това се оказа, че в малката зала лекторите говорят много тихо и съответно нищо не се чува, та спешно взехме моето кубе от баса, комбинирахме го с един микрофон-брошка и така можеше да се чува нещо и там. Нищо друго не се счупи тоя ден…

В неделя пак имаше ранно ставане и весели моменти (например, че на едната камера входа от микрофоните сме го включили във входа за слушалки, а като оправихме това се оказа, че там има бая мощен предусилвател и се наложи да настройваме по-подробно), по някое време па Пенчев се спъна точно в тоя кабел и леко го скъса… Вече ми се губи какви други (забавни и не толкова) проблеми имахме, ама май нямаше нещо, с което да не се справим :)

Като лекции имаше доста забавни неща, аз даже изслушах една (тази на Кънев за MongoDB, чак се амбицирах да припаля едно да видя дали е наистина толкова сложно за админстване). Записите ще ги качим тия дни, всичко е encode-нато и в момента се реже.

А събота и неделя вечер бяхме запазили Кривото и добре си изкарахме, в неделя особено останахме до бая късно (а аз мисля, че се събудих още пиян). Спи ми се до смърт и обмислям пак да си легна…

Който иска, да ме допълва, на мен май бая неща ми се губят.

2010-11-19 To Mega Therion

Friday, November 19th, 2010

Видях още една група от списъка за гледане на живо.

Залата беше малка и вентилацията и – не съвсем достатъчна (пишеше в информациите, че е добра, ама представляваше три отворени прозореца и два изхода), но пък концертът беше страхотен. Чуваше се както трябва, едната подгряваща група беше интересна (другата не я хванах), а самите Therion бяха размазващи. Направиха доста от интересните си парчета, а накрая завършиха с “Rise of Soddom and Gommorah” и разбира се “To Mega Therion”. Направо ми е трудно да опиша как звучаха, с всичките различни вокали и инструменти, но определено си струваше да се иде.

А те може и пак да дойдат. Пак ще се иде:)

2010-11-17

Wednesday, November 17th, 2010

Миналия четвъртък започнахме TCP (първа и втора част), довършихме го вчера (трета част) и направихме един преговор. Утре следва тест.

А през това време лудницата е пълна, защото OpenFest е тая събота и неделя, та тая сутрин трябваше да стана в някакви безбожни часове, че да идем на среща от 8:30.
(всъщност, като ми казаха 8:30, аз си помислих, че ми говорят за вечерта)

2010-11-10

Wednesday, November 10th, 2010

Вчера довършихме routing протоколите и IPv6. Пресрочихме си времето заради въпроси, особено заради този защо има такъв проблем с deployment-а на IPv6 (съответно сложих линк на сайта към онова, дето бях писал по въпроса).

2010-11-05

Friday, November 5th, 2010

Днес говорихме за последните неща по IPv4 и за routing протоколи (свърши ни времето точно преди атаките върху BGP). Първа и втора част на записа.

(около днешната лекция се зачетох в разни неща по темата ipv6 и честно казано, хич не се радвам че някой ден ще го подкарвам, пълно е с глупости)

2010-11-03

Wednesday, November 3rd, 2010

Вчера продължихме с лекциите за IP – ето първа и втора част на записа. Остана ни малко от атаките.
(проектора в 200 тотално се е строшил, ама не сме събрали желание да се качим до него и да видим какво му е счупено (вероятно някой вентилатор)

Смених желязото на marla с ново, с повече място и по-мощно. Да ни е честито :)
(и вероятно ще напиша отделен post по темата колко страшно е да си rsync-ваш passwd файл от друга машина)

2010-11-02 marla

Tuesday, November 2nd, 2010

Мигрирах apache на marla от suexec до mpm-itk модула, ако някой има оплаквания, да казва.

Също така планирам да сменя желязото тия дни, ще видя как точно ще предупредя за downtime. Предполагам няма да отнеме повече от два часа, по текущите тестове.
(и между другото, rsync е велик инструмент)