![ICMP 禁止 和 ICMP 不可达 有什么区别?](https://linux22.com/image/581641/ICMP%20%E7%A6%81%E6%AD%A2%20%E5%92%8C%20ICMP%20%E4%B8%8D%E5%8F%AF%E8%BE%BE%20%E6%9C%89%E4%BB%80%E4%B9%88%E5%8C%BA%E5%88%AB%EF%BC%9F.png)
如果我想禁止某条路由响应网络,我应该使用
ip route add unreachable 209.10.26.51
还是ip route add prohibit 209.10.26.51
?
答案1
UNREACHABLE
当路由器没有到达目的地的路由时,它会合法地返回。
PROHIBITED
可能是更好的做法。如果你养成了设置 unreachable 的习惯,那么当你在排查路由器返回响应的原因时,可能会造成混乱不能路由数据包,而实际上应该这么说惯于路由数据包。
答案2
最终,它们都将无法到达指定的主机/网络,因为它们都是ICMP 不可达错误主要的区别在于你想告诉网络使用者什么意思。
答案3
禁止意味着用户可以物理连接但不被允许。
无法接通意味着用户根本无法连接。
因此,报告什么取决于您想告诉用户什么。
您是否想让他们知道该 IP 是有效的,但他们没有连接所需的权限,或者您是否想有效地使 IP 不可见?