当 surge 作为网关时,为什么请求的 URL 都变成 IP ,从而导致规则失败。只能手动添加 IP 相关的规则
经过一番折腾,搞定了
原因是什么,通过问AI:
graph LR
A[您的机器<br/>192.168.0.108] -->|1. DNS查询| D[DNS服务器<br/>223.5.5.5]
D -->|2. 返回IP| A
A -->|3. HTTP请求到IP| B[网关<br/>192.168.0.106]
B -->|4. NAT转发| C[互联网<br/>example.com]
C -->|5. 响应| B
B -->|6. 返回| A
所以,是108机器存在一个DNS服务器,所以它会先查询到IP,然后通过IP访问到目的地址。
问题找到,解决办法就简单了,把DNS改到 Surge DNS 198.18.0.2 就好了
dhcp4: no
addresses: [192.168.0.108/24]
routes:
- to: default
via: 192.168.0.106
nameservers:
addresses: [198.18.0.2]
1
GilesWong 3 天前 dns 设置为 198.18.0.2 了吗?
是 198.18.0.2 哈 不是 192.168.x.x |
2
TabGre OP surge 的网关吗? 我试试
|
4
canxin 3 天前 GUI 操作的话把对应规则的 Extended Matching 开启,编辑器操作的话在对应规则后面加一个 ,extended-matching
|
5
TabGre OP https://community.nssurge.com/d/2454-urlipsurgeruleenhance-mode
有人提到类似的问题,尝试了他们的操作以及 extended-matching,都没有起到作用 |