![广播域中的所有主机和节点都必须具有相同的 MTU 值吗?](https://linux22.com/image/1432999/%E5%B9%BF%E6%92%AD%E5%9F%9F%E4%B8%AD%E7%9A%84%E6%89%80%E6%9C%89%E4%B8%BB%E6%9C%BA%E5%92%8C%E8%8A%82%E7%82%B9%E9%83%BD%E5%BF%85%E9%A1%BB%E5%85%B7%E6%9C%89%E7%9B%B8%E5%90%8C%E7%9A%84%20MTU%20%E5%80%BC%E5%90%97%EF%BC%9F.png)
互联网上的一些文档说,广播域(即路由器边界)中的所有接口都必须具有相同的 MTU 值。这是一条不灵活的规则吗?但是,我的漫游笔记本电脑使用 IPsec 并且需要较低的 MTU,该怎么办呢?我不会更改 wifi 热点的 MTU 值……我甚至不想更改我的家庭路由器的交换机 MTU 值……也许我在这里感到困惑……
答案1
Is that an inflexible rule ?
不一定,但可能会有问题。
您无法传递未分段的、大于路径中最小 MTU 的数据包。这些数据包可能会或可能不会被这些传输路由器上的配置分段。如果允许分段,数据包仍将通过。这通常是不希望的,因为它会增加负载。
例子:
MTU
R1:1500<->R2:1500<->R3:1500<->R4:1350<->R5:9000<->R6:1500
在以下示例中,没有碎片的情况下可以拥有的最高 MTU 是 1350,因为它是路径中的最低值。这通常不是问题,除非传输路径中的路由器不允许碎片。使用企业级设备,您可以运行 ping 并为其添加“df”标志,表示“不碎片化”。您将静态设置 ICMP 的大小,看看它是否可以通过。这是一种很好的故障排除方法,可用于确定可能的 mtu 问题。
在您的 IPSec 方案中,客户端应该会自动为您调整 MTU(如在 ipsec 软件中一样)。Cisco IPSec 客户端会自动将您的 MTU 调整为 1200。此外,可以配置路由器来调整 mss,并在路由器和客户端之间进行中继。它将调整端到端通信的 MTU,而不是用于出口流量的 ip mtu。
一个经验法则是,在客户端上缩小规模,并坚持 RFC 标准/制造商的路由最佳实践。如果您拥有企业级路由器,请根据需要调整 VLAN 和 WAN 接口。
在所有执行 LAN 到 LAN IPSec 的设备上,我将 Vlan 上的 MSS 调整为 1200,因为这就是 Cisco 对您的 PC 所做的 - 而且它始终有效。:)