在 wsl2 上的 kali linux 上删除路由

在 wsl2 上的 kali linux 上删除路由

我是linux新手,刚接触linux才2个月左右。所以我在使用路线命令时遇到了问题。

我的问题是我在 Windows 上没有与 wsl 上相同的本地 IP 地址。然而,我设法添加了另一条路由,但不是默认的路由,所以我尝试将 172.20.128.0 以太删除或将 192.168.1.0 设置为默认/主要路由,以便其他设备可以 ping 我,以及类似的其他内容。

ipconfig(在 Windows 上)

Carte Ethernet vEthernet (WSL) :

   Suffixe DNS propre à la connexion. . . :
   Adresse IPv6 de liaison locale. . . . .: fe80::c181:db91:a200:5517%60
   Adresse IPv4. . . . . . . . . . . . . .: 172.20.128.1
   Masque de sous-réseau. . . . . . . . . : 255.255.240.0
   Passerelle par défaut. . . . . . . . . :
Carte réseau sans fil Wi-Fi :

   Suffixe DNS propre à la connexion. . . : home
   Adresse IPv6 de liaison locale. . . . .: fe80::2143:d5bf:e724:d291%5
   Adresse IPv4. . . . . . . . . . . . . .: 192.168.1.33
   Masque de sous-réseau. . . . . . . . . : 255.255.255.0
   Passerelle par défaut. . . . . . . . . : 192.168.1.1

路线(wsl 上的 kali-linux)

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
default         lelievre-pc.msh 0.0.0.0         UG    0      0        0 eth0
172.20.128.0    0.0.0.0         255.255.240.0   U     0      0        0 eth0
192.168.1.0     0.0.0.0         255.255.255.0   U     0      0        0 eth0

ifconfig(wsl 上的 kali-linux)

eth0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 172.20.134.143  netmask 255.255.240.0  broadcast 172.20.143.255
        inet6 fe80::215:5dff:feab:4d29  prefixlen 64  scopeid 0x20<link>
        ether 00:15:5d:ab:4d:29  txqueuelen 1000  (Ethernet)
        RX packets 5898  bytes 1405127 (1.3 MiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 35  bytes 2414 (2.3 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

ip 地址(wsl 上的 kali-linux)

1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host
       valid_lft forever preferred_lft forever
2: bond0: <BROADCAST,MULTICAST,MASTER> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 7e:1c:de:e7:d3:ac brd ff:ff:ff:ff:ff:ff
3: dummy0: <BROADCAST,NOARP> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 1a:65:36:61:31:f6 brd ff:ff:ff:ff:ff:ff
4: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:15:5d:ab:4d:29 brd ff:ff:ff:ff:ff:ff
    inet 172.20.134.143/20 brd 172.20.143.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet 192.168.1.69/24 brd 192.168.1.255 scope global eth0
       valid_lft forever preferred_lft forever
    inet6 fe80::215:5dff:feab:4d29/64 scope link
       valid_lft forever preferred_lft forever
5: sit0@NONE: <NOARP> mtu 1480 qdisc noop state DOWN group default qlen 1000
    link/sit 0.0.0.0 brd 0.0.0.0

谢谢你的阅读,并试图帮助我,我已经被这个 ping 问题困扰了大约一个星期

答案1

你确实有两个问题——一个是你标题中的问题,另一个是隐藏在其中的“真正的问题”。

  1. 如何在 WSL2 下更改路由
  2. (实)如何允许网络上的其他主机访问WSL2实例(例如ping等)

如果您的目标确实是第二个,那么我诚实地建议忽略第一个。 WSL2 在虚拟网卡 (vNIC) 上运行,默认情况下,该虚拟网卡在 Windows 主机下运行 NAT(通过 Hyper-V 功能的子集)。为了希望修改它,您需要将其更改为桥接接口。这不是通常支持的配置。我会指出你此信息在 Reddit 上讨论了一种可能实现这一点的方法,但引用该帖子中的警告:

可笑的是,这是未经支持、未经批准的,并且是仅通过实验产生的。不提供任何保证或责任。我只保证到目前为止它对我有用。可能会导致压力、脱发或酗酒。不要嘲笑。

:-)

实际上,我会用另一种方式表达它。它是可能的这可能会导致 WSL2 中几乎无法恢复的网络故障,甚至需要重新安装 Windows。 WSL2 网络似乎有点“脆弱”,遗憾的是,我在 Stack 上看到的一些有关故障的问题似乎从未得到解决方案。

但对于如何从网络上的其他计算机访问 WSL2 实例的真正问题,我已经在 Stack 上的其他地方写了几个答案,但从未在此处写过 Unix/Linux 的答案。

也就是说,我不会在这里重复一遍,因为它实际上不是“Linux/Unix”的东西,但我会指出这个答案

请注意,如果您使用 Kali Linux 的主要目标是学习网络(我看到很多人在 WSL2 上使用 Kali),那么恕我直言,WSL2 并不是一个很好的解决方案。 WSL2 在很多方面都很出色,但它的网络非常有限,因为它是虚拟化运行的。

也就是说,socat我在该答案中提供的解决方案是一种有趣的网络黑客技术,您可能会从中学到一些与网络相关的东西 - 我知道我做到了!

相关内容