system.logで多くのICMPスロットルメッセージを取得しています。
Apr 11 20:45:28 kernel[0]: Limiting icmp unreach response from 1054 to 250 packets per second
Apr 11 20:45:29 kernel[0]: Limiting icmp unreach response from 529 to 250 packets per second
トラフィックを実行することにより、単一のホストから来ていることがわかりました sudo tcpdump -ni en0 "icmp[0]=3 and icmp[1]=3"
20:48:32.614241 IP 64.........125 > 185.......98: ICMP 64.......125 udp port 27960 unreachable, length 36
20:48:32.616923 IP 64.......125 > 185.......98: ICMP 64.......125 udp port 27960 unreachable, length 36
64.......125
私のサーバーのIPはどこにあり、185.......98
リクエスターであると想定します(1000のログ行に表示される唯一のIPです)
私はpf
このIPをブラックリストに登録して、このポートへのICMPアクセスをブロックしようとしました(または、ICMPはポートベースではないように思われるので、一般的には)、ブロックするカスタムルールを試しました:
block drop on en0 inet proto icmp from 64.......125 to 185.......98
block drop on en0 inet proto icmp from 185.......98 to 64.......125
pfのすべての試行に関係なく、system.logおよびtcpdumpアクティビティが引き続き表示されます。
tcpdump
行を正しく解釈しましたか?(カラットの方向により、送信パケットのみのように見えますか?)
私の理解では、パケットがカーネルに到達するのをブロックしたので、適切に構成されていれば、これらのメッセージは消えます。あれは正しいですか?
正しくない場合、リクエストに基づいてアクションを実行する必要がありますか、それともログ行を無効にするための指示に従うだけですか?
pf
関連する場合は、OS X 10.8.5でIceFloorを使用して構成しています。