服务器|EsgynDB Troubleshooting - 网卡MTU导致跨网段访问数据库失败

现象 数据库服务一切正常,从同网段访问数据库可以正常访问,从另外一个网段访问数据库失败。
通过ping及telnet端口号均正常。
解决 查询发现客户端的MTU值和集群服务器的MTU值设置为9000,而网关的MTU值为1500,导致网络传输丢包严重。修改MTU值后解决。
修改MTU值 方法一:
ifconfig:
查看当前MTU值:ifconfig eth0
设置本机MTU值:ifconfig eth0 mtu 1500
方法二:
文件:
查看:cat /sys/class/net/eth0/mtu
设置:echo “1500” > /sys/class/net/eth0/mtu
方法三:
添加MTU=1500到/etc/sysconfig/network-scripts/ifcfg-team0,需重启生效
何为MTU? 【服务器|EsgynDB Troubleshooting - 网卡MTU导致跨网段访问数据库失败】MTU是Maximum Transmission Unit的缩写,意思是网络上传送的最大数据包。大部分网络设备的MTU都是1500,如果本机的MTU比网关的MTU大,大的数据包就会被拆开来传送,这样会产生很多数据包碎片,增加丢包率,降低网络速度。把本机的MTU设成比网关的MTU小或相同,就可以减少丢包。

    推荐阅读