最初のPCから2番目のPCへのpingを許可し、2番目のPCから最初のPCへのpingをブロックするにはどうすればよいですか?
両方のMikrotikルーターでこのファイアウォールルールを作成しました。
add action=accept chain=forward dst-address=192.168.100.17 protocol=icmp \
src-address=192.168.11.252
add action=accept chain=forward dst-address=192.168.11.252 protocol=icmp \
src-address=192.168.100.17
add action=drop chain=forward
最初または2番目のルールをオフにすると、どのpingも機能しません。両方を許可すると、pingは両方のPCで機能します。
'ping'要求と応答はどちらもICMPです。したがって、いずれかの方向で、1つのルールが要求を許可し、別のルールが応答を許可します。
icmp-options=Type[:Code]
を使用して、個々のICMPパケットタイプを照合できます。 このWebサイト によると、エコー要求はタイプ8で、応答はタイプ0です。
ICMPは単なる「ping」よりも少し多いことに注意してください。 ICMPエラー表示を破棄することは実際には賢明ではありません。
答えが必要な人のために:
両方のルーターで、ICMPタイプ0(エコー応答)をルールに一致させました。
add action=accept chain=forward dst-address=192.168.100.17 protocol=icmp \
src-address=192.168.11.252
両方のルーターで、ICMPタイプ8(エコー要求)をルールに一致させました。
add action=accept chain=forward dst-address=192.168.11.252 protocol=icmp \
src-address=192.168.100.17
両方のルーターの完全なルール:
add action=accept chain=forward dst-address=192.168.100.17 icmp-options=0:0-255 \
protocol=icmp src-address=192.168.11.252
add action=accept chain=forward dst-address=192.168.11.252 icmp-options=8:0-255 \
protocol=icmp src-address=192.168.100.17
add action=drop chain=forward
したがって、192.168.100.17から192.168.11.252まで-pingは機能しています。
192.168.11.252から192.168.100.17へ-pingが機能していません。