Як працює ipkiwi

Майже все, що робить ipkiwi швидким і приватним, зводиться до одного рішення: посередині немає сервера. Ця сторінка пояснює, що зайняло його місце.

Origin-сервера немає

У звичайного сайту десь є origin-сервер — машина в одному конкретному місті, до якої врешті-решт доходить кожен запит. CDN перед нею допомагає, але все персональне однаково мусить прийти з origin, тож відвідувач із Джакарти чекає повного кола до того місця, де стоїть ця машина.

В ipkiwi origin-сервера немає. Увесь сайт — це набір статичних файлів, розкладених мережею Cloudflare, а код, що їх персоналізує, виконується на тому самому edge-сервері, який прийняв ваше з’єднання. У Сан-Паулу, Варшаві чи Джакарті машина, що вам відповідає, — за кілька мілісекунд.

Як персональна сторінка залишається кешованим файлом

Сторінки з вашими даними — це ті самі статичні файли, що й усе інше. Коли таку сторінку запитують, edge дістає її з кешу й переписує просто в потоці, підставляючи в розмічені місця значення, взяті із самого з’єднання: вашу адресу, країну, на яку вона зареєстрована, провайдера, протокол, про який домовився браузер.

Нічого не збирається, не запитується з бази й не рендериться. Файл побудовано один раз, під час розгортання; уся робота на запит — підставити кілька десятків рядків у потік, який уже йде.

Тому відповідь лежить у HTML, а не з’являється за мить. Тому ж немає зсувів верстки: ніщо не приїжджає із запізненням, бо ніщо не довантажується.

Логувати нічого

Немає ні бази, ні журналу запитів, ні скрипта аналітики. Це не стриманість — логу просто нікуди лягти. Код працює стільки, скільки триває один запит, і після його завершення нічого не зберігає.

Вашу адресу зчитують, бо без цього відповісти неможливо, використовують, щоб написати вашу сторінку, і вона зникає разом із відповіддю. Ми її не бачимо, і немає запису, який можна було б видати, втратити або в нас вимагати.

Перевірте самі

Слова про швидкість і приватність нічого не коштують, тому сторінки-інструменти вимірюють себе самі. Рядок під відповіддю показує три числа, зняті вашим браузером із запиту, який ви щойно зробили: за скільки відповів edge, скільки запитів пішло на інші домени і скільки cookie було записано.

Останні два завжди нулі. З інших доменів не завантажується нічого — ні шрифтів, ні скриптів, ні тегів, ні фреймів, — і це перевіряється в панелі мережі браузера секунд за десять.

Ще дві речі, які варто спробувати: вимкніть JavaScript і перезавантажте — відповідь залишиться на місці; потім відкрийте вихідний код сторінки й знайдіть свою адресу просто в HTML.

Ті самі дані в JSON

Усе, що є на сторінці, доступне за однією адресою — без ключа, без реєстрації та без обмежень для звичайного використання:

curl https://ipkiwi.com/api/me

/api/me.txt повертає лише саму адресу, для скриптів оболонки. Обидва працюють на тому самому edge, відповідають за ті самі кілька мілісекунд і логуються рівно настільки, наскільки й сторінки: ніяк.

Часті запитання

Чому це швидше за інші сервіси перевірки IP?

Бо нічому не потрібно нікуди їхати. Більшість сайтів завантажують сторінку, запускають скрипт, звертаються до API і лише тоді малюють відповідь. Тут відповідь уже є в HTML, коли він до вас доходить, і записала її та сама машина, що прийняла ваше з'єднання.

Чи працює сайт із вимкненим JavaScript?

Відповідь — так. Ваша адреса, розташування, провайдер і параметри з'єднання містяться в самому HTML. JavaScript додає лише те, чого сервер знати не може: розмір екрана, часовий пояс браузера — і вимірювання вгорі сторінок-інструментів.

Як узагалі можна не вести логів?

Їх нікому писати. Код живе рівно стільки, скільки триває один запит, і після нього нічого не зберігає. Не зберігати дані — це менше роботи, ніж зберігати, а не більше.

Звідки беруться вимірювання на сторінках-інструментах?

З вашого ж браузера. Час відповіді й кількість запитів беруться з Navigation Timing і Resource Timing та описують запит, який ви щойно зробили. Ми цих чисел не бачимо.

Пов'язані інструменти