Onedrive Business配置Clash代理

Onedrive Business配置Clash代理

Onedrive版本

  • 个人版
    • Microsoft 365 个人版
    • Microsoft 365 家庭版
  • 商业版
    • 国际版
    • 世纪互联版

Onedrive 客户端登录

问题

电脑每次登录Onedrive、以及使用ppt/word进行共享文档时都会卡在登录界面;关闭Clash系统代理后退出重登正常;
原因应该是我的订阅在登录时只允许国内ip

此参考文章列出了 Microsoft OneDrive 使用者版本使用的所有终结点。 如果你的组织限制网络上的计算机连接到 Internet,本文列出了完全限定的域名 (FQDN) 和端口,你应该包含在出站允许列表中,以确保计算机能够成功使用使用者版本的 OneDrive。
OneDrive 所需的 URL 及端口

解决方案

在Clash for windows依次进入Settings, 选择System Proxy - Bypass Domain/IPNet编辑,加入login.microsoftonline.com

1
2
3
4
5
6
7
bypass:
  - localhost
  - 127.*
  ...
  - 192.168.*
  - <local>
  - login.microsoftonline.com

该设置对应~/.config/clash/cfw-settings.yaml中的bypassText字段

1
2
3
4
5
6
7
8
bypassText: |
  bypass:
    - localhost
    - 127.*
    ...
    - 192.168.*
    - <local>
    - login.microsoftonline.com

下载及上传

中国地区Microsoft 365全球版客户端所使用的OneDrive for Business的数据是存储在亚太地区的,即香港和新加坡。其他的一些服务如Sway、Yammer、Forms等的数据存储位置确实是在美国。

Web端下载速度测试,仅供参考。OneDrive for Business本身不限速,上下行速度取决于梯子
走代理(测试使用的是香港节点)速度快,但如果机场流量不够用,直连的速度也能接受

如何设置下载&上传走代理?
开启CFW的Mixin模式,添加如下两条规则,将SDK DNS替换为你的proxy-groups中的代理节点

1
2
3
4
5
6
7
8
module.exports.parse = ({ content, name, url }, { yaml, axios, notify }) => {
+ content.rules.unshift("DOMAIN-SUFFIX,sharepoint.com,SDK DNS")
+ content.rules.unshift("PROCESS-NAME,OneDrive.exe,SDK DNS")
  content.rules.unshift("PROCESS-NAME,FileCoAuth.exe,DIRECT") // 以前写的规则,应该是office共同编辑用的
  content.rules.unshift("DOMAIN-SUFFIX,.cn,DIRECT")
  content.rules.unshift("PROCESS-NAME,POWERPNT.exe,DIRECT")
  return content
}

Clash相关

Mixin
mixin allow you to overwrite original configuration
简单来讲,购买的订阅更新会直接替换原有profile,如此一来每次更新订阅就要再添加一次自定义配置;
Mixin可以将自定义配置与订阅合并,省去每次更新后手动修改配置的麻烦

Connections

在Cfw的Connections栏,可以查看主机建立的网络连接。可以通过Connections中的连接信息,来确定如何编写规则

Ref

Microsoft 365 客户数据的存储位置
Cloudflare Speed Test

Onedrive Business配置Clash代理

https://vluv.space/Dev/Others/onedrive_proxy/

作者

Jiaxing Gao

发布于

2024-09-26

更新于

2024-10-19

许可协议

评论

}