1

在达到某个阈值后,我试图阻止特定用户/会话的 tcp 数据包。目前我能够编写一个丢弃 tcp 数据包的脚本。

@set_ev_cls(ofp_event.EventOFPSwitchFeatures, CONFIG_DISPATCHER)
    def switch_features_handler(self, ev):
        tcp_match = self.drop_tcp_packets_to_specfic_ip(parser)
        self.add_flow_for_clear(datapath, 2, tcp_match)

    def drop_tcp_packets_to_specfic_ip(self, parser):
        tcp_match = parser.OFPMatch(eth_type=0x0800, ip_proto=6, ipv4_src=conpot_ip)
        return tcp_match

谢谢。

4

1 回答 1

1

您需要设置一些规则来匹配数据包流。之后,您需要创建一个循环来获取有关此规则的统计信息。最后,您读取每个统计信息并验证数据包的数量。因此,如果数据包数量达到您的阈值,您将发送规则以阻止数据包。

于 2020-03-20T01:23:59.367 回答