原文链接:

Google Chrome QUIC 白名单添加方法

  • 截止到2018年11月19日,本教程仅适用于以下Google相关域名:
www.google.com.hk
  • 由于Apple的限制,以上域名在iOS平台一律无法使用,本教程亦不适用于iOS平台。
  • 请确保您的网络环境具有完整的UDP支持,并且您已关闭所有全局代理设置(特别是HTTP/HTTPS代理服务器)。如果您必须设置全局HTTP/HTTPS代理才能上网(家庭宽带和移动网络一般无此情况;此处主要是指部分校园或单位的网络环境),则本教程不适用于此网络环境。
  • 请确保您已更新hosts至最新版。
  • 请确保您的Google Chrome为官方原装完整版,版本为55或更高,并已经访问过 chrome://flags/#enable-quic 将Experimental QUIC protocol设置为Enabled。Chromium以及任何基于Chromium开发的其他浏览器,由于默认配置以及可能的功能删减问题,我们不提供任何支持(即便它们理论上也可访问)。为保证测试效果,请使用官方渠道下载安装的Google Chrome进行测试。点此下载最新版Google Chrome
  • 如您不需要使用所有域名,请自行删减命令行参数。

TL;DR

google-chrome --quic-host-whitelist="https://www.google.com.hk" --origin-to-force-quic-on=www.google.com.hk:443 "https://www.google.com.hk"

Windows

  1. 找到Google Chrome的快捷方式。如果没有,请找到Google Chrome的安装目录,右键chrome.exe并新建一个。
  2. 右键单击快捷方式,选择“属性”→“快捷方式”选项卡。
  3. 找到“目标”文本框,在原有内容的后面粘贴如下内容(注意不是替换以及开头的空格):

img

 --quic-host-whitelist="https://www.google.com.hk" --origin-to-force-quic-on=www.google.com.hk:443 "https://www.google.com.hk"

例如,原先的内容是

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"

则修改后的内容应为

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --quic-host-whitelist="https://www.google.com.hk" --origin-to-force-quic-on=www.google.com.hk:443 "https://www.google.com.hk"

img

  1. 单击“确定”保存设置。
  2. 如果此时仍有打开的Google Chrome窗口或任何Google Chrome进程(包括后台进程),请全部关闭(必要时请重启系统),然后使用此快捷方式启动Google Chrome。

Android

  1. 访问 chrome://flags/#enable-command-line-on-non-rooted-devices 并将高亮选项(Enable command line on non-rooted devices)设置为Enabled。
  2. 如果您的设备:

  3. 已ROOT:

  4. 使用支持ROOT权限访问的文件浏览器在 /data/local/tmp/ 目录下创建一个名为 chrome-command-line 的文件。
  5. 粘贴如下内容并保存文件:
chrome --quic-host-whitelist="https://www.google.com.hk" --origin-to-force-quic-on=www.google.com.hk:443 "https://www.google.com.hk"
  • 未ROOT,但是有带终端的第三方recovery(例如TWRP): 重启设备进入recovery并打开终端,确保 /data 分区已正确挂载,然后执行如下命令并重启:
echo 'chrome --quic-host-whitelist=\"https://www.google.com.hk\" --origin-to-force-quic-on=www.google.com.hk:443 \"https://www.google.com.hk\"' > /data/local/tmp/chrome-command-line
  • 未ROOT,也没有带终端的第三方recovery:
  • 启用系统设置的“开发者选项”并启用其中的“USB 调试”。
  • 在电脑上安装好ADB和相应的驱动。
  • 将设备连接至电脑,并在设备上同意授权(如果有),然后打开命令行窗口或终端并执行如下命令:
adb shell "echo 'chrome --quic-host-whitelist=\"https://www.google.com.hk\" --origin-to-force-quic-on=www.google.com.hk:443 \"https://www.google.com.hk\"' > /data/local/tmp/chrome-command-line"
  1. 强制终止Google Chrome应用,然后再次启动它。

问题诊断

  1. 提示“您目前处于离线状态” 请使用其他页面进行测试,例如这个页面(直连成功后可以看见一个茶壶)。成功直连后再测试搜索。
  2. 错误代码ERR_CONNECTION_RESET 访问 chrome://version 并检查Command Line一行是否含有上述命令中出现的命令行参数(您应该可以看到诸如 --quic-host-whitelist=https://www.google.com.hk 之类的字样)。只有在正确显示命令行参数之后才可直连。如果您已正确执行上述命令且没有报错,但命令行参数没有显示,请再次尝试强制终止应用并启动。之前成功连接过的用户亦有可能会遇到此错误代码,我们正在与Google Chrome开发组积极协商以解决此问题。目前我们只能建议您更换网络环境、重启系统和/或稍后重试。
  3. 错误代码ERR_QUIC_PROTOCOL_ERROR 请确保hosts已更新至最新版。
  4. 错误代码ERR_QUIC_HANDSHAKE_FAILED 请关闭一切全局代理设置(特别是HTTP/HTTPS代理服务器)。如果您必须设置全局HTTP/HTTPS代理才能上网,则本教程不适用于此网络环境。
Clone this wiki locally