ICMP-TYPE
icmpにはICMP-TYPEといったものがあります。icmpはTCP/IPネットワークにおいて機器がお互いの状態(間のネットワークの状態といった方がいいかもしれませんが)を確認するためにpingのような診断プログラムによって利用されるプロトコルです。従ってネットワーク的に診断をするためのいろいろな通信ができる必要があるわけで、このいろいろな通信を実現しているのがICMP-TYPEというわけです。
ICMP-TYPEには以下のようなものがあり、iptablesの--icmp-typeオプションを利用することによりicmpパケットに対する細かなフィルタリング設定を実現できます。
type | 表示 | 内容 |
0 | Echo Reply | エコー応答Echo Reply(エコー応答)(pingなど) |
3 | Destination Unreachable | 宛先到達不可(宛先の相手が存在しなかった、もしくは障害中) |
4 | Source Quench | 発信制御(受信元のパソコンが送信元に、処理が追いつかないので転送を止めてほしいとリクエスト、など) |
5 | Redirect | ルート変更(ルーター増設時などに最適経路を発見したときに利用)。表示されると一瞬びっくりします |
8 | Echo Request | エコー要求(pingなど) |
11 | Time Exceeded for a Datagram | 時間超過 |
12 | Parameter Problem on a Datagram | パラメーター問題(IPヘッダに問題があったとき、受信側が送信側に送る) |
13 | Timestamp Request | タイムスタンプ要求 |
14 | Timestamp Reply | タイムスタンプ応答 |
15 | Information Request | 情報要求 |
16 | Information Reply | 情報応答 |
17 | Address Mask Request | アドレスマスク要求(自分が所属しているサブネットのサブネットマスクを知ろうとしたパソコンが送信する) |
18 | Address Mask Reply | アドレスマスク応答 |
pingを通す
pingによる死活監視を有効にするために、Echo RequestとEcho Replyを通します。
設定は以下の通りです。
iptables -A INPUT -m icmp -p icmp --icmp-type 8 -j ACCEPT
iptables -A OUTPUT -m icmp -p icmp --icmp-type 0 -j ACCEPT
icmp-host-prohibited
よく以下の設定を見かけますがどういう意味だかご存知ですか?
--reject-withオプションに続いてicmp-host-prohibitedが指定されています。これはパケットを拒否した際に返すエラーメッセージを指定するオプションみたいです。この例の場合は、icmp-host-prohibitedというエラーが応答として返されます。意味的には接続を拒否したよってことが伝えられるみたいです。
iptables -A INPUT -m icmp -p icmp -j REJECT --reject-with icmp-host-prohibited
なお、icmp-host-unreachableを指定するとホストまで届かなかったよって意味の応答が返されます。
参考
- http://www.asahi-net.or.jp/~aa4t-nngk/ipttut/output/index.html
0 件のコメント:
コメントを投稿