Mitiya писал(а):
Есть такая вещь как широковещательный адрес, ну или просто UDP пакет который в принципе широковещательный. Чего у вас на этом IP свет клином то сошелся ? Не IP всему голова а мак
UDP - это протокол семейства IP. И он не "в принципе" широковещательный, откуда Вы это взяли?
Почитайте хотя бы
http://ru.wikipedia.org/wiki/UDP
А что "голова", а что нет - это спорный вопрос. MAC существует только в одном широковещательном сегменте Ethernet, а IP-адрес - на всем протяжении времени доставки пакета, вне зависимости от среды передачи.
Теперь о WoL...
"Просыпание" бывает по пакетам разных типов (зависит от реализации производителем)¸ например:
- Wake on phy activity
- Wake on unicast messages
- Wake on multicast messages
- Wake on broadcast messages
- Wake on ARP
- Wake on MagicPacket(tm)
- SecureOn(tm) password for MagicPacket(tm)
(взято из man ethtool)
Специальными утилитами можно менять тип WoL, если это поддерживает карта.
Наиболее интересные (и часто используемые) типы - два последних.
Что касается инициализации карты без платы - современные контроллеры (например, на материнских платах) из-за "зеленых" (природоохранных) требований сейчас все чаще имеют WoL выключенным для экономии электроэнергии (да-да!), чтобы проснуться, нужно предварительно (до выключения компа) разрешить WoL - как правило, эта настройка не сохраняется (по тем же соображениям), ее нужно устанавливать при каждой загрузке.
Что и приходится делать...
"Старые" (относительно) платы такого ограничения могут и не иметь, и настройки WoL у них могут сохраняться в энергонезависимой памяти.
Такие, думаю, можно использовать, особенно если у них есть тот самый разъем для сигнала WoL.
Но зачем? Есть устройства типа NetPing (и не только эти, есть и у D-Link, и у более "именитых" производителей, и у китайцев), есть аналогичные свободные схемы на МК - просто поищите в Сети. Такие устройства имеют больше настроек, способны сначала подавать сигнал RESET, а потом, если устройство не сбросилось - и манипулировать (включать/выключать) его питание.
Все, что нужно в МК - реализация IP-стека (примитивного), что уже не представляет сложности, выводы для управления, и схему управления силовой нагрузкой.