Я создаю NAT с помощью iptables:
Компьютер A: eth0 (dhcp) + eth1 (статический ip 192.168.0.1 - шлюз) Компьютер B: eth1 (статический ip 192.168.0.2, с использованием компьютера A в качестве шлюза)
Я знаю, как заблокировать исходящие запросы ICMP (-A ВЫХОД -p icmp --icmp-type эхо-запрос -j DROP), но это заблокировало бы запросы ICMP с компьютера A, но не с компьютера B (на самом деле, только для компьютера A - компьютер B может продолжать это делать).
Я пробовал с той же командой, но добавлял -o eth1, но это совсем не блокирует. Любая идея?
Вам нужно добавить это в таблицу FORWARD. (-A FORWARD
).
INPUT
предназначен для пакетов, поступающих на хост (пакеты, в которых хост является местом назначения, поэтому в вашем случае пакеты, предназначенные для хоста A)OUTPUT
предназначен для пакетов, исходящих из хоста (исходящих из хоста A, идущих куда-то еще) FORWARD
предназначен для пакетов, пересылаемых на какой-то другой хост (B в вашем случае), на другой хост (что бы вы ни пинговали, где-то в Интернете). Поскольку эти пакеты просто пересылаются кому-то другому, FORWARD
таблица используется здесь.