通过 TUN 接口发送的数据包未路由

通过 TUN 接口发送的数据包未路由

我有一个附加到 TUN 接口的 C 程序。在这个程序中,我正在构建数据包并将它们写入接口。

现在为了检查数据包是否确实是从我的 TUN 接口发送的,我使用iptables规则来记录它们:

iptables -t mangle -A PREROUTING  -j LOG --log-prefix "PREROUTING-MANGLE "  --log-level 4
iptables -t mangle -A INPUT       -j LOG --log-prefix "INPUT-MANGLE "       --log-level 4
iptables -t mangle -A FORWARD     -j LOG --log-prefix "FORWARD-MANGLE "   --log-level 4

我可以在 PREROUTING 链中看到日志消息,这意味着数据包已从 TUN 接口正确发送。但我看不到数据包击中其他链。

我已正确配置路由规则并且转发选项已激活。

有什么方法可以记录丢弃的数据包或了解丢弃数据包的原因吗?

任何帮助将不胜感激!

相关内容