--- date: 2026-05-06 type: snippet tags: [proxy, iproyal, gost, foxyproxy, apple, google] --- # IPRoyal Royal Residential через локальный gost-relay Постоянный «вечный» способ использовать IPRoyal residential без проблем с FoxyProxy (он режет длинный пароль с password-модификаторами `_country-X_session-Y_lifetime-Z`). Решение: запускаем локальный `gost` который слушает 127.0.0.1:PORT и форвардит на IPRoyal с правильным паролем зашитым в команду. Браузер тогда указывает только `127.0.0.1:PORT` без auth. ## Установка ```bash brew install gost # macOS, ~1 мин # или apt install golang && go install github.com/go-gost/gost/cmd/gost@latest ``` ## Базовая команда ```bash gost -L "http://127.0.0.1:PORT" \ -F "http://USER:PASS_country-XX_session-LABEL_lifetime-30m@geo.iproyal.com:12321" ``` Где: - `PORT` — локальный порт для FoxyProxy (выбираешь сам, например 9999) - `USER` / `PASS` — base creds из IPRoyal Dashboard → Royal Residential → Proxy List - `XX` — ISO-код страны **lowercase** (`tj`, `fi`, `us`, `de`...). `country-Tajikistan` НЕ работает. - `LABEL` — любая метка sticky-сессии (одна метка = один и тот же IP в течение `lifetime`) - `lifetime-30m` — IP не меняется 30 минут. Доступно `1m`-`120m`. ## Twin-port схема (рекомендуется) Запусти **два gost одновременно** на разных портах для разных стран — переключаешься между ними в FoxyProxy одной кнопкой: ```bash # Порт 9999 → TJ (для Apple ID) gost -L "http://127.0.0.1:9999" \ -F "http://OYB0rKuOA5qnNS6o:fXtn1jdd0xIt2EPf_country-tj_session-applemod_lifetime-30m@geo.iproyal.com:12321" & # Порт 9998 → FI (для Google Antigravity) gost -L "http://127.0.0.1:9998" \ -F "http://OYB0rKuOA5qnNS6o:fXtn1jdd0xIt2EPf_country-fi_session-googlemod_lifetime-30m@geo.iproyal.com:12321" & ``` В FoxyProxy создаёшь **два профиля**: | Title | Type | Host | Port | |---|---|---|---| | 🇹🇯 IPRoyal-TJ | HTTP | 127.0.0.1 | 9999 | | 🇫🇮 IPRoyal-FI | HTTP | 127.0.0.1 | 9998 | Username/Password — **пустые** (gost уже знает auth). ## Подтверждённые рабочие IP (история) | Дата | Страна | Sticky-метка | Реальный IP | ASN | |------|--------|--------------|-------------|-----| | 2026-05-03 | TJ | `appletj01` | 185.177.2.130 (Dushanbe) | AS51346 Tojiktelecom | | 2026-05-03 | TJ | `appletj02` | 94.199.21.228 (Khujand) | AS24722 Babilon-T | | 2026-05-04 | TJ | `applemod` | 109.75.61.86 (Dushanbe) | AS47139 INDIGO | | 2026-05-04 | TJ | `applemod3` | 109.74.74.60 (Dushanbe) | AS24722 Babilon-T | | 2026-05-04 | FI | `googletest` | 212.149.238.126 (Oulu) | AS16086 DNA Oyj | Все ASN из списка реальных residential провайдеров — **Apple/Google не палят как proxy**, в отличие от Hostkey/OVH/AWS. ## Важно — почему не FoxyProxy напрямую к IPRoyal FoxyProxy парсер при сохранении пароля «режет» строку на специальных символах (`_` или после первого `:`). Из-за этого `pass_country-tj_session-X` уходит в IPRoyal как просто `pass` → IPRoyal отдаёт **random country**, не TJ. Подтверждено 2026-05-03: с обрезанным паролем вернулся IP Бразилии (Claro NXT). Через gost модификаторы передаются как часть upstream URL и до FoxyProxy не доходят — он видит только `127.0.0.1:PORT` без auth. ## Тест что работает ```bash # С FI residential curl -x http://127.0.0.1:9998 https://ipinfo.io # Ожидание: "country":"FI", residential ASN (DNA, Elisa, Telia) # С TJ residential curl -x http://127.0.0.1:9999 https://ipinfo.io # Ожидание: "country":"TJ", AS24722 Babilon / AS51346 Tojiktelecom / AS47139 INDIGO ``` ## WebRTC + Accept-Language (обязательно для Apple ID) Прокси сам по себе **недостаточен** — Firefox шлёт RU-локаль и WebRTC может слить реальный IP. В Firefox `about:config`: - `intl.accept_languages` = `tg-TJ, tg, en-US, en` (для TJ) или `fi-FI, fi, en-US, en` (для FI) - `media.peerconnection.enabled` = `false` - `media.peerconnection.ice.default_address_only` = `true` И регистрироваться **в приватном окне** (Cmd+Shift+P) чтобы не было RU-cookies. ## Стоимость IPRoyal Royal Residential pay-as-you-go: $7/GB (на момент 2026-05-03). 1 GB трафика хватает на ~10 регистраций Apple ID или ~5 часов работы с веб-консолями. См. также: [[../decisions/2026-05-02-apple-id-tj-via-residential-proxy]]