Sim, a ferramenta conntrack
tem opções para remover estados individuais ou liberar toda a tabela de estados. Ele usa o Netlink para fazer interface com o kernel.
conntrack --delete --orig-port-dst 80
Eu tenho roteador com base no sistema Linux. Eu tenho o SDK relacionado para personalizar o sistema linux do roteador.
Quando eu desabilito um encaminhamento de porta das regras do iptables, as sessões do conntrack em execução não diminuem e continuam estabelecidas.
Eu quero parar todas as sessões conntrack em execução quando desabilitar um encaminhamento de porta das regras de iptable. Quero dizer, remova apenas as sessões conntrack relacionadas à regra removida. Portanto, pare todas as sessões conntrack com o IP de destino (lan IP) = o IP de destino da regra removida.
Como fazer isso no espaço do kernel? como desenvolver um módulo do kernel que passe por cima de toda a sessão conntrack e verifique o IP de destino e remova apenas a sessão com um determinado ipaddress? há algum link para isso?
Existe uma forma de espaço do usuário (funções C ou comandos do Linux) para interromper sessões específicas do conntrack?
Sim, a ferramenta conntrack
tem opções para remover estados individuais ou liberar toda a tabela de estados. Ele usa o Netlink para fazer interface com o kernel.
conntrack --delete --orig-port-dst 80
Tags networking iptables linux