IPv6 deployment за среден по големина content provider

by Vasil Kolev

На един разговор на ИББ седнах да обяснявам на един голям привърженик на IPv6 къде са проблемите с deployment-а за които аз знам, и какво би било да добавя ipv6 поддръжка в единия проект, с който се занимавам (среден по големина content provider). Така както го гледам, моят случай поне от техническа гледна точка има най-малкия брой мотики за настъпване и пак е доста неприятен, някой може да опише другите случаи (офисна мрежа, интернет доставчик).
След техническата част ще напиша моето мнение защо бих или не бих се занимал с това.

Като начало, става въпрос за едноцифрено число router-и, двуцифрено число switch-ове, трицифрено число сървъри и трафик от порядъка на десетки Gbps. Има някакво количество in-house написан софтуер, ползва се gentoo linux като дистрибуция.

1) Поддръжка на IPv6 стек
– Рекомпилация на всички kernel-и на сървъри, понеже по подразбиране няма, един рестарт. Действието е сравнително поносимо и може да се направи в рамките на една седмица.
– По принцип router-ската операционна система има поддръжка, трябва да се провери дали за текущата и версия има известни проблеми. Понеже е писана от оня производител, дето почва с C, не се ползва най-последната версия заради разни забавни нови проблеми, които те дописват. Upgrade на това нещо е по принцип поносим с малка загуба на свързаност, поради redundant management модулит.
– На switch-овете няма какво да се пипа – тяхната layer3 работа е само management, той може да върви и по ipv4 без никакви проблеми.

Като цяло, нещо, което може да се направи в рамките на две седмици.

2) Свързаност
По принцип в момента имаме 5 transit доставчика и 3 peering такива. За нормална работа ми трябва от два транзита да имам v6 свързаност, което по принцип е възможно при няколко от тях, като процедурата за да се разбереш с тях е крива, бюрократична и бавна. Поради малкото количество на тоя трафик нямам нужда от peering-и, или те могат да се договорят допълнително и да не са спънка.
По-важния момент е транзитите ми да имат такава свързаност с Cogent и Hurricane Electric, така че да виждам целия съществуващ ipv6 (тези две автономни системи в момента не се виждат една-друга по v6 заради малоумщина от страна на Cogent).
Друг момент ще е нови филтри и route-map-ове за различните v6-свързани неща, т.е. дублиране и преправяне на router-ската конфигурация за v6.

3) Адреси
Имам собствена автономна система и v4 адреси, процедурата за получаване на v6 адреси е сравнително проста и не би трябвало да отнеме повече от няколко дни.
Ще ми е нужно да си променя management базата, за да мога да раздавам и статични v6 адреси.

4) DNS
Основния ми DNS се движи от външен доставчик. Трябва да успея да му обясня да дава v6 отговори само ако е получил заявката по v6 или да си пренеса DNS-а при мен и пак да правя същото. Нито една от двете идеи не ме радва особено, въпреки че заради DNSSEC може да ми се наложи да направя второто.
Това е нужно поради все още съществуващите достатъчно хора, които си мислят, че имат ipv6 свързност, но реално стигат само до доставчика си и никъде повече.

5) Софтуер – писан от други хора
Повечето open-source софтуер, който ползваме поддържа v6 и е въпрос на рекомпилация и реконфигурация, което с gentoo е една промяна в portage и малко скърцане. Работа за седмица-две с изчистване на проблемите.
Не ми е известен еквивалент на geoip базата за адреси за v6, ще трябва да се пише нещо наново, вероятно в ip.ludost.net.
За анализ на log-овете ползваме google analytics, не знам там как е v6 поддръжката.

6) Софтуер писан от нас
Трябва всичко да се port-не да има v6 поддръжка.
– Като цяло повечето неща са лесни, в книгата на Стивънс (Unix Network Programming vol.1) има добро описание и информация как се прави.
– Имаме ftp сървър, който трябва да видим как ще му добавим подобна поддръжка (има вероятно разширение на протокола).
– Имаме вътрешни binary протоколи, при които трябва да се вземе предвид, че може да предават и v6 адреси и ще трябва да се променят. Бая е гадно и ще иска много внимателен update и едновременен upgrade на трицифрено число машини.
– Имаме да направим промени в базата дани в няколко таблици, за да можем да сложим v6 адрес. Някои от тях са огромни и не е ясно дали ще можем да направим нормално alter без да убием услугата поне за половин час.
(някой да знае за база, която може да прави alter на таблица без да я lock-ва за писане и четене?:) )
Това е мъка, гърч и тестове поне няколко месеца.

7) Тестове
Трябва да си намерим свързаност някъде в България, за да можем да направим пълен тест на всичките неща. Както съм отбелязал по-долу, откриването на такъв доставчик е сложна задача.

8) Поддръжка
– kill switch – нужен ми е начин да мога да върна бързо и сравнително безболезнено услугата до ipv4-only състояние. Причината е най-вече в това, че ipv6 реализациите не са минали същото тестване и проверки/проблеми, през които са преминали ipv4 нещата, и съответно можем да очакваме нещата като teardrop да се преродят в ipv6 вариант и да има всякакви гадни проблеми поне още известно време.
– Вариант за определени места да не давам отговори с v6 адреси изобщо, понеже
а) нямам свързаност до тях
б) връзката дотам е бавна (например някой windows е решил да си направи teredo тунел, който работи със скоростта на dial-up)
в) някакъв проблем в неговия v6 стек или по пътя води до някакви допълнителни проблеми
– Вариант за определени хора да могат по някакъв начин да избират да не ползват v6 към мен.
– Инструментариум за диагностика на проблеми, причинени от v6 – looking glass и т.н..

Сумарно си мисля, че за 6 месеца може и да се реализира. Също така може и да пропускам нещо важно :)

Интересното в този случай е, че само т. 6 при мен няма да я има при доста от малките корпоративни мрежи и при някои от средните, останалото си остава да се свърши, като има и допълнителни гадости. Както се вижда, не е особено проста задача и всяка стъпка може да създаде проблеми.

И защо бих искал да го направя?
Няма някакви сериозни причини, освен, че би ми било забавно. Няма потребители само на v6. Няма потребители, на които v6 свързаността да им е по-бърза от v4 свързаността. Има много малко крайни потребители на v6, понеже почти няма хардуер, който (като за краен тъп потребителски домашен router) да се справя със задачката. Има малко доставчици, които карат v6 истински (в България НЯМА такива – тези, които имат някаква свързаност не я дават към съществена част от крайните си клиенти, а само към много големи такива, където v6 е изискване за някакъв търг).

Реално погледнато, _вероятно_ академичните среди биха били единствения ми сериозен клиент за такива неща. Не мога да оценя доколко би си струвало само заради тях да се направи подобно нещо и колко ще са щастливи от моя трафик.

Нека и пак да кажа – аз съм реално по-лесен случай от останалите. Аз нямам крайни потребители за чиято свързаност да отговарям, имам две операционни системи (Linux и IOS), имам както и да го погледнем не повече от 5-6 типа различни машини, занимавам се с услуга която няма проблеми с NAT и не предава адреси в себе си (не ми се мисли каква ще е ситуацията със SIP или H.323) и реално за всичко, което имам поддръжката е възможна, т.е. нямам устройства, които да няма начин да поддържат v6.

За момента не съществува причина някой да иска да направи подобно нещо.
(не, “небето пада/ip адресите свършват” не е такава причина, но това ще иска отделен post, за да се обясни)

Tags: , ,

16 Responses to “IPv6 deployment за среден по големина content provider”

  1. Alexander Ivanov Says:

    Здрасти,

    бих съдействал за реализацията на подобна идея.
    Ако решиш действително да тестваш, пиши ми.

  2. Георги Чорбаджийски Says:

    Или както казвам на всеки, които ми казва магическите за него думи – ipv6, не се занимавай с тая глупост живота е твърде кратък, за да си губиш времето с неща дето няма да сработят никога (famous last words) :-)

  3. Vasil Kolev Says:

    @Alexander Ivanov, коя идея по-точно? Ако е за да подкарам ipv6 на услугата, предпочитам да си го правя сам по ред причини (все пак и ми плащат за това), но ако искаш да напишеш нещо по темата какво е да се подкара v6 в някой друг тип мрежа, кажи :)

    @Георги Чорбаджийски въпроса е какво може да се продаде на студенти. Ако можеше да им се продава порно, порно индустрията щеше вече да е прокарала v6 като стандарт…

  4. velin Says:

    ти явно не си пускал андю блейк на студенти, за това викаш че не може..

  5. Peter Rabbitson Says:

    @Vasil: Може ли по-подробно по темата “Небето пада”?

  6. metalista Says:

    6 месеца труд и то от хора, които знаят (или поне си вярват) е достаа работа за нищо резултат. :)
    Тез студенти трябва да са доста мазохистично настроени :)

  7. samyil Says:

    То, че небето не пада, не пада ! Ама сега искам една /24 и от RIPE искат статистика колко ип адреса имам заети, как ги предвиждам за бъдеще и като гледам може и да не ми дадат. От друга страна навсякъде звучи ипв6 бил по лек, ипв6 бил проектиран за мега-хипер незнам си какви мрежи но всички ти казват по добре не се занимаваи, че доникъде няма да я докараш. Така и така все някога ще се бори това нещо защото както се предвижда осветлението на входа, кухненския робот и плазмата след няколко години трябва да имат ип адреси а с DNAT и upnp не може да се покрие всичко. Приветствам и ако въобще се случи ще следя този проект с нетърпение дори и само повърхностни записки да има.

  8. Тони Стоев Says:

    Васко, благодаря, за пространното обяснение. Под “голям привърженик на IPv6” разпознавам себе си.
    Всъщност правя кампания за IPv6 откровение. Искам да си поставим въпросите ИСКРЕНО и ОБЩЕСТВЕНО, щото е ясно че ЛИЧНО на никой не му трябва IPv6. А трябва ли ни общо на всички?

  9. Vasil Kolev Says:

    @Тони Стоев, какво значи “искрено и обществено”, освен странен епитет? Обществото грам идея си няма от въпроса. Искрено – виждаш искрените реакции на хората и какво мислят по темата. Също така не виждам защо ни “трябва” v6 на всички, това звучи като комунистически лозунг…

    За събитие – какво точно ще постигнеш, освен много говорене на глупости? Всички, които би трябвало да подкарат някаква v6 свързаност и на теория могат да го направят са проверили ситуацията и са взели за себе си решение, с какво точно смяташ да ги убедиш в обратното?

  10. Тони Стоев Says:

    Много хора, които не са мрежови специалисти, но имат общо с онлайн бизнеса, вече са чували за проблема с изчерпването IPv4 адресите и сляпо разчитат на решението IPv6. Други, още повече на брой, при първото научаване казват: “Е, ще измислят нещо дотогава.”. А техните интегратори/доставчици на услуги са взели решение ЗА СЕБЕ СИ, че няма да правят IPv6 и ще чакат да опре ножът до кокала.

    Васко, кампанията, която подех е за образоване на хората, които ще бъдат засегнати, но са в неведение, че IPv6 не е готово решение. Тази кампания е комунизъм. Както и поддържането на Интернет инфраструктурата.

    А тук броя отзивите по отношение на IPv6 начинанието ти:

    Александър Иванов – положителен
    Георги Чорбаджийски – отрицателен
    Металиста – отрицателен/критичен
    Самуил – положителен

    2:2 (за наште ;-)

    Събитието смятам да протече по следния начин: събирам ви в една зала топ анти-IPv6 спецовете, онлайн инвеститорите, разчитащи на растежа на Мрежата, и колкото място остане – диви peer-to-peer юзъри; заключвам залата отвън и чакам да дойде китайската нова година. Приемам предложения за усъвършенстване на плана. Целта е да стигнем до най-доброто решение.

  11. Vasil Kolev Says:

    @Тони Стоев, няколко неща:
    1) поддържането на internet инфраструктура няма нищо общо с комунизма. Нито с преебаните реализации, нито с оригиналната идея. Ако имаше, китайците щяха да имат най-добрата връзка на света.

    2) хората, дето са засегнати, реално погледнато не им пука. Те няма да усетят кой-знае какво дори никога да не сложим v6.

    3) какъв е точно смисъла на такова събиране? да ни бият, докато кажем “ще го направим” ли, т.е. диктатура на недоразбралите потребители?

    4) и в крайна сметка, ти какво мислиш, че може да се измисли като решение, нещо магическо, което да реши проблема ли? Няма такова, иначе досега хората да са се сетили за него. Смисълът от подкарване на v6 няма да се появи в такива дискусии, а в нужда на реалния свят от end-to-end истинска свързаност. Докато не се появи такъв казус (например – мобилни оператори палят v6 и малкия content като вестници и т.н. започва да си подкарва такава свързаност) няма грам смисъл от подобни събития.

    5) решението за “като ножа опре до кокала” не е точно такова, най-малкото защото няма нож все още, а да се подкара v6 е силно непрактично в момента (поради липсата на крайните потребителски устройства, които могат да го говорят). Това нито една от горе-изброените групи не може да го промени.

    Т.е. ако може, пиши с малко мисъл, това дотук е основно глупави идеи и да се опитват да строиш сгради с говорене на тухлите.

  12. Тони Стоев Says:

    Василе,

    1) Общи неща на поддържането на Интернет инфраструктурата с комунизма са например:
    – поддържането на регистрите на IANA;
    – поддържането на root DNS сървърите.

    2) Ако не въведем подходящо решение навреме, потребителите ще усетят поскъпване, а доставчиците отлив на потребители.

    3) Смисълът на публично събиране е хората да разберат за проблема без да се паникьосват и да си поискат IPv6 или някакво магическо решение.

    4) Магическото решение е въпрос на вяра. Решението IPv6 е въпрос на достатъчно време, както ти описваш тук. Никаквото решение води към разрив в системата.

    5) Това с липсата на крайни потребителски устройства определено не е вярно. Съвременните операционни системи поддържат IPv6. И съвременните браузъри също.

    А докато ние тук се обясняваме дали кокошката да изяде яйцето, китайците изкупуват IPv4 адресно пространство като бесни.

  13. samyil Says:

    Аз мисля, че идеята на Васил е по скоро иследователска отколкото практична пък и той още в първия абзац го загатва. Самият аз искам повече светлина по въпроса но от извънлабораторни условия дори бих се включил ако свързаноста ми позволява. (миналата година доставчика ми отказа – тази може да е размислил) Но въпреки всичко не гледам сериозно на това а по скоро да се занимавам в свободното време защото не бих експериментирал с клиентите си за нищо на света (само една мисъл за пропадане на нета ми събужда хипертонията). От друга страна искам всички клиенти да са с публични ип адреси защото на мен ми е по лесно а и пести ресурси но факт е, че 90% от тях не знаят въобще какво е това ип адрес (пък и не и е работа). Тоест стигаме до извода, че само доставчиците се интересуват от ipv6.

    Аз за себе си искам да изясня:
    1. Наистина ли ipv6 е по лек протокол ?
    2. Как стои въпроса с DNS, QOS и DHCP ?
    3. При миграцията мрежите трябва да са в някакъв хибриден вариант заради технологичното време за изпълнение но как точно ще си “говорят” ipv4 и ipv6 и кой ще бъде преводача (ясно е,че е маршрутизатора ама искам да го видя)

  14. Росен Карпузов Says:

    Ако IPv6 е по-лек, то тогава означава ли, че ще пести енергия?! :) да забъркаме и природозащитниците малко.
    А сега малко по-сериозно по върпоса:
    – по-леката работа за преминаване на пакетите по ИПв6 най-много да спести време, цената на хардуера никога не е бил проблем, когато друг го плаща. А и плащането на еднократна инвестиция винаги е аргументирана. Ако процесора изпълни наколко сметки по трафика по-малко то ще е за сметка на увеличен дебит на друга услуга т.е. нищо не пестим.
    – повече в6 адреси е интерсно за краен потребител, ако иска да сложи много видео камери например. Но има доста интелегентни устройства, които ще го направят и по в4 с NAT или VPN.
    – лично аз съм правил план за това как зад едно ИПв4 да сложа голяма локална мрежа и да прехвърлям адреси. За повечето интерсни услуги за крайния потребител няма да има ама никакъв проблем – FTP, HTTP, Mail и какво ли още не. Голяма част от услугите не са публични и може да се пуснат на друг порт различен от default.
    – Моя домашен wireless router е на повече от 5 години и ми върши чудесна работа. Но милия нищо не разбира от ИПв6, софтуера му е с BSD и явно няма да ми предоставят сорсовете му, за да го науча с какво се яде в6.

    И въпреки, че мога да оборя вкарването на в4 има причини поради които бих пробвал да вкарам в6 в една или друга организация:
    – Голям шум (ако ще и за нищо да е) – голяма реклама. Предлагането на в6 услуги разширява портфолиото на компанията. Когато се предизвика търсене вече ще има готово решение, което да предложим.
    – В къщи ми предлагат интернет с едно ИПв4, за допълнително плащам скъпо. Обаче на колко хора им пука за това. Повечето хора приемат факта и го преглъщат мислейки, че е незаконно да плащаш един абонамент, а имаш два компютъра. (Може в договора да забраняват втори комп., но прочетете внимателно)
    – Когато искам да направя тестова постановка и да взема 252 IP-та и да сложа на един LAN ще трябва да броя колко вече съм заел от своята клас C мрежа и дали няма да направя някой гаф. Ако имам 2-3 “излишни” мрежи ще си експериментирам на воля за някой и друг проект. Резервираните за локална мрежа може пък да не вършат точно тази работа, която аз искам.
    – Изведнъж се взима решение, че цялата организация, която е от 300 човека трябва да имат пълен достъп до личния си компютър, без посреднически услуги като VPN и т.н. просто да си има видимо от цял свят IP.
    – искам да спестя два такта на процесора.

    По-скорошното внедряване на ИПв6 означава по-скорошни проблеми и изчистването им. Един ден, едва ли не, може би, ако е рекъл Бог, може и да се спре ИПв4 от поддръжка. Тогава няма да е необходим стар протокол, но дотогава трябва да сме се замислили и за следваща такава миграция към по-голяма мрежа. Ако уникалните адреси няма да вършат работа вече. Ако един ден се наложи да има 1МБ (един мегабайт) файл, който да ми е само IP адреса и още толкова за маска няма да е много гот, колкото и да е бърза машината и скоростта на връзките. Докато не се получи реално внедряване само ще си говориме излишни приказки.

  15. samyil Says:

    Ще ми се малко по технически а не казусно да си говорим по темата. За всички е ясно, че ипв4 адресите не свършват а организацията майка затяга коланите на безхаберното раздаване досега. Незнам от къде е тази информация, че остават 7-8% защото по важно е колко се използват а те едва ли са и 50% (не ми се смята въобще колко общо са ипв4 адресите) За свършване пък на домейните четох в някакъв вестник и останах гръмнат (наказанието на журналиста трябва да е конфигуриране на виртуални хостове в байнд и апаче три безсънни нощи) и така нататък … Тоест истерията “небето пада” я има през определен период от време в някоя неграмотна статия с липса на източници и технически термини завършваща с колко лошо ще стане после.
    Със сигурност хора който пишат такива статии не правят разлика между публични и частни ип адреси както и технологиите SNAT, DNAT и UPNP които решават проблема на 90% от крайните потребители. В една мрежа малка или голяма когато е изцяло от публични ип адреси е много по лесна за конфигуриране и поддръжка както и за намиране на евентуален проблем. Колкото по просто толкова по добре когато през рутерите се товари само веригата FORWARD а сървърите за услуги HTTP и MAIL не са с пренасочени портове. Това е единственият блян за ипв6 в който има смисъл според мен.
    Затова съм против истерията и политизиране на идеята ипв6 но съм за, за един Български проект със срок на експериментален стадии.

  16. Тони Стоев Says:

    Предлагам ви да продължим темата във форум. Вече пренесох въпросите на Самуил: http://ipv6bg.eu/forum/index.php?topic=1.0

Leave a Reply