据我所知,路由缓存被删除是从LinuxKern3.6开始的。在具有较早Linux内核的系统中,可以使用ip route show cache命令查看路由缓存的内容,并在路由表之前查阅路由缓存。然而,在最新的Linux内核中路由缓存的状态是什么?它是否只是被移除,所有的数据包都通过路由表?是否有某种(类似的)替换系统?
虽然调试与运行在KVM下的一组虚拟机的网络配置有问题,但我发现了一种情况,即来宾VM中的内核已经决定用一个目标地址标记出的以太网帧,该地址与它在尊重内核IP路由表时所选择的地址相冲突。因此,在那个示例中,我期望将出站帧发送到de:ad: be :3b:24:48,它对应于拥有IP地址10.11.11.2并拥有一个路由到10.8.0.0/24的主机。实际发生的情况是,内核决定用目的地为00:10:db:ff:70:01来标记帧,这会将帧发送到10.11.11.1方向,这不知道如何路由到10.8.0.0/24,因此丢包。这一