然后,在主机上禁用ICMP重定向消息是否存在速度问题?还是微不足道?
#1 楼
当您在同一子网中有主机或路由器A
与其他两个路由器B
和C
并同时连接到这两个路由器时,最常见的是ICMP重定向。考虑以下网络: |__192.168.1.0/24__|
| | |
|
| |___192.168.8.0/24__|
| | | |
B C
|____|_____|____|
| | |
A
A
将具有指向B
的路由(很可能是默认路由),而B
将具有指向192.168.8.0/24
的更具体路由C
。没有ICMP重定向,所有从
A
到192.168.8.0/24
的流量都将被路由A->B->C
启用ICMP重定向后,
B
会通知A
C
是更好的下一个-跃点和后续流量将被路由。重定向和重新设计网络以完全避免这种情况将是首选解决方案,例如: |__192.168.1.0/24__|
| | |
|
| |___192.168.8.0/24__|
| | | |
B-----C
|____|__________|
| | |
A
(或完全删除
A->C
并直接将C
挂掉192.168.8.0/24) 。 评论
那么,您的意思是网络结构比ICMP重定向更重要?
– baeharam
18/12/6在1:19
ICMP重定向指示已配置了次优路由,并尝试解决此问题-IMO,这是一个设计问题
–本杰明·戴尔(Benjamin Dale)
18/12/6在4:47
实际上,您的重新设计只是消除了使用ICMP重定向优化路由的可能性-您获得的是不可避免的A-> B-> C路由和back(!)。优化重新设计应删除C并将其子网/链接连接到B。
– Zac67
18/12/6在18:35
是的-我在进行重新设计时确实发生了这种情况:)但是我发现删除C可能会改变很多事情-有时C可能是不可避免的要求(将提供者/第三部分的NTU传输到另一个网络等)。
–本杰明·戴尔(Benjamin Dale)
18/12/6在21:49
#2 楼
ICMP重定向是信任时代的残余,部分原因是联网的计算机拥有管理员,而BYOD是不可想象的。这将导致该路由器不必要的工作以及其接口上的不必要流量,从而稍微降低使用该网关的每个人的性能。还会增加客户端的延迟,因为每个数据包都必须占用
但是,在一般情况下,在现代网络上,这两个“成本”都可以忽略不计。
解决此问题的理想方法是要在客户端上添加以使用正确网关的路由。 ICMP重定向提供了一种使其自动发生的方式,但可能不应该被信任-但是它们仍然表明存在更好的路由,并且对其进行记录可以让人们考虑进行此类更改(也许在咨询网络管理员之后)。
重新设计网络可能是错误的选择。
评论
绝对:有时候配置的简单性比数据包效率重要得多。我见过的网络中所有路由都是静态的,“次优”路由很多,流量低,配置错误从不发生。快乐的网络管理员在中央路由器上保持了完美的静态路由,仅此而已。始终参考自己组织的优先事项。当然,除非存在实际问题,否则不要重新设计网络
– jonathanjo
18年6月6日在10:18
“在现代网络上,这两个“成本”都可以忽略不计””-是的,但前提是只有足够的链路带宽(您可能会在“现代”中包括它;-)。
– Zac67
18/12/6在18:40
主机上的静态路由?颤抖简单,是的,但是很难捕捉
–本杰明·戴尔(Benjamin Dale)
18/12/6在21:51
评论
在正确配置的网络中,重定向不会发生,也没有必要。严格遵守规则会导致数据包丢失-永远不会将数据包转发出接收该数据包的接口,但几十年来没有人这样做。重定向不能被信任,因此大多数主机都不接受它们,因此大多数管理员将其路由器配置为不麻烦发送它们。