Назад | Перейти на главную страницу

Как создать прозрачный / встроенный / мостовой межсетевой экран через nftables?

Я застрял в настройке nftables.

table bridge filter {
    chain input { type filter hook input priority -200; policy accept;}
    chain forward {
        type filter hook forward priority -200; policy drop;
        ip protocol icmp counter accept;
    }
    chain output { type filter hook output priority 200; policy accept;}

У меня есть пара вопросов. Правило ip protocol icmp counter accept; не работает. Счетчик показывает +1 пакет в минуту или около того, а пинг не работает. Что я делаю не так?

Сначала вы должны разрешить работу разрешения ARP. Локальное IP-разрешение зависит от ARP:

nft add rule bridge filter forward ether type arp accept

В противном случае при попытке выполнить команду ping разрешение arp не удается, и вы получаете что-то вроде этого на узле, пытающемся перейти через мост:

# ip neigh show eth0
192.168.1.7 dev eth0  FAILED