Half Coffee

如何测试物理网络 MTU 修改成功

2017-09-27
NSX

摘要:在进行 NSX VXLAN 配置的时候,先决条件是物理承载网络的二层以及三层 MTU ≥ 1600,否则可能出现数据中心内部访问、外部访问 ping 均正常,但是某些高层业务(例如 web服务)不通的情况,以下介绍下如何在不同平台进行大包 ping 测试

ESXi 之间测试

命令格式:vmkping ++netstack=vxlan -d -s 1570 Destination-VTEP-IP

使用 ESXi 的 vmkping 时,选择 1570 bytes,1570 代表 ICMP 包载荷大小,加上 ICMP 包头 8 bytes,再加上 IP 包头 20 bytes,总 IP 包大小 1598,刚好小于物理网络设置的 1600。实际最大可以发的包为 1572 bytes,1570 只是为了好记忆。

目的地址必须是其他 ESXi 主机的 VTEP VMkernel 地址。

root@esxcomp-02a ~ # vmkping ++netstack=vxlan -d -s 1570 192.168.250.100
    PING 192.168.250.100 (192.168.250.100): 1570 data bytes
    1578 bytes from 192.168.250.100: icmp_seq=0 ttl=64 time=1.294 ms
    1578 bytes from 192.168.250.100: icmp_seq=1 ttl=64 time=0.686 ms
    1578 bytes from 192.168.250.100: icmp_seq=2 ttl=64 time=0.758 ms
    
--- 192.168.250.100 ping statistics ---
3 packets transmitted, 3 packets received, 0% packet loss 
round-trip min/avg/max = 0.686/0.913/1.294 ms

root@esxcomp-01a ~ # vmkping ++netstack=vxlan -d -s 1570 192.168.250.101
    PING 192.168.250.101 (192.168.250.101): 1570 data bytes
    1578 bytes from 192.168.250.101: icmp_seq=0 ttl=64 time=0.065 ms
    1578 bytes from 192.168.250.101: icmp_seq=1 ttl=64 time=0.118 ms
--- 192.168.250.101 ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 0.065/0.091/0.118 ms

如果ESXI的VTEP在同一段,vmkping 测试不通过,那一定是物理交换机对应物理接口的MTU未设置好。

如果ESXi的VTEP不在同一网段,vmkping 测试不通过,需要逐段去 vmkping 测试沿途哪台交换机设置有问题(ping VTEP网关的IP地址,以及沿途三层网络互连IP)。


除了直接用ESXI测试,也可以直接在使用 VXLAN 网络的虚拟机上模拟测试业务。

目标地址可以是在不同主机运行的其他虚拟机,或者数据中心外部的某个业务 IP。

虚拟机内 Ping 时,包大小最大为 1472 bytes,1472 + 8 bytes ICMP包头+ 20 bytes IP 包头=1500 bytes

反过来通过数据中心外部的机器去 ping 运行在 VXLAN 上的虚拟机也可以。

Windows 系统

命令格式:ping -f -l 1472 Destination-IP

-f :表示不分片

-l :是小写的L,表示包的大小

Linux 系统

命令格式:ping -M do -s 1472 Destination-IP

-s :表示 ICMP 包大小

-M do :表示不分片

MAC OS 系统

命令格式:ping -s 1472 -D Destination-IP

-s :表示 ICMP 包大小

-D :表示不分片

~ $ ping -s 1472 -D  192.168.1.1
PING 192.168.1.1: 1472 data bytes
1480 bytes from 192.168.1.1: icmp_seq=0 ttl=54 time=23.989 ms
1480 bytes from 192.168.1.1: icmp_seq=1 ttl=54 time=21.345 ms
^C
--- 192.168.1.1 ping statistics ---
2 packets transmitted, 2 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 21.345/22.667/23.989/1.322 ms

相似文章

上一篇 如何卸载 NSX

评论