当网站被禁止时,如何访问YouTube Android应用程序?



我目前生活在一个YouTube网站被禁止的国家,你需要一个VPN或代理才能使用网络浏览器访问YouTube网站和视频,但令人惊讶的是,我发现有时(实际上大多数时候(我可以使用手机/平板电脑上的YouTube Android应用程序访问YouTube并观看YT视频,而无需使用任何VPN或代理。据我所知,这与我的ISP有关。

YouTubeAndroid应用程序如何在不需要任何代理或VPN的情况下连接到YouTube服务器,同时我必须使用"Freegate"等代理程序才能在我的计算机上观看YouTube?在我的计算机上是否有技巧可以在不使用任何代理的情况下在网络浏览器中观看 YT?

我使用了一个名为"数据包捕获"的应用程序,该应用程序捕获了以下IP地址:

74.125.173.200:443
216.58.208.42:443
172.217.22.34:443
173.194.188.70:443

当我在网络浏览器中输入它们时,它们会重定向到 google.com。 Android Oreo 8.1.0 和最新版本的 Youtube。

我的主要目标是能够在没有任何代理的情况下使用 youtube-dl。

我的问题与此类似。

谢谢。

审查员可以通过多种方式阻止:

  1. 通过修改ISP的DNS服务器,使youtube.com解析为他们自己的IP地址(或只是0.0.0.0(。由于其对互联网基础设施的影响最小,这往往是民主国家的首选方式。通过使用不受审查员控制的DNS服务器可以轻松规避,例如8.8.8.81.1.1.1.

  2. 通过阻止 IP 地址范围,例如172.217.0.0/16.这很可能会过度阻止,特别是如果目标是与他人共享其 IP 范围(甚至 IP 地址(的较小网站。即使在这种情况下,完全阻止整个/16 子网也会阻止对 google.com 的访问。这涉及审查员的大量工作,因为IP地址会定期自动更改。

  3. 通过读取流量并在包含特定内容时阻止它。由于现在一切都是加密的,因此只有DNS名称和SNI是明文显示的。已经有工作来弥补这些漏洞。审查器的缺点是他们必须读取和解析每个数据包,即需要大型设备,尽管如果仅限于DNS,则更可行。这也可能会给不相关的服务带来问题,这些问题偶尔会被误诊。

(我在关于审查制度的博士论文中列出了其他几种方式和更细微的区别,但它们在这里不适用(。

无论审查员选择哪种方式,他们都必须将违禁物品清单输入他们的设备。在案例1和3中,这是域名,在案例2中,这是IP地址(范围(。

像YouTube这样的现代服务在内部被分成多个较小的服务。例如,YouTube 内部可能包含以下内容:

  • 网络前端,youtube.com/172.217.22.46
  • 缩略图服务,ytimg.l.google.com/172.217.21.206
  • APIgooglevideo.com/172.217.22.68
  • 视频服务,在多个子域中,如r3---sn-i5onxoxu-q0n.googlevideo.com/92.226.0.78

所有域名和地址都是示例;实际上,每个服务都使用许多IP地址和不同的域名(例如,有www.youtube.co.uk

如果您所在国家/地区的审查员仅阻止网络前端,则 Android 应用程序将继续运行。审查员也可能忘记一些域 - 即阻止youtube.comyoutube.pk及其子域,但不会忘记youtube.fr

或者,审查员可能试图通过IP地址阻止Android应用程序,但YouTube可能已经更改了IP地址,无论是作为自动内部重新分配的一部分,还是通过明确的审查避免

。Android应用程序联系内部Google API,因为它需要机器可读的信息。那么为什么youtube-dl使用Web界面而不是Android API?

我不能代表所有开发人员,但作为youtube-dl的长期首席开发人员,我知道为什么我主要关注Web界面:这只是一个方便的问题,因为调试和观察Web应用程序的工具远远优于Android(或iOS应用程序(。因此,当我添加功能时,我会观察 Web JavaScript 应用程序如何实现它们,并在 youtube-dl 中重新实现它们。

到目前为止,主要使用 Web API 就足够了,但非常欢迎您添加使用 Android 应用程序进行的调用的替代代码。请注意,这种缓解可能是暂时的,因为审查员可能会注意到YouTube应用程序已解锁,并更新其域名和IP范围列表以包含该服务。

最新更新