Suite à et les développeurs d'Ubuntu le passage à l'utilisation par défaut du filtre de paquets .
Pour garantir la rétrocompatibilité, il est proposé d'utiliser le paquet , qui fournit des utilitaires avec la même syntaxe de ligne de commande que celle d'iptables, mais traduisant les règles reçues en bytecode nf_tables. Ce changement est prévu pour être inclus dans la sortie automnale d'Ubuntu 20.10.
C'est la deuxième tentative de transition d'Ubuntu vers nftables. La première tentative a été faite l'année dernière, mais a été rejetée en raison d'incompatibilités avec les outils . Maintenant, dans LXD, il y a déjà un support intégré pour nftables et il peut fonctionner avec le nouveau backend pour le filtrage des paquets. Pour les utilisateurs qui ne se contentent pas d'une couche de compatibilité, il est possible d'installer les utilitaires classiques iptables, ip6tables, arptables et ebtables avec l'ancien backend.
Rappelons que dans le filtre de paquets les interfaces de filtrage des paquets pour IPv4, IPv6, ARP et les ponts réseau sont unifiées. Dans le paquet nftables, des composants de filtrage des paquets fonctionnent en espace utilisateur, tandis qu'au niveau du noyau, le système nf_tables, intégré au noyau Linux depuis la version 3.13, gère le travail. Au niveau du noyau, seul une interface générale est fournie, indépendante des protocoles spécifiques et offrant des fonctionnalités de base pour l'extraction de données des paquets, la réalisation d'opérations sur les données et la gestion du flux.
Directement, les règles de filtrage et les gestionnaires spécifiques aux protocoles sont compilés en bytecode en espace utilisateur, qui est ensuite chargé dans le noyau via l'interface Netlink et exécuté dans le noyau dans une machine virtuelle spéciale, semblable à BPF (Berkeley Packet Filters). Cette approche permet de réduire considérablement la taille du code de filtrage fonctionnant au niveau du noyau et d'externaliser toutes les fonctions d'analyse des règles et de logique de travail avec les protocoles en espace utilisateur.
Source : opennet.ru
