2012-04-02 6 views
0

Интересно, можете ли вы создать пакет ответа ICMP с помощью APIs из icmp.dll? На данный момент я смог отправить стандартный пакет запроса с использованием IcmpCreateFile, IcmpSendEcho и IcmpCloseHandle API. Благодарю.ICMP Ответ пакет

+0

Даже если бы вы могли, как бы работал этот код? OS отвечает на ping, ваше программное обеспечение не может «регистрироваться» как приложение для ответа ping. –

+0

@Mahmoud Al-Qudsi Он может, если вы используете сторонний драйвер, такой как WinPCap для своих целей. Я просто пытаюсь избежать этого маршрута и посмотреть, есть ли какие-то руки в доступных API. В противном случае мне придется самому разработать весь пакет, вычислить контрольные суммы заголовков IP и ICMP и т. Д. – astralmaster

+0

Вам не хватает моей точки. Предположим, есть библиотека, которая позволит вам создать ответный пакет ICMP. Как, без использования WinPCap, et. и др. вы сможете отправить это в ответ на входящий пакет ICMP? –

ответ

1

Для создания пользовательских пакетов вам понадобятся необработанные сокеты (встроенные в Windows XP +) или WinPcap.

+0

, вы видите, мне нужно отправить специально созданные ICMP-пакеты для проверки определенных уязвимостей на определенном устройстве. Я мог бы легко сделать это в Linux или использовать сторонний драйвер, такой как WinPcap для Windows. Но мне было интересно, предоставляют ли библиотеки Windows такие возможности. – astralmaster

+0

Как я уже говорил, последние версии Windows, но требуют доступа администратора. Если вы удовлетворены ответом, нажмите на галочку слева. – Deanna

+0

последние версии Windows не имеют таких возможностей. У сырых сокетов есть ограничения, даже с повышенными привилегиями. См. «Ограничения на сырые сокеты» здесь http://msdn.microsoft.com/en-us/library/windows/desktop/ms740548(v=vs.85).aspx. WinPcap - это вариант, о котором я упоминал в этой теме сам, чего я пытаюсь избежать. Так технически, я не вижу никаких ответов на мой вопрос. – astralmaster

Смежные вопросы