Блог
February 4, 2024

Прокси и VPN для PS 4/5, Xbox

Достаточно продолжительное время наблюдались сбои при подключении к различным онлайн сервисам, в частности Fortnight, World of Tanks. При попытки зайти либо "сервис не доступен", либо "истекло время ожидания". При этом с ПК и с телефонов в данной сети проблем не наблюдалось. Замена роутера и смена точки подключения, а так же манипуляции с роутером по указанию службы поддержки проблему не решили. Решение нашлось не сразу. Смена внешнего IP адреса, установка DNS Яндекса или Google иногда решало проблему, но в какой то момент ни одна эта операция не позволяла зайти в игру. Разумеется что первое пришло в голову, это использовать VPN. Однако эта затея сразу отпала, так как сама приставка и (в моем случае) роутер не поддерживали данную услугу. Была попытка организовать соединение PS4 -> ПК (VPN) -> Интернет, но и здесь не получилось достичь результата, так как приставка упорно отказывалась подключаться к USB WiFi адаптеру компьютера.

1 решение

Пришлось прибегнуть к радикальным методам и поднять на VDS прокси-сервер, в моем случае я тестировал и с 3proxy и с Squid. Выбор пал на последнего. Настройка достаточно простая, но приставка может работать только с публичными прокси (которое не имеют логина и пароля для авторизации). Забегая вперёд отмечу, что такое возможно только с HTTP (s) прокси, с Socks требует обязательной авторизации.

Подняв прокси и указав IP и порт сервера в приставке мы получили доступ, наконец то, но, не надолго. Так как прокси был публичный, интернет пауки его быстро обнаружили и подключились к нему. Даже страшно было представить сколько пользователей было онлайн. Конечно IP наш сразу попал в бан (в моем случае забанил его epic — «проверка очереди epic» висела надпись). Пришлось прикручивать плавающий IP, т. е. сервис, позволяющий менять внешний IP сервера в любой момент. Так же пришлось настроить Firewall, можно было использовать Iptables или UFW, но я использовал веб панель VDS, потому что так можно менять настройки в любой момент и с телефона. В моем случае я запретил трафик с любого IP, кроме как с адреса моего домашнего роутера. Так как адрес роутера у меня серый, настройки на сервере необходимо периодически менять. Использование телефона делает эту операцию очень быстрой и простой.

Полная инструкция по настройке Squid

https://selectel.ru/blog/tutorials/how-to-install-and-configure-squid-proxy-server-on-ubuntu/

Если кратко, до то достаточно просто установить squid на linux и он будет из коробки работать по адресу http://VDS_IP:3128.

sudo apt install squid
sudo systemctl enable squid
sudo systemctl status squid

При необходимости, можно сделать более детальную настройку через файл /etc/squid/squid.conf. Его следует открывать в notepad++ или sublime, т.к. файл очень большой.

Отключение логов (при необходимости):

# запретить access.log
cache_access_log /dev/null
# запретить store.log
cache_store_log none
# запретить cache.log
cache_log /dev/null
logfile_rotate_0

2 решение

Использование VPN все же я считаю более подходящим решением данной программы. К тому же аренда сервера, его обслуживание и настройка отнимают как время, так и деньги. Поэтому самым разумным мне кажется это приобретение промежуточного устройства, что-то вроде OpenWRT, но менее мощного и дорого. И я нашел такое устройство — мини-роутер GL-AR300M16.

Данное устройство имеет два Ethernet порта и WiFi интерфейс, возможность организовать VPN соединение как в режиме клиента, так и сервера. Поддерживаются протоколы OpenVPN и WireGuard. Можно подключиться через данные проколы как к личному серверу, так и к популярным сервисам VPN.

Для удобства управления из локальной сети нужно открыть удаленный доступ через WAN порт.

Для этого необходимо открыть порт 80 на вкладке NETWORK -> Firewall -> Open Ports on Router.

Или добавить правило через LuCI

LuCI -> Firewall -> Traffic Rules

Тестирование VPN соединения через OpenVPN показало не более 7 Мбит/с при канале в 100 Мбит/с. Сам производитель заявляет максимальную скорость для OpenVPN - 15 Мбит/с, WireGuard - 50 Мбит/с.

Для визуального контроля включен ли VPN переназначил красный светодиод: теперь он горит, если включен VPN.

LuCI -> System -> LED Configuration

И в первом и во втором случае описанной выше проблемы я не наблюдал в дальнейшем. Какое решение выбрать, сугубо ваше дело.

Выводы:

  • Если вы не можете зайти в игру, висит бесконечная загрузка или сервис не найден, то проблема с вашем провайдером.
  • Попробовать сменить DNS на приставке.
  • Использование публичного прокси только с предварительно настроенным Firewall.
  • Купите мини маршрутизатор и VPN, и забудьте об этой проблеме.