早前 GitHub 因為失誤部署了遮蔽所有中國 IP 地址的規則,中國 IP 地址訪問時會出現禁止訪問提示,隨後 GitHub 更新規則並解釋是部署錯誤,更新規則後中國 IP 地址可以重新訪問。
如果之前是失誤那現在肯定就是故意的了,GitHub 部署的新規則會對使用者語言進行檢查,如果使用者使用的是中文 (僅限 zh_CN) 則可能會觸發限制而被限制訪問,不過從情況來看 GitHub 應該是為了反爬蟲的 (例如某 SDN 無差別拉取 GitHub 上的專案搬到自家平臺)。

從測試情況來看 GitHub 將多個條件整合用來觸發限制,例如首先檢查 GitHub 的常規規則 (包括黑名單 IP 和 UA),然後檢測 IP 地址質量,以上兩個條件全部通過後再檢查第三個條件,也就是瀏覽器請求頭的語言部分是否包含 zh_CN,如果檢測到使用者使用的中文則會返回錯誤。
也就是說 GitHub 並沒有針對特定區域的 IP 進行封禁,如果使用者 IP 質量沒問題的話則不會觸發語言檢測,因此如果使用者使用企業代理軟體訪問 GitHub 的話就可能因為 IP 地址質量差 (髒 IP) 而觸發語言檢測。
從這些情況來看 GitHub 大機率是為了反爬蟲和反抓取,目前大量 AI 爬蟲對 GitHub 瘋狂抓取用來訓練模型,這種抓取行為不僅會給 GitHub 伺服器造成負擔,也會浪費大量流量造成 GitHub 成本增加。
如果使用者並非爬蟲並且訪問受到影響,那也可以進行針對性的解決:
1. 簡單方法就是直接修改請求頭將語言修改為 en_US 等其他未被限制的語言
2. 更換質量更好的 IP 地址避免觸發風控,當然更換 IP 地址可能會增加潛在使用成本
不過針對語言的檢測很容易被繞過,接下來 GitHub 很有可能會觀察情況並對修改語言的行為進行檢測,畢竟反爬蟲是個長期工作,GitHub 也只能根據爬蟲的情況進行針對性的策略調整實現封禁。