为了测试目的,我想完全切断 WSL2 实例内的任何互联网连接。
有人可以帮忙吗?
答案1
可能有几种方法可以做到这一点,但如果它符合您的用例,我会从最简单的方法开始:
sudo ip link set eth0 down
# optionally
sudo ip link set lo down
如果你有任何其他接口(例如 Docker),你可以使用以下命令获取处于该状态的接口列表UP
:
ip link show up
请注意,网络接口在全部您正在运行的 WSL 发行版,因此关闭 Ubuntu 中的网络接口也会导致其在 Debian(或 Arch、Alpine 等)中关闭。
另请注意,wsl --shutdown
可能需要重新连接eth0
Hyper-V 交换机。否则,您至少需要重建默认路由。
在 Windows 级别也可能有强制 WSL2 网络离线的方法,但我认为这需要删除 WSL 的 Hyper-V 交换机,我不推荐这样做。