Публічная старонка праверкі IP адказвае на адно пытанне, і звычайна не на тое, якое вы задалі. Яна паведамляе адрас выхаду, які ўбачыла старонка; яна не кажа, ці працуе маршрут IPv6 праз тунель, ці хост аддаў перавагу IPv6 або адкаціўся, ці выключаная праграма пайшла іншым шляхам. Аўтарызаваны рэсурс, які вы кантралюеце, адказвае на больш вузкае пытанне належным чынам, бо вы бачыце абодва канцы. Інструкцыя ніжэй — пра атрыманне высновы, якую можна абараніць, а не пра зялёны вынік.

Крок 1: скажыце, які шлях IPv6 вы тэстуеце

Скажыце гэта адным сказам. Запыт да ўласнага адрасу IPv6 сервера тунеля тэстуе тунель; запыт да хоста за выхадам тэстуе выхад IPv6 выхаду; запыт да прыватнага адрасу IPv6 тэстуе ўнутраны маршрут.

Гэта тры розныя сцвярджэнні, і адзін паспяховы запыт не можа пацвердзіць усе. Выберыце тое, што мае значэнне для рашэння перад вамі, і запішыце гэта, перш чым нешта запускаць. Калі турбота ў тым, ці не працякае IPv6 вакол тунеля, пытанне пра выбар маршруту хостам, а не пра дасяжнасць выхаду. Калі турбота ў тым, ці можа далёкі бок дасягнуць унутранай службы, выхад не мае значэння.

Крок 2: пераканайцеся, што хост выбірае менавіта гэты маршрут

ip -6 route get 2001:db8:1::10 друкуе маршрут, адрас крыніцы і інтэрфейс, які выкарыстала б ядро, і менавіта ад гэтага факту залежыць рэшта тэсту.

Існаванне інтэрфейса не тое ж самае, што яго выбар. Двайныя хосты маюць табліцу прыярытэтаў, і /etc/gai.conf у Linux можа змяніць, якое сямейства пераможа для імені, што развязваецца ў абодва.

Крок 3: выкарыстайце легітымную мэту і імя

Калі вы тэстуеце HTTPS, выкарыстайце імя хоста, на якое выдадзены сертыфікат, і пакіньце праверку ўключанай; пераход да літаральнага адрасу, каб тэст прайшоў, адключае менавіта тую праверку, якая даказвае, што вы дасягнулі патрэбнага хоста. Дыягнастычная служба, якую вы кантралюеце, што адказвае на вядомае імя з сапраўдным сертыфікатам, — самая чыстая мэта. Яна таксама дае радок журнала на баку сервера для супастаўлення, чаго старонні правяральнік ніколі не дасць.

Запусціце запыт у форме, якая паказвае выкарыстаны адрас: curl -6 -sS -o /dev/null -w '%{remote_ip} %{http_code}\n' https://test6.example.net/. -6 прымушае сямейства, і так вы аддзяляеце «IPv6 не працуе» ад «IPv6 не быў абраны».

Для чыстай праверкі дасяжнасці, дзе дазволены ICMPv6, дастаткова ping -6 -c 3 2001:db8:1::10. Ён даказвае шлях і нічога вышэй за яго.

Крок 4: суаднясіце абодва канцы

Калі ў вас ёсць доступ да абодвух канцоў, запусціце tcpdump -ni any ip6 and host 2001:db8:1::10 на кліенце і эквівалент на рэсурсе, з адзнакамі часу, і пераканайцеся, што адзін і той жа паток бачны на абодвух. Менавіта гэта ператварае праўдападобны вынік у доказ: погляд кліента сам не адрозніць адказ ад рэсурсу ад адказу ад нечага пасярэдзіне. Трымайце захоп вузкім — адна мэта, каб вывад заставаўся чытэльным і чыясьці старонняя сесія не трапіла ў файл.

Паўтарыце тэст пасля перападключэння, калі турбота ў тым, ці перажыве палітыка перазапуск. Стан маршруту і файрвола, ужыты адзін раз пры падключэнні, можа адрознівацца ад стану, які ўжываецца паўторна, і розніца праяўляецца толькі на другім падключэнні.

Праверце выпадак збою асобна, калі гэта патрэбна. Тунель, які блакуе IPv6 пры падзенні, і той, што яго ўцекае, — розныя канструкцыі, і толькі адна з іх можа быць пацверджана паспяховым запытам.

Крок 5: запішыце, што тэст не даказаў

Пяты крок — запісаць, што тэст не даказаў, і менавіта гэтая частка звычайна выпадае. Паспяховы тэст прыватнай канцавой кропкі не даказвае публічны выхад IPv6, не даказвае паводзіны DNS і не ахоплівае праграмы, якія вы выключылі з тунеля. Кожнае з гэтага патрабуе сваёй мэты і свайго назірання. Заўвага, што кажа «IPv6 працуе» пасля аднаго запыту да аднаго хоста, не з'яўляецца высновай; гэта здагадка з адзнакай часу.

Запіс, які варта захаваць, кароткі: мэта, імя, адрас крыніцы, які выбраў хост, назіраны аддалены адрас і час. RFC 7359 разглядае, як праверыць, што адпаведны шлях IPv6 сапраўды прыдатны да выкарыстання, і гэтая інструкцыя набліжаецца да гэтага стандарту прасцейшымі сродкамі. Калі выснова патрабуе публічнага правяральніка, каб быць праўдай, тэст быў недастаткова канкрэтным.

Падобныя артыкулы