Можно ли увеличить максимальный размер пинга до 65500 байт?
Могу ли я переопределить максимальный размер по умолчанию - 65535 bytes
ICMP пинг пакетов? Если - то как?
8 ответов
Максимальный размер пакета IPv4 составляет 65535 байтов, некоторые из которых являются издержками протокола, так что данные должны быть на пару байтов меньше 65535, а эхо-запрос не может быть больше одного IP-пакета, поэтому ответ отрицательный.
Почему вы хотите отправить пинг большего размера?
Максимальный размер - 65507, то есть 65535 (максимальная длина ip) - 20 (ip hdr) - 8 (icmp/ping hdr) = 65507. Максимальный размер блока ОС Windows составляет 65500, но в Linux вы можете пинговать до реального предела
Да
В Windows введите:
Ping <target> -l xx
где xx - размер буфера.
Для полных настроек команды Windows ping -
Usage: ping [-t] [-a] [-n count] [-l size] [-f] [-i TTL] [-v TOS]
[-r count] [-s count] [[-j host-list] | [-k host-list]]
[-w timeout] [-R] [-S srcaddr] [-4] [-6] target_name
Options:
-t Ping the specified host until stopped.
To see statistics and continue - type Control-Break;
To stop - type Control-C.
-a Resolve addresses to hostnames.
-n count Number of echo requests to send.
-l size Send buffer size.
-f Set Don't Fragment flag in packet (IPv4-only).
-i TTL Time To Live.
-v TOS Type Of Service (IPv4-only. This setting has been deprecated
and has no effect on the type of service field in the IP Header).
-r count Record route for count hops (IPv4-only).
-s count Timestamp for count hops (IPv4-only).
-j host-list Loose source route along host-list (IPv4-only).
-k host-list Strict source route along host-list (IPv4-only).
-w timeout Timeout in milliseconds to wait for each reply.
-R Use routing header to test reverse route also (IPv6-only).
-S srcaddr Source address to use.
-4 Force using IPv4.
-6 Force using IPv6.
Да, есть способ увеличить размер по умолчанию. На какую ОС или сетевое устройство вы ссылаетесь?
Кстати, нет никаких практических причин для увеличения размера, если вы не любопытны или просто злонамеренны.
С точки зрения сетевых операций увеличение накладных расходов приведет к снижению производительности. Это плохая идея.
С точки зрения безопасности, и, как отмечает John T, увеличение размера пакета для сообщений ICMP обычно приводит к отказу в обслуживании.
Ответ: # ping google.com -s 65535.
Использование: ping [ОПЦИИ] ХОСТ
Отправка ICMP ECHO_REQUEST на HOST
-4,-6 Force IP or IPv6 name resolution
-c CNT Send only CNT pings
-s SIZE Send SIZE data bytes in packets (default 56)
-i SECS Interval
-A Ping as soon as reply is recevied
-t TTL Set TTL
-I IFACE/IP Source interface or IP address
-W SEC Seconds to wait for the first response (default 10)
(after all -c CNT packets are sent)
-w SEC Seconds until ping exits (default:infinite)
(can exit earlier with -c CNT)
-q Quiet, only display output at start/finish
-p HEXBYTE Payload pattern
Краткий ответ на ваш вопрос - " НЕТ "
Но вы можете открыть несколько ICMP Ping
экземпляры в то же время.
Открыть RUN > тип ping IP -t -l 65500
и сделать то же самое в течение 10 или более раз, это умножит пакеты.
Или вы можете использовать мою Java-программу ЗДЕСЬ. [Он открывает 100 экземпляров одновременно, занимая не более 5%-6% оперативной памяти]
Не используйте его для выполнения ping of death
атака.
Обновленная ссылка (также программа)
ИЛИ ЖЕ,
Используйте PsPing
Это инструмент Марка Руссиновича, который способен выполнять very fast
пинг. Он также может выполнять эхо-запросы TCP и UDP, поддерживает множество функций (например, разогрев). И многое другое
Вы можете использовать -l
переключитесь с помощью команды ping, чтобы указать размер буфера, хотя имейте в виду, что он ограничен 65500
байт. Я считаю, что ограничение связано с исторической ошибкой, пингом смерти.
Если вы увеличите размер пакета более чем на 65500, протокол не будет иметь никакого понятия для обработки пакетов такого типа, превышающих верхний предел. Скорее всего, система рухнет, атака, известная как Ping of death
,
Чтобы предотвратить это, большинство операционных систем ограничивает его максимальный размер. Чтобы пересечь лимит, вам нужно взломать ОС, и это зависит от того, какую ОС вы используете.