IPv6 диапазонундагы дарек сыноо баракчасында көрүнөт, туннель аны ачык ташыбайт, ал эми интернеттеги эң белгилүү кеңеш — IPv6ны бардык жерде өчүрүү. Ал буйрук панелди чын эле унчукпай кылат. Бирок ал кирүү тармагы көз каранды болушу мүмкүн болгон протоколду да алып салат жана дарек чыныгы агын суу болдубу, link-local интерфейс дарегиби же өз ишин аткарган resolverби — билбей калтырат. Туура көзөмөлдү үч шарт аныктайт жана алардын бири гана тосууга алып барат.

Курал чындыгында эмнени өлчөгөнүн аныктаңыз

Эң кеңири тараган жалган коңгуроо — link-local дареги, ал fe80: менен башталат жана IPv6га жөндөмдүү ар бир интерфейсте болот, машина IPv6 аркылуу интернетке чыга алабы же жокпу — маанилүү эмес. Ал интерфейс тизмелеринде жана кээ бир колдонмо диагностикасында көрүнөт жана трафик жолуңуз тууралуу эч нерсе айтпайт.

Экинчи жалган коңгуроо — fc00::/7 ичиндеги уникалдуу жергиликтүү дарек, ал тармактын ичинде колдонулуучу жеке диапазон. Хосттун бардык даректерин басып чыгарган курал аны коомдук даректин жанында кубаныч менен тизмелейт. Тез окуган адам аны агын суу деп атайт, анан жок маселеге бир саат жумшайт.

Үчүнчүсү такыр жалган коңгуроо эмес. Туннелден тышкары интернетке жеткен глобалдык дарек — чыныгы агын суу, жана бир нерсе чечпестен мурун аны өлчөөгө татыктуу:

ip -6 addr show scope global
ip -6 route show default
curl -6 -sS --max-time 6 https://ifconfig.co

Эгер биринчи буйрук глобалдык даректи басып чыгарса, ал эми үчүнчүсү туннелдики эмес коомдук IPv6 дарегин кайтарса, туннелден тышкары чыныгы жолуңуз бар. Эгер биринчиси link-local жазууларынан башка эч нерсе басып чыгарбаса, оңдоого агын суу эч качан болгон эмес.

Көзөмөлдү үч шарт аныктайт

Чечим «IPv6 жакшы» же «IPv6 жаман» эмес. Чечим — сиз үч кырдаалдын кайсынысында экениңиз, жана ар биринин туура жообу башка, ката кетирсеңиз баасы да башка.

SituationCorrect controlCost if you disable IPv6 instead
Exit has no IPv6, host doesBlock IPv6 deliberately in the tunnel policySame visible result, no documentation of intent
Exit carries IPv6, host leaksRoute IPv6 into the tunnel and verifyYou lose IPv6 reachability entirely
Access network is IPv6-onlyChange nothing; use the tunnel's IPv6Machine loses connectivity completely

Биринчи сап — адамдар адатта айткысы келген нерсе жана ал мыйзамдуу. Чыгымы IPv6ны колдобогон кардар хосттун өз IPv6 трафигин унчукпай сыртка чыгарбашы керек, анткени бул документтелген кош стек агын суусу. Маселе аны жарыяланган саясат катары тосууда, ядродо протоколду өчүрүүдө эмес. Көрүнүүчү натыйжа бирдей жана кийин текшерүүгө боло турганы бирөө гана.

Үчүнчү сап — жалпы кеңеш активдүү зыяндуу болгон жер. Уюлдук операторлор жана кээ бир үй байланыштары IPv4 багыттары үчүн котормосу бар IPv6-only тармактарын жүргүзөт. Ал жерден IPv6ны алсаңыз, тармак сунуш кылган жалгыз ташууну аласыз, бул сиз оңдоп жаткан бузулуудан алда канча жаман токтоп калууну жаратат.

Эгер чыгымда IPv6 жок болсо, атайын тосуңуз

Кардардын өз механизмин артык көрүңүз, анткени ал туннель көтөрүлгөндө так колдонулат жана ал кулаганда кайтарылат. OpenVPN буга опция сунуштайт, ал эми iptables башка кардарлар үчүн барабардык эрежеге ээ:

block-ipv6
ip6tables -A OUTPUT -o eth0 -j REJECT --reject-with ipv6-port-unreachable

Нускама профилге таандык; эреже текшерип, алып салса боло турган firewallга таандык. Экөө тең жабык абалда ишке ашпайт, бул сизге керек, жана экөө тең конфигурация diffинде көрүнөт, ал эми иштетүү скриптине көмүлгөн ядро sysctl көрүнбөйт.

Эмне үчүн бар экенин жазып коюңуз. Түшүндүрмөсүз тосуу эрежесин IPv6 башка нерсеге керек болгон кийинки адам алып салат, анан агын суу унчукпай кайтат.

Эгер чыгым IPv6 ташыса, аны маршруттап, эки үй-бүлөнү тең сынаңыз

IPv6 ташуу — сервер колдосо, жакшыраак жооп, жана анча кыйын эмес. Талп: туннель интерфейсинде ошол үй-бүлөнүн дареги болушу жана анын демейки багыты физикалык интерфейстен тышкары эмес, туннелдин ичине багытталышы керек:

ip -6 route get 2606:4700:4700::1111
ip -6 route show default
curl -6 -sS --max-time 6 https://ifconfig.co
curl -4 -sS --max-time 6 https://ifconfig.co

Маршрутту издөө — чечүүчү сыноо: эгер ал туннель интерфейсин атаса, IPv6 трафиги ташылып жатат. Андан кийин эки curl чакыруусу ар бир үй-бүлө эмнени көрөрүн ырастайт, жана аларды салыштыруу — эки жол тең азыр бир чыгымдан чыгып жатканын далилдөө ыкмасы.

Ийгиликтүү туташууда токтобоңуз. Туннелди кайра туташтырып, кайра текшериңиз, анткени сервер аны баштапкы конфигурацияда гана жиберсе, түртүлгөн IPv6 багыты кайра орнотууда жоголушу мүмкүн. Андан кийин бир четтетилген багытты текшериңиз, анткени split-tunnel эрежелери — эки үй-бүлө эң көп келишпеген жер.

Эгер кирүү тармагы IPv6 гана болсо, тийбей коюңуз

Кээ бир тармактар IPv6 гана берет жана түзмөк IPv4 кызматтарына оператор тараптагы котормо механизми аркылуу жетет деп күтөт. Мындай машинада IPv6ны өчүрүү коопсуздукту жакшыртуу эмес; ал кандайдыр бир нерсеге барган жалгыз жолду алып салат. Бул эч кимге керек болбогон сыноо жыйынтыгы үчүн өзүңүз жараткан токтоп калуу.

Бул катанын симптому өзгөчө жана жагымсыз: туннель орнотулуп жаткандай көрүнөт, аттарды чечүү иштейт, бирок эч нерсе жүктөлбөйт. IPv6 өзгөрүүсүнөн кийин муну көрсөңүз, жөндөөнү дароо калыбына келтирип, диагностиканы башка жерде улантыңыз.

Эмнени тандабаңыз, чечимди профилде же firewallда ачык кармаңыз, аны чыгым чындыгында колдогон нерсе менен байланыштырыңыз жана RFC 7359 кош стек талкуусу сүрөттөгөн кош стек жүрүм-турумун жазып коюңуз. Жарыяланган тосуу — саясат. Өчүрүлгөн протокол — эч ким аудиттей албаган айланып өтүү, жана сыноо баракчасынан экөө тең бирдей көрүнөт.

Тектеш макалалар