Как работает FakeIP check

Как работает FakeIP check

Здесь описано, как это работает на высоком уровне. В дальнейшем, возможно, дополню логику и конфигурации.

Все проверки выполняются через удаленный веб-сервер, который специально настроен для этого.

Быстрое ознакомление

Есть три проверки (будут реализованы в 0.7.0):

Проверка, работает ли FakeIP на роутере

curl https://fakeip.podkop.fyi/check

Возвращает:

{"fakeip": true, "IP": "$IP$"}

Это означает, что роутер отправляет DNS-запросы через sing-box. Если false, то роутер отправляет запросы не через sing-box.

Проверка, работает ли FakeIP в браузере

Клиент (браузер) должен отправить запрос к https://fakeip.podkop.fyi/check.

Здесь всё идентично. true - браузер использует FakeIP, false - браузер не использует FakeIP. В большинстве случаев это означает, что в браузере включен DoH, либо компьютер не использует роутер как DNS-сервер.

Комплексная проверка

Здесь мы не смотрим на поле FakeIP. Нас интересуют только IP-адреса.

С роутера снова выполняем запрос:

curl https://fakeip.podkop.fyi/check

Здесь должен быть IP-адрес провайдера.

Из браузера делаем запрос к https://ip.podkop.fyi/check. Здесь должен быть IP-адрес proxy/vpn-сервера.

Проверка состоит в том, что мы сравниваем IP-адреса. Если они отличаются, то вся цепочка работает.

Проблемы

Логика ломается, когда проверка происходит с IP-адреса, который вбит в IP full redirection.

Глубокое ознакомление

Здесь нужно будет подробнее расписать, как ходит трафик и какие выводы можно сделать из полученных данных.


За идею и реализацию проверки спасибо Чайке.