Snort内联模式传递数据包,但它们从未到达目的地

时间:2018-12-27 01:58:25

标签: routing inline snort

我正在以串联模式(afpacket)运行snort,这是我的设置。

**VM1** (eth0: 10.0.10.20/24)
          ^
          |
          |
          v
(eth0: 10.0.10.10/24)
**Snort** 
(eth1: 10.0.20.10/24) 
          ^
          |
          |
          v
(eth0: 10.0.20.20/24) **VM2**

我使用以下命令运行snort:

sudo snort -Q -c /etc/snort/snort.conf -i eth0:eth1 -A console

我的snort.conf有以下几行:

config daq: afpacket
config daq_dir: /usr/local/lib/daq/
config daq_mode: inline
config policy_mode: inline
config daq_var: buffer_size_mb=128

我的local.rules文件具有以下一条规则:

pass icmp any any -> any any (msg:"received icmp ping"; GID:1; sid:10000001; rev:001; classtype:icmp-event;)

现在,当VM1 ping VM2(在两台机器上都设置了路由)时,我可以看到Snort将数据包从eth0传递到eth1(eth1的TX计数器已更新)。但是,数据包不会离开运行Snort的VM,也不会到达VM2。 我不知道为什么会这样。使用拖放操作时,VM1会“无法到达目标”,因此我认为Snort运行良好。但是问题似乎与运行Snort的VM的主机网络有关。

知道为什么会这样吗?

谢谢

1 个答案:

答案 0 :(得分:0)

afpacket DAQ模块几乎不可能具有“ true”内联模式。我改用NFQueue,一切工作都很好。