問題ID 26403
- フォーラムは新サイトへ移行しました。
- このフォーラムではゲスト投稿が禁止されています
問題ID 26403
msg# 1
aikoba
投稿数: 2
RouterB-(fa0/0) RouterA(fa0/1)-RouterC
とつながっており
アクセスリスト100ではecho-replyを許可しています。
「ip access-group 100 in」から、Fa0/0にアクセスリスト100が設定されています。
しかし、「RouterBからRouterCにpingが通らない」
という回答がありますが、RouterCからRouterBにpingが通らないの間違いではないでしょうか。
解説を読んでも腑に落ちません。
どなたかご教授お願いいたします。
とつながっており
アクセスリスト100ではecho-replyを許可しています。
「ip access-group 100 in」から、Fa0/0にアクセスリスト100が設定されています。
しかし、「RouterBからRouterCにpingが通らない」
という回答がありますが、RouterCからRouterBにpingが通らないの間違いではないでしょうか。
解説を読んでも腑に落ちません。
どなたかご教授お願いいたします。
Re: 問題ID 26403
msg# 1.1
antares01
投稿数: 690
アクセスリストはRouterAのFa0/0にInで適用されています。
これはFa0/0に入ってくるパケットに対して適用するということです。
ですので方向はRouterB発、RouterC宛の通信になります。
アクセスリストをみると、許可されているプロトコルにicmp のecho-replyがあります。
echo-replyはPingに応答する時に使われます。つまり、RouterCがRouterBに向けてPingをうった時にRouterBが応答する場合にアクセスリスト100が適用されてpermitされます。
Pingに応答する時ではなく、Pingを打つ側はicmp echo requestと呼ばれるものを使います。同じicmpの仲間ですが、requestとreplyで分かれています。
問題のアクセスリストにはreplyだけが許可されているので、RouterBからrequestが来た時には暗黙のdenyによって破棄されます。
※requestは以下のように単にechoとだけ表示されます。
この解説には肝心なことが明示されておらず、下段のほうにある【コマンド構文:拡張ACL】に少し書いてある程度なので、icmpのrequestとreplyの違いが分かっていないと戸惑うかもしれませんね。
これはFa0/0に入ってくるパケットに対して適用するということです。
ですので方向はRouterB発、RouterC宛の通信になります。
アクセスリストをみると、許可されているプロトコルにicmp のecho-replyがあります。
echo-replyはPingに応答する時に使われます。つまり、RouterCがRouterBに向けてPingをうった時にRouterBが応答する場合にアクセスリスト100が適用されてpermitされます。
Pingに応答する時ではなく、Pingを打つ側はicmp echo requestと呼ばれるものを使います。同じicmpの仲間ですが、requestとreplyで分かれています。
問題のアクセスリストにはreplyだけが許可されているので、RouterBからrequestが来た時には暗黙のdenyによって破棄されます。
※requestは以下のように単にechoとだけ表示されます。
R1(config)#access-list 100 permit icmp any any e?
echo echo-reply
この解説には肝心なことが明示されておらず、下段のほうにある【コマンド構文:拡張ACL】に少し書いてある程度なので、icmpのrequestとreplyの違いが分かっていないと戸惑うかもしれませんね。
Re: 問題ID 26403
msg# 1.2
arashi1977
居住地: 広島
投稿数: 1715
引用:この解説の中で重要なのは2点あります。
1.ACLの暗黙のdenyについて
ACLでは明示的にpermitされていないものについては無条件でdenyする、暗黙のdenyがあります。ですので、permitされていないものは通信できないと理解する必要があります。
2.pingに使うICMPメッセージについて
pingはICMP Echo-Request(タイプ8)とICMP Echo-Reply(タイプ0)メッセージの2つのメッセージの交換で成立します。
この2つは拡張ACLの中で厳密に区別されます。
ICMP Echo-Requestを受け取ったルータがEcho-Replyメッセージを返します。しかし設問のRouterAのFa0/0に適用されたアクセスリストではEcho-Requestを(暗黙のdenyにより)許可していないため、RouterBからのping(≒ICMP Echo-Request)はRouterCに届きません。
逆に、RouterCからのEcho-RequestについてはACLでフィルタされず、またRouterBが返すEcho-ReplyはACLでpermitされているのでRouterCからのpingは成功(RouterCからのEcho-Request及びRouterBからのEcho-Replyはそれぞれ到達)します。
よろしければ、問題ID:25837もご確認ください
RouterCからRouterBにpingが通らないの間違いではないでしょうか。
解説を読んでも腑に落ちません。
1.ACLの暗黙のdenyについて
ACLでは明示的にpermitされていないものについては無条件でdenyする、暗黙のdenyがあります。ですので、permitされていないものは通信できないと理解する必要があります。
2.pingに使うICMPメッセージについて
pingはICMP Echo-Request(タイプ8)とICMP Echo-Reply(タイプ0)メッセージの2つのメッセージの交換で成立します。
この2つは拡張ACLの中で厳密に区別されます。
Router#conf t
Enter configuration commands, one per line. End with CNTL/Z.
Router(config)#access-list 100 permit icmp any any ?
<0-255> ICMP message type
administratively-prohibited Administratively prohibited
alternate-address Alternate address
conversion-error Datagram conversion
dod-host-prohibited Host prohibited
dod-net-prohibited Net prohibited
dscp Match packets with given dscp value
echo Echo (ping) ←Echo Requestメッセージ
echo-reply Echo reply ←Echo Replyメッセージ
(略)
逆に、RouterCからのEcho-RequestについてはACLでフィルタされず、またRouterBが返すEcho-ReplyはACLでpermitされているのでRouterCからのpingは成功(RouterCからのEcho-Request及びRouterBからのEcho-Replyはそれぞれ到達)します。
よろしければ、問題ID:25837もご確認ください
Re: 問題ID 26403
msg# 1.3
aikoba
投稿数: 2
ICMPについて理解が足りなかったようです…
わかりやすい解説をありがとうございました!
おかげさまでスッキリいたしました!
わかりやすい解説をありがとうございました!
おかげさまでスッキリいたしました!