mc胖丁 2024-05-15 22:39 采纳率: 25%
浏览 29
已结题

keepalived的虚拟VIP地址 ping -s 发包测试,只能通过1472字节以下的数据包(相关搜索:静态路由)

keepalived的虚拟VIP地址 ping -s 发包测试,只能通过1472字节以下的数据包,是什么原因呢?测试中途网络设备无关,手动在备机配置静态路由,可以正常通过大字节数据包。有什么好的办法解决吗?

  • 写回答

23条回答 默认 最新

  • 专家-郭老师 Java领域新星创作者 2024-05-15 22:39
    关注
    获得0.45元问题酬金

    🕗晚上好,题主!目前:🟢[在线]
    📢参考通义千问、由郭老师整理提供!
    📣今日诗号:落霞与孤鹜齐飞,秋水共长天一色。

    原因:

    Keepalived 虚拟 IP 地址使用的 VRRP 协议有一个默认的 MTU 值为 1472 字节。超过此大小的数据包将被丢弃。

    解决方案:

    有以下几种方法可以解决此问题:

    1. 手动配置 VRRP MTU:

    在主和备 Keepalived 配置文件中,添加以下选项:

    vrrp_instance <INSTANCE_NAME> {
        ...
        mtu <MTU_VALUE>
        ...
    }
    

    将 MTU_VALUE 设置为需要支持的大数据包大小。

    2. 使用 VRRP 广播地址:

    将 VRRP 广播地址配置为网络上支持更大 MTU 的路由器或交换机。这将绕过 VRRP 协议的 MTU 限制。

    3. 使用 GRE 隧道:

    GRE(通用路由封装)隧道可以在两台主机之间创建虚拟点对点链路。将 GRE 隧道配置为具有更大的 MTU,以允许更大数据包通过。

    4. 使用 IP 分片:

    IP 分片是一种将大数据包分解为较小片段的技术,以便它们可以通过具有较小 MTU 的网络。但是,这会导致额外的开销和潜在的性能问题。

    5. 检查网络设备:

    确保网络设备(例如交换机或路由器)上配置了正确的 MTU 大小。如果设备不支持所需的 MTU,则需要升级或更换设备。

    完整代码示例:

    在主和备 Keepalived 配置文件中添加以下选项:

    vrrp_instance <INSTANCE_NAME> {
        ...
        mtu 1600
        ...
    }
    

    将 mtu 设置为 1600 以支持 1600 字节大小的数据包。

    评论

报告相同问题?

问题事件

  • 系统已结题 5月23日
  • 创建了问题 5月15日

悬赏问题

  • ¥15 java代码写在记事本上后在cmd上运行时无报错但又没生成文件
  • ¥15 关于#python#的问题:在跑ldsc数据整理的时候一直抱这种错误,要么--out识别不了参数,要么--merge-alleles识别不了参数(操作系统-linux)
  • ¥15 PPOCRLabel
  • ¥15 混合键合键合机对准标识
  • ¥100 现在不懂的是如何将当前的相机中的照片,作为纹理贴图,映射到扫描出的模型上
  • ¥15 魔霸ROG7 pro,win11.息屏后会显示黑屏,如图,如何解决?(关键词-重新启动)
  • ¥15 有没有人知道这是哪里出了问题啊?要怎么改呀?
  • ¥200 C++表格文件处理-悬赏
  • ¥15 Windows Server2016本地登录失败
  • ¥15 复合卡卡号轨道写入芯片卡