Очень часто встречается противоположное тому, о чем вы спрашиваете - Wake On LAN (WOL). Чтобы ответить на ваш вопрос, вам будет гораздо проще сначала это объяснить.
WOL
WOL требует наличия этих возможностей
Сеть в выключенном ПК должна иметь встроенную поддержку в его драйвере.
Материнская плата (BIOS) должна поддерживать режим низкого энергопотребления, который по-прежнему обеспечивает небольшое количество энергии для сетевой платы, когда ПК в противном случае выключен.
Второй ПК / сетевое устройство должно быть в локальной сети (ради этого упрощенного примера - вы можете сделать это через Интернет) и на нем должно быть программное обеспечение для генерации специального пакета.
Когда ПК выключен, ПК, который выдаст команду на включение, создает волшебный пакет:
Магический пакет - это широковещательный кадр, содержащий в любом месте в его полезной нагрузке 6 байтов всех 255 (FF FF FF FF FF FF в шестнадцатеричном формате), за которыми следуют шестнадцать повторений 48-битного MAC-адреса целевого компьютера, что в сумме составляет 102 байта.
Этот пакет отправляется всем в локальной сети. Каждый сетевой адаптер проверяет в нем MAC-адрес и, если он совпадает, сообщает материнской плате о необходимости включения системы.
С UDP-пакетом
По твоему вопросу это намного проще. ПК работает, и MB / NIC не нужно знать о специальном пакете. Простая программа или сценарий, использующий такую программу, как nc, может быть настроена на прослушивание пакета UDP на конкретном порту с предопределенным содержимым.
Поскольку UDP не использует соединение, никакие издержки (транзакционные пакеты) не задействованы. Достаточно одного пакета. После получения может произойти что угодно - выключить, запустить другую программу, удалить содержимое жесткого диска ...
Вы можете отправить этот пакет из любого места, предполагая, что существует правильная маршрутизация - это просто обычное UDP-сообщение.
Вы также можете, и в действительности ДОЛЖНЫ, работать с функциями безопасности в содержимом пакета, чтобы аутентифицировать пакет.
На самом деле это был бы достойный вводный проект для программирования сокетов.
Решение TCP
Использование TCP-пакета требует дополнительных и регулярных сообщений для поддержания работы сокета, что не соответствует вашим требованиям.
Но вы можете настроить правило брандмауэра на ПК, используя iptables, который идентифицирует пакет TCP, и преобразовать его в нечто, пригодное для использования в качестве триггера для запуска программы для выполнения желаемого действия. Немного капризный, но вполне выполнимый.