Как собрать IPv6-прокси на своём сервере
Содержание
- Реальность: IPv4 кончился, IPv6 — бесплатный
- Что нужно для сборки
- Выбор софта: не ставь Squid
- Настройка авторизации: базовый HTTP
- Прокси для всей подсети
- Пример на Python: requests с прокси
- Пример на curl: тестируем
- Ошибки и грабли
- Сравнение софта
- Масштабирование: несколько портов
- Мониторинг и логи
- Безопасность: не свети прокси
- Альтернативы: готовый сервис
- Итог: что запомнить
Как собрать IPv6-прокси на своём сервере за час
Реальность: IPv4 кончился, IPv6 — бесплатный
У провайдеров IPv4 адреса давно закончились. Дают серые, NAT, CG-NAT. Хочешь белый IP — плати. IPv6 выдают пачками. /64 подсеть — это 18 квинтиллионов адресов. Почти даром.
Но софт под него заточен хреново. Python requests, curl, браузеры — всё по умолчанию стучится через IPv4. Приходится выкручиваться. Прокси на IPv6 — стандартный костыль.
Что нужно для сборки
Минимум: VPS с IPv6 и root. Желательно Debian 11/12. Один IP — норм, /64 подсеть — идеал.
Провайдеры, где IPv6 работает из коробки: Hetzner, Contabo, Scaleway. Российские — Timeweb, Beget. У некоторых IPv4 выдают только за доплату, IPv6 — бесплатно.
Проверяем:
```
ip -6 addr show
```
Видишь inet6 — ок. Нет — иди читать документацию провайдера.
Выбор софта: не ставь Squid
Squid — монстр. Тяжёлый, конфиги страшные, с IPv6 геморрой. Для простых задач — 3proxy. Лёгкий, один бинарник, конфиг на 10 строк. Работает на чём угодно.
Ставим:
```
apt update && apt install -y 3proxy
```
Конфиг /etc/3proxy/3proxy.cfg:
```
daemon
nserver 8.8.8.8
nserver 8.8.4.4
nscache 65536
timeouts 1 5 30 60 180 1800 15 60
log /var/log/3proxy/3proxy.log
logformat "- +_L%T.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
rotate 30
auth iponly
allow * * * * 80,8080,443
proxy -n -a -p8080 -i192.168.1.1 -e192.168.1.1
flush
```
Вместо 192.168.1.1 — свой IPv6 адрес. Если подсеть — укажи любой из диапазона.
Запускаем:
```
systemctl restart 3proxy
```
Проверяем:
```
curl -x http://[::1]:8080 http://ipv6-test.com/api/myip.php
```
Должен вернуть твой IPv6.
Настройка авторизации: базовый HTTP
Без пароля прокси — дыра. Любой может юзать. Добавляем логин-пароль.
В конфиг:
```
auth strong
users user:CL:password
allow * * * * 80,8080,443
proxy -n -a -p8080 -i[::] -e[::]
```
Перезапускаем. Проверяем:
```
curl -x http://user:password@[::1]:8080 http://ipv6-test.com/api/myip.php
```
Прокси для всей подсети
Есть /64 подсеть — хочешь выходить с разных IP. 3proxy умеет подставлять случайный адрес из диапазона.
В конфиг:
```
proxy -n -a -p8080 -i[::] -e2001:db8::/64
```
Каждый запрос — новый IP. Для парсинга идеально. Но следи за лимитами провайдера. Некоторые банят за частую смену.
Пример на Python: requests с прокси
```
import requests
proxies = {
"http": "http://user:password@[::1]:8080",
"https": "http://user:password@[::1]:8080"
}
r = requests.get("http://httpbin.org/ip", proxies=proxies)
print(r.json())
```
Если прокси на другом сервере — вместо ::1 вставь IPv6 адрес сервера.
Пример на curl: тестируем
```
curl -x "http://user:password@[2001:db8::1]:8080" http://httpbin.org/ip
```
Ошибки и грабли
**Не работает IPv6 на VPS.** У провайдера нет поддержки. Меняй тариф или провайдера.
**Прокси отвечает, но не пускает.** Проверь фаервол. Открой порт 8080:
```
ufw allow 8080
```
**Слишком медленно.** 3proxy лёгкий, но на слабых VPS может тупить. Попробуй другой софт — tinyproxy.
**Блокируют по IP.** Провайдеры видят парсинг. Используй ротацию адресов.
Сравнение софта
| Софт | Вес | Настройка | IPv6 | Скорость |
|---|---|---|---|---|
| 3proxy | 2MB | Простая | Да | Высокая |
| Squid | 50MB | Сложная | Да | Средняя |
| tinyproxy | 1MB | Простая | Да | Высокая |
| HAProxy | 10MB | Средняя | Да | Высокая |
Для домашки — 3proxy. Для прода — HAProxy.
Масштабирование: несколько портов
Хочешь разные прокси для разных задач — поднимай несколько инстансов.
```
proxy -n -a -p8080 -i[::] -e2001:db8::1
proxy -n -a -p8081 -i[::] -e2001:db8::2
proxy -n -a -p8082 -i[::] -e2001:db8::3
```
Или через systemd сервисы. Каждый — свой порт, свой IP.
Мониторинг и логи
Логи — в /var/log/3proxy/. Смотри, кто и откуда стучится.
```
tail -f /var/log/3proxy/3proxy.log
```
Формат лога — настраивай под себя. В конфиге строка logformat.
Безопасность: не свети прокси
Не открывай порт на весь интернет. Используй белый список IP:
```
allow * * * * 80,8080,443 192.168.1.0/24
```
Или авторизацию с паролем. Без защиты — через неделю в логах будут китайские боты.
Альтернативы: готовый сервис
Не хочешь возиться — юзай готовые решения. Например, lexic.ml — IPv6 прокси с 2015 года. Дают адреса, авторизацию, ротацию. Подходит для парсинга, SEO, обхода блокировок. Цены — от 3 рублей.
Итог: что запомнить
IPv6 прокси — не больно. Ставишь 3proxy, правишь конфиг, запускаешь. 10 минут — и готово. Главное — не забудь про авторизацию. И не используй Squid без крайней нужды.