NetFilterHook:显示接口名称

NetFilterHook: Displaly Interface Name

过滤器 and/or 如何在 内核 space 中显示数据包到达的接口名称?

更具体地说,我希望在内核中打印出接口的名称,例如 eth0、wlan1 等。

其次,我怎样才能只过滤来自特定接口的数据包,例如只过滤 eth0?

在钩子函数中,有参数const struct net_device *inconst struct net_device *out。 您可以通过以下方式打印:

printk(KERN_INFO "%s\n", out->name);

或:

printk(KERN_INFO "%s\n", in->name);

注意:您需要检查是否为空。

关于第二个问题,可以在strcmp(in->name, "eth0")中的hook函数中使用,然后决定丢弃还是接受。