一个提高Surge规则分流效率的想法:
假设用户使用这样的分流规则:
[Rule]
GEOIP,CN,DIRECT
RULE-SET,LAN,DIRECT
FINAL,PROXY
那么对于命中了PROXY策略的主机名,Surge可以长期保留相应的DNS记录(就像FakeIP映射表那样),使这些主机名从此可以优先使用本地的DNS记录来进行分流规则处理,跳过DNS查询的等待时间。相信这能增强不少网络使用体验!
如果要考虑到可能的DNS记录变动导致规则分流错误,可以参照Optimistic DNS机制,在处理分流的同时进行真实DNS查询,在与本地值有差异的时候更新本地记录甚至撤销进行中的网络请求。