可以访问默认网关,但不能访问子网的其余部分

可以访问默认网关,但不能访问子网的其余部分

我使用了一种有点奇怪的设置(我认为是这样),它允许我在欺骗我的 IP 和 MAC 的同时连接到子网(在测试环境中,正在做网络安全学院 ^^)。但是,路由器似乎没有路由我的任何请求,我不明白为什么。

我用这个作为指南:https://www.defcon.org/images/defcon-19/dc-19-presentations/Duckwall/DEFCON-19-Duckwall-Bridge-Too-Far.pdf

我的设置如下:

Ip: 169.254.66.66

route options:
Destination    Gateway        Genmask      Flags 
0.0.0.0        169.254.66.1   0.0.0.0      UG
169.254.0.0    0.0.0.0        255.255.0.0  U

Arp options:
Address        HWType    HWAddress            Flags
169.254.66.1   ether     xx:xx:xx:xx:xx:xx    CM

然后有一些 iptables 和 ebtables 规则用于重写传出请求的 IP 和 MAC(我想这些不可能是问题所在,它们已经工作了数周)但它们看起来像这样:

target   prot    source           destination    
SNAT     icmp    169.254.66.66    anywhere       to:some_legit_ip_from_subnet

通过此设置,我可以 ping 默认网关(或 arp 表中的任何硬件地址),但网关不会在子网上进一步路由我的请求。更奇怪的是,它确实将我的请求路由到互联网。因此,例如,我可以顺利 ping 8.8.8.8,但没有来自子网的 ips。

我不知道这样说是否清楚。如果不清楚,请询问。

感谢您的时间!

答案1

谢谢重力我找到了解决方案。有两个问题导致了这个问题。第一:网关默认不将流量路由到内部子网。第二:当使用除您发送请求的子网之外的其他 IP 时,ARP 表不会自动更新,这会导致对邻居的请求失败。

因此解决方案是:在网关的子网内分配一个 IP,并让 ARP 自行更新或手动更新 ARP 表。

谢谢你!

编辑:测试表明解决方案是两者的结合。不知道这是否总是如此,但在我的系统中,我的交换机和路由器不响应 ARP 请求。这意味着必须手动添加这些 MAC。

编辑 2:更多测试表明,如果您希望能够同时访问内部网络和外部网络,这是一个部分解决方案。如果外部 IP 以与您的子网相同的数字开头,它将尝试对其进行 ARP,而不是通过网关到达它。

相关内容