ICMP TTL-перавышаная загаловак паказвае Даўжыня: 243 [Даўжыня зыходнай дейтаграмм: 972] у Wireshark. Арыгінальны TCP-SYN быў 58 байт

TCP SYN для трасіроўкі

TCP-SYN Total length 58B - 14B eth - 20B IP - 24B TCP

ICMP TTL-exceeded reply with Length field in ICMP header??

паказвае загаловак ICMP даўжыня 243 [Даўжыня зыходнай дейтаграмм: 972]

Не ведаю, як гэта працуе, як я паслаў TCP-SYN з 58 байт кадра. Калі ласка, растлумачце

0
ICMP памылка вяртае як большую частку зыходнага пакета практычныя. Частку ў дужках не з'яўляецца часткай пакета, але нешта Wireshark падае для вас. (Няправільна, здавалася б.)
дададзена аўтар Neall, крыніца
ICMP і TCP-два асобных пратаколаў. Вы не можаце мець адначасова ў адной і той жа карыснай нагрузкі пакета. ICMP будзе адказам для сегмента TCP.
дададзена аўтар Ron Maupin, крыніца

1 адказы

Калі полі «Length» у загалоўку ICMP мае значэнне 243, то хост пасылае яго думаў, арыгінальная дейтаграмм была даўжынёй 243 * 4 = 972 байт. Wireshark правільна справаздачнасці меркаванай даўжынёй зыходнай дейтаграмм, бо 1) хост пасылае пакет ICMP ня правільна разлічыць даўжыню або 2) пакет сапраўды <ет> зрабіў мае даўжыню 972 байт.

Што агульная даўжыня поле IP-загалоўка, які папярэднічае загалоўку шоу TCP? Калі ў вас не было якіх-небудзь опцый IP, то павінен паказваецца даўжыня 20 + 24 = 44 (20 для загалоўка IPv4, 24 для TCP загалоўка з опцыяй MSS); поле даўжыні ў пытанні знаходзіцца ў 4-байтавая блокаў, так што гэта павінна было быць 11. Калі не маюць значэнне 11, але замест таго, мела значэнне 243, гэта памылка ў код, які пабудаваў загаловак IPv4 для сегмента TCP SYN.

1
дададзена
Даўжыня складала 44 байт. Дзякуй за тлумачэнне.
дададзена аўтар Dustin Wyatt, крыніца
Гэта значыць, калі вы адкрыеце «Пратакол Інтэрнэту, версія 4, ...» лінія прама над «Пратакол кіравання перадачай ...» радка (<я> не адзін вышэй «Пратакол паведамленняў Internet Control» лінія), і паглядзець на «Агульную даўжыню:» лініі ў раздзеле адкрыўся, ён сказаў 44 (гэта значыць, лікавае значэнне 11)? Калі гэта так, то ўсе праграмы разаслалі, што ICMP паведамленне было глючыць.
дададзена аўтар nickd, крыніца