DF biti ayarlanmış ve yönlendiricim için çok büyük bir paket boyutu olan uzak bir siteye ping attığımda, ilk ICMP "parçalanma gerekli" mesajı yönlendiriciden gönderilir. Bundan sonra mesaj localhost'tan geliyor.
Netstat -rC (Linux'ta) yönlendirme tablosu önbelleğini görmeme izin veriyor, ancak
1) MTU'ları MSS adlı bir sütunun altında gösterdiği anlaşılıyor (bu bağlantının alt TCP MSS'si olmasını beklerim)
2) Değeri her zaman 1500 olarak gösterir
Yerel ana bilgisayarım PMTU'yu bir yerde önbelleğe almalıdır, böylece gerekli parçalanma mesajını oluşturabilir. Ama bunu nasıl görüyorum?
İşte benim makine bir örnek (netstat üzerinde -n ters DNS aramaları engeller):
[root@vbcentos ~]# ping -c 4 -M do -s 1431 212.58.244.69
PING 212.58.244.69 (212.58.244.69) 1431(1459) bytes of data.
From 217.155.134.6 icmp_seq=1 Frag needed and DF set (mtu = 1458)
From 217.155.134.4 icmp_seq=2 Frag needed and DF set (mtu = 1458)
From 217.155.134.4 icmp_seq=2 Frag needed and DF set (mtu = 1458)
From 217.155.134.4 icmp_seq=2 Frag needed and DF set (mtu = 1458)
--- 212.58.244.69 ping statistics ---
1 packets transmitted, 0 received, +4 errors, 100% packet loss, time 1002ms
[root@vbcentos ~]# netstat -rCn
Kernel IP routing cache
Source Destination Gateway Flags MSS Window irtt Iface
217.155.134.3 217.155.134.4 217.155.134.4 il 0 0 0 lo
217.155.134.4 212.58.244.69 217.155.134.6 1500 0 0 eth0
217.155.134.4 217.155.134.4 217.155.134.4 l 16436 0 0 lo
217.155.134.3 217.155.134.255 217.155.134.255 ibl 0 0 0 lo
217.155.134.4 212.58.244.69 217.155.134.6 1500 0 0 eth0
217.155.134.6 217.155.134.4 217.155.134.4 il 0 0 0 lo
212.58.244.69 217.155.134.4 217.155.134.4 l 0 0 0 lo
[root@vbcentos ~]#
EDIT: Öneri başına:
ip route get to 212.58.244.69
verir
212.58.244.69 via 217.155.134.6 dev eth1 src 217.155.134.4
cache mtu 1500 advmss 1460 hoplimit 64
MSS, PMTU yerine mtu arabirimi olan mtu'dan sadece 40 daha az olduğu için de yanlış görünüyor.
netstat -rCn
hiçbir şey döndürmez, ancakwatch ip route get to $HOST
önbellek TTL'si dahil olmak üzere neler olduğunu gösterir.ip route show cached
muhtemelen bir şey çıktı gösterir ama değil gösterir.