У меня есть VPS в США под управлением Ubuntu. Я хочу настроить что-то похожее на http://www.usvideo.org По сути, USVIDEO - это служба DNS, которая позволяет канадцам получать доступ к американскому контенту, например Hulu, Netflix, NBC и т. Д. (Ограниченному географическим IP-адресом).
Вот как, я думаю, USVideo это делает:
Что элегантно в этом решении, так это то, что VPN-туннель не требуется для обхода географических IP-проверок с определенных веб-сайтов. Все, что требуется на стороне клиента, - это указать DNS-сервер (VPS). Если определенный сайт географически заблокирован, просто перенаправьте трафик на прокси-сервер, и все. Эти сайты можно указать в записях DNS или, возможно, в прокси-службе для перенаправления DNS-запроса на собственный прокси-сервер.
Я считаю, что мне нужно настроить что-то подобное, это прокси-сервер Squid, IPTables и DNS. Мне нужна помощь, как именно к этому подойти? Будет ли Squid Proxy настроен как прозрачный прокси?
Уловка не только в том, что вы доверяете, но и в том, что вы не используете. Большинство видеосайтов размещают веб-контент и видеоконтент на разных хостах или даже в разных доменах. В случае hulu.com весь видеоконтент находится на домене akamaitechnologies.com ... Так что, если вы прокси-сервер hulu.com, но не akamaitechnologies.com, вы можете подделать географический регион.
Еще лучше, если у вас есть доступ к маршрутизатору и служба vpn с низкой пропускной способностью, вы можете в значительной степени просто сделать это с помощью правил брандмауэра. Вы перенаправляете материал с низкой пропускной способностью на свою службу vpn и оставляете материал с высокой пропускной способностью нефильтрованным. Прелесть этого решения в том, что существует множество бесплатных провайдеров vpn с низкой пропускной способностью ... Если количество сайтов, которые вы хотите отметить, довольно мало, вы также можете использовать ssh-туннели вместо vpn.
но такие услуги, как http://tunlr.net делает это автоматически и бесплатно. Я уверен, что там нет Netflix ...
мммммммм, если вы посмотрите на мета-контент, вы увидите, что у них есть GeoLocation, работающая со вспышкой, как только загружается фильм. Опять же, это проверяется при начальной установке netflix, регистрации и входе в систему.
Так что же делают unblock-us? По сути, они запускают клон netflix, мы назовем этот клон netflux.com.
Они извлекают все данные с реального веб-сайта (за исключением видеоконтента) и размещают их на своем клонированном сайте netflux.com. Здесь в игру вступает DNS-сервер, так как сайт netflux.com фактически существует только в их INTRANET, а не в Интернете, запись может существовать только на их серверах доменных имен, и поэтому вы должны быть частью их серверов, чтобы увидеть ее, поскольку он не обновляется глобально.
Шаг 1 (очень простой) настройка виртуального сервера имен для имени, которое уже существует, но прослушивает IP-адрес, который может быть направлен только вашим DNS-сервером. Следовательно, вы используете dns netflix.com теперь 10.20.30.80 (пример), и когда вы посещаете netflix.com, вы автоматически загружаете netflux.com.
Оригинал: netflix.com -> (настоящий ip netflix) -> ваше устройство.
новый dnsmap:
netflix.com -> (IP-адрес вашего сервера) -> netflix.com@192.168.1.140 -> /var/www1/netflux/index.pl -> ваше устройство.
DNS-сервер управляет разделом «ip вашего сервера».
Шаг 2 (простой): войдите в реальный netflix и просмотрите весь его веб-контент, за исключением видео. Это относительно просто, по сути, вы копируете веб-сайт. вы можете отслеживать в сети, что ваш (wii / 360 / sp3) веб-запрос, и загружать этот контент, чтобы сделать его совместимым с любой системой, которая вам нравится.
Шаг 3 (требуются некоторые навыки): следующая часть проста для среднего программиста, который понимает PHP (Perl делает это проще простого). Базовая авторизация форума, которую использует netflix, действительно является слабым местом здесь, просто проанализируйте учетные данные пользователей во время входа на HolyFlux.com (* настоящий netflix)
КАРТА: www.netflix.com -> (DNS загружает netflux.com) -> пользователь входит в систему -> Holyflix.com (* real netflix) возвращает проверку.
Шаг 3 в некоторой степени необязателен в зависимости от того, как вы хотите кодировать свой сервер. Если вы знаете, что люди, использующие ваш частный DNS-сервер, имеют действительную аутентификацию, на самом деле нет необходимости иметь вход на сайт вообще. возьми?
step4 (опытный) теперь вы полностью просматриваете зеркало netflix, вы нажимаете на видео, и ваш сервер берет идентификатор устройства и анализирует его на HolyFlux.com, где на основе вашего сервера (вы уже были установлены и проверены, или полностью вырежьте это, потому что вы знаете, что токен действителен и проверит, когда вы попытаетесь посмотреть заголовок). Теперь у вашего устройства есть сокет, открытый для потоковой передачи контента, обратный адрес установлен в заголовке из пакета серверов на HolyFlux.com, геолокация обманывается IP-адресом сервера, и сокет устанавливается с вашим устройством с реального сервера netflix и их программное обеспечение заботится о DRM, а видео - в пледе.
Самая сложная часть - это протокол, поскольку он должен быть извлечен на уровне пакетов, но на самом деле все представляет собой шифрование обычного текста, просто подумайте о MSNP, но без символьных ключей и упорядочивания MSG.
Ура ~ InSaneGame ~
Я бы не стал шутить с DNS; я бы скорее установил прокси в локальной сети, который использует прокси только на VPS для указанных доменов. Например, кальмары cache_peer_domain
вариант выполнит это. На местном кальмаре вы бы добавили
cache_peer_domain vps-in-america.example.com .pandora.com
Для справки, есть способ сделать это, просто используя BIND DNS и SNI Proxy только для кеширования:
Идея заключается в том, что через ваш VPS в США будут проксироваться только запросы * .netflix.com, но доступ к видеоконтенту, поступающему из Akamai CDN, будет осуществляться напрямую вашим проигрывателем.
Также работает для многих других гео-заблокированных сервисов, таких как Pandora, Crackle и т. Д.
--ab1
Ссылка: Сделай сам клон Netflix Tunlr / Unblock-Us / UnoTelly на дешевом VPS в США
Ссылка: Прокси-сервер SNI на GitHub
Альтернативное решение - настроить прокси с использованием сокетов в Python, как это сделал этот австралиец: http://delx.net.au/blog/2011/12/hulu-and-pandora-outside-usa/
Не уверен в накладных расходах на производительность его решения, но в любом случае оно предназначено только для проксирования доменов геоблокировки.