运行深信服aTrust时WSL2无法联网的问题求助
运行深信服aTrust时WSL2无法联网的问题求助
大家好,我是刚接触Linux的新手,目前在Windows 11 22H2(版本号22624.1470)上用WSL2跑Ubuntu 22.04.6 LTS,现在遇到一个棘手的问题:
当我启动深信服aTrust客户端(必须用它连接学校内网办公)时,WSL2完全无法联网——连网关172.17.160.1都ping不通,更别说其他公网IP或域名了。关闭aTrust后一切正常,但频繁开关实在太麻烦,想请大家帮忙想想办法。
我的排查过程和现象:
核心网络异常表现:
- 用Wireshark抓包发现,所有ICMP包都显示“No Respond Found”警告,不管ping哪个IP都一样。
- 执行
traceroute 172.17.160.1,输出全是丢包标记:traceroute to 172.17.160.1 (172.17.160.1), 64 hops max 1 * * * 2 * * * 3 * * * 4 * * ^C - WSL2自动生成的
/etc/resolv.conf内容:
我试过把nameserver改成1.1.1.1或9.9.9.9,但WSL2连这些地址也访问不了。# This file was automatically generated by WSL. To stop automatic generation of this file, add the following entry to /etc/wsl.conf: # [network] # generateResolvConf = false nameserver 172.17.160.1
尝试过的解决方法及效果:
- 在Windows防火墙里添加了一条规则:允许172.17.160.2-172.17.160.254的所有协议和端口访问本地所有地址/端口(虽然担心有安全风险),结果只能ping通网关172.17.160.1,但还是无法解析DNS,公网IP比如8.8.8.8依然访问不了。
- 此时再执行
traceroute 8.8.8.8,第一跳能到网关,但后续全部丢包:traceroute to 8.8.8.8 (8.8.8.8), 64 hops max 1 172.17.160.1 0.358ms 0.202ms 0.205ms 2 * * * 3 * * * 4 * * * 5 * ^C - 用Wireshark抓Windows的WLAN网卡时,发现WSL里ping域名的DNS请求其实能正常拿到IP返回给Windows系统,但WSL这边就是收不到响应。
关于aTrust对系统的异常修改:
我排查了Windows系统,发现aTrust没有创建明显的VPN或代理,但做了这些奇怪的操作:
- 创建了一个无法终止的虚拟网络,让我的Windows本地IP变成了法国的2.0.0.1(tracert显示直接指向本地主机):
C:\>tracert 2.0.0.1 通过最多 30 个跃点跟踪 到 DESKTOP-94DT041 [2.0.0.1] 的路由: 1 <1 毫秒 <1 毫秒 <1 毫秒 myDESKTOP [2.0.0.1] 跟踪完成。 - 生成了一个名为“Sangfor aTrust VNIC”的虚拟网卡,用来维持这个虚拟网络。
- 修改注册表禁用了Windows的所有IPv6访问。
感觉它肯定还做了其他我没发现的系统修改,才导致WSL2的网络被拦截了。
附上Wireshark抓包截图:
- [WSL ping域名时的抓包截图]
- [WSL traceroute 8.8.8.8时的抓包截图]
- [WSL ping域名得到回复但未返回给WSL的抓包截图]
真心希望有大佬能指点一下,怎么让WSL2和aTrust共存,不用频繁开关客户端,谢谢大家!
备注:内容来源于stack exchange,提问作者szw0407




