我在美国运行Ubuntu的VPS。 我想设置类似于http://www.usvideo.org的东西。基本上,USVIDEO是一个DNS服务,允许加拿大人访问Hulu,Netflix,NBC等美国内容(受地理IP的限制)。
以下是我认为USVideo的做法:
这个解决scheme的优点是,VPN隧道不需要绕过某些网站的地理IP检查。 所有在客户端需要的是指定DNS服务器(VPS)。 如果某个站点被地理locking,只需将该stream量转发给代理即可。 可以在DNS条目中指定这些站点,也可以在代理服务中指定将DNS请求redirect到其自己的代理。
我相信我需要设置类似的东西是Squid代理,IPTables和DNS。 我需要帮助的是如何正确处理这个问题? 将Squid代理设置为透明代理?
诀窍不只是你的代理,而是你不代理。 大多数video网站在不同的主机甚至不同的域名上都有网页内容和video内容。 在hulu.com的情况下,所有的video内容是在akamaitechnologies.com域…所以,如果你代理hulu.com,而不是akamaitechnologies.com你可以伪造的地理区域。
更好的是,如果你有一个路由器的接入和一个低带宽的VPN服务,你几乎可以用防火墙规则来做到这一点。 您将低带宽的东西redirect到您的VPN服务,并保留未经过滤的高带宽的东西。 这种解决scheme的优点是有许多免费的低带宽vpn提供商…如果你想打勾的网站数量相当低,你也可以使用ssh隧道而不是vpn。
我不会玩DNS的任何技巧; 相反,我会在本地网上build立一个代理,只在VPS上为指定的域使用代理。 例如,鱿鱼的cache_peer_domain选项将完成这一点。 在当地的鱿鱼,你会增加
cache_peer_domain vps-in-america.example.com .pandora.com
mmmmmmmm,如果你看一下meta内容,你可以看到他们有一个电影加载后,与闪光灯一起运行的GeoLocation。 再次在netflix的初始安装,注册和login中检查。
那么,我们在做什么? 实际上他们正在运行netflix的克隆,我们将这个克隆netflux.com称为
他们从真实的网站(不包括video内容)挖掘所有数据并将其发布到他们的克隆网站netflux.com上。 这是DNS服务器起作用的地方,因为netflux.com网站实际上只存在于他们的INTRANET中,而不是Internet,这个logging只能存在于他们的域名服务器上,所以你必须是他们服务器的一部分才能看到它,因为它没有得到全球更新。
步骤1(非常简单)为一个已经存在的名字设置一个虚拟名字服务器,但是监听一个只能由你的DNS服务器执行的IP。 因此,您使用的DNS的netflix.com现在是10.20.30.80(示例),当您访问netflix.com您自动加载netflux.com。
原件:netflix.com – >(真正的netflix ip) – >你的设备。
新的dnsmap:
netflix.com – >(您的服务器IP) – > [email protected] – > /var/www1/netflux/index.pl – >您的设备。
DNS服务器控制“您的服务器IP”部分。
步骤2(简单):login到真正的netflix,并榨取他们的整个networking内容,不包括video。 这是相对容易的,你基本上复制一个网站。 你可以通过networking监控你的(wii / 360 / sp3)networking请求,并下载这些内容,使它与你喜欢的任何系统兼容。
第3步(需要一些技巧):下一个部分很容易理解php的avg编码器,(perl使得这一点很容易)。 netflix使用的基本论坛authentication真的是这里的弱点,只需在loginholyflux.com(*真正的netflix)时parsing用户凭证,
MAP:www.netflix.com – >(DNS加载netflux.com) – >用户login – > holyflix.com(* real netflix)返回validation。
第三步是根据你想如何编码你的服务器来进行一些select性的select。 如果您知道使用您的私人DNS服务器的人有有效的身份validation,真的没有必要有一个网站login。 得到它?
第4步(熟练)现在你完全浏览netflix的镜像,你点击一个video,让你的服务器获取设备ID,并parsing它到基于你的服务器的holyflux.com(你已经build立和validation,或完全因为你知道这个标记是有效的,并且会在你试图看标题的时候进行validation)。 您的设备现在有一个用于传输内容的套接字,返回地址在服务器数据包的标头中设置为holyflux.com,地理位置被服务器IP欺骗,并使用您的设备从真实的Netflix服务器build立套接字,他们的软件照顾DRM和video是格子。
最难的部分是协议,因为它必须在数据包级别进行提取,但是一切都是纯文本encryption,只是想到了MSNP,却没有出现字符键和MSGsorting。
干杯〜InSaneGame〜
但像http://tunlr.net这样的服务自动和免费。 我相信在那里没有'netflux'
作为参考,有一种简单的使用仅cachingBIND DNS和SNI代理的方法:
这个想法是,只有* .netflix.com的请求将通过您在美国的VPS进行代理,但是来自Akamai CDN的video内容将直接由您的播放器设备访问。
也适用于许多其他地理locking服务,如潘多拉魔盒,Crackle等。
–ab1
参考: 在廉价的美国基于VPS的Netflix Tunlr / Unblock-Us / UnoTelly的DIY克隆
Ref: SNI Proxy GitHub
另一种解决scheme是使用Python中的套接字来设置代理,就像澳大利亚人那样: http : //delx.net.au/blog/2011/12/hulu-and-pandora-outside-usa/
不知道他的解决scheme的性能开销,但它只是代理geoblocking域无论如何。