Ru-Board.club
← Вернуться в раздел «В помощь системному администратору»

» WOL (wake-on-lan) - просыпаться по запросу из сети

Автор: cooper
Дата сообщения: 24.02.2009 12:12
По умолчанию WOL используются порты 7 и 9 UDP. Вопрос - что делать если эти порты закрыты провайдером?
Автор: Nikkolo
Дата сообщения: 25.02.2009 08:05
Ответ - использовать порт 10 (например), и сделать перенаправление на роутере.
Автор: GALOPERIDOL
Дата сообщения: 27.04.2009 12:31

Цитата:
Provizor_VRN
народ подскажите а как сделать так чтобы эта функция не работала, ато походу в сети шутники завелись.


Бывает же
Автор: StirolXXX
Дата сообщения: 30.04.2009 00:50
Такая фигня - по ночам бывает что включается машинка, после Hibernate'а.

Че делать? Дома в сети ничего что могло послать WOL пакет - нету, WOL отключен, включение после подачи питания - тоже.
Автор: petrialex
Дата сообщения: 28.05.2009 13:06
вместо nncron смотри в сторону xstart
под вислой работает

Добавлено:
имеем доступ к машине через инет
допустим разобрались с WOL
а можно ли включить машину через wifi?
т.е машина находиться за adsl wifi роутером.
Автор: FL0od13
Дата сообщения: 09.06.2009 17:03
Давненько хотел отписать в тему, вдруг кому пригодится.

У меня домен средних размеров - 250 компов.
Часто возникала ситуация, когда нужно было включить комп через WOL, а MAC-адрес этого компа был неизвестен (терялся, заканчивалась аренда в DHCP и т.п.).
И пришла мне идея использовать AD в качестве базы данных для хранения MAC-адресов.

Задача разбивается на две части:
1) Сохранить MAC в AD.
2) Выуживать MAC из AD и запускать по нему маджик-пакет.

Первая задача решается запуском [more=VBS-скрипта]
''' Скрипт для сохранения MAC-адреса в Active Directory
''' FL0od's Bicycles 2008-2009
''' Версия 1.02 (используется вместе с WOLfAD)

On Error Resume Next

Dim AD_Attribute
AD_Attribute = "location" ' Указываем имя атрибута (строкового) объекта типа "компьютер", куда будут сохранятся MAC'и

PutMACtoAD AD_Attribute, GetMAC_String

'
'------------------ Функции и процедуры --------------------
'

Function GetMAC_String
    Dim strNameSpace, strQuery, strMAC
    
    strNameSpace = "winmgmts:{impersonationLevel=impersonate}//./root/cimv2"
    strQuery = "SELECT * FROM Win32_NetworkAdapterConfiguration WHERE IPEnabled = True"

    Set colAdapters = GetObject(strNameSpace).ExecQuery(strQuery)

    For Each objAdapter in colAdapters
        If not Instr(StrMAC,objAdapter.MACAddress)>0 then StrMAC = StrMAC & objAdapter.MACAddress & ";"
    Next
    
    ''''''wscript.echo StrMAC
    GetMAC_String = StrMAC
End Function

Sub PutMACtoAD(Attr, MAC)
    Dim objSysInfo, objComputer
    Set objSysInfo = CreateObject("ADSystemInfo")
    strComputerDN = objSysInfo.ComputerName
    Set objComputer = GetObject("LDAP://" & strComputerDN)
    objComputer.put Attr,MAC
    objComputer.SetInfo
    
    Set objComputer = Nothing
    Set objSysInfo = Nothing
End Sub
[/more]
Его я запускаю через GPO при логоне пользователя.
Причём делаю это от имени другого пользователя (SaveMACtoAD), используя халявную программу CPAU,
т.к. у обычного пользователя прав на редактирование свойств компьютера в AD быть не должно.
Этот пользователь (SaveMACtoAD) должен быть в группе "Domain Users" и иметь права на чтение/запись свойства компьютера в AD.
Я использую в скрипте для хранения MAC-адресов св-во "location" (Размещение).
Делегировать стандартными средствами права только на это св-во нельзя.
Я дал права пользователю SaveMACtoAD при помощи adsiedit.msc:
Корень домена->Правой кнопкой Свойства->Безопасность->Дополнительно->Добавить->SaveMACtoAD->Свойства->"Компьютер объектов"->Галки Чтение и Запись "location"
Но можно дать права и через dsa.msc, воспользовавшись статьёй http://support.microsoft.com/kb/308404,
по которой нужно добавить в конец файла C:\WINDOWS\inf\delegwiz.inf [more=такой вот кусок.]
;Вместо XX нужно вставить номер шаблона по порядку.
[templateXX]
AppliesToClasses=domainDNS,organizationalUnit,container
Description = "location"
ObjectTypes = computer
[templateXX.computer]
location=GA
[/more]
Если всё сделать правильно, то при запуске скрипта от пользователя SaveMACtoAD, в свойствах компьютера AD должны появится MAC-адреса через ";".
Теоритически можно дать прав учётке SYSTEM на правку свойства и применять скрипт через GPO на компьютер, не заморачиваясь с CPAU, но я не тестил.

Вторую задачу я решил, написав прогу на .Net. Она имеет все болячки Framework'а (объём, проблемы с запуском с шары и т.п.),
поэтому если кто захочет её переписать более внятно - я могу дать исходники.
Саму прогу выложил здесь: http://slil.ru/28260487
Её оч. удобно использовать, прикрутив к FPinger'у (правой кнопкой по компу - включить).
Автор: StirolXXX
Дата сообщения: 09.06.2009 18:48

Цитата:
т.е машина находиться за adsl wifi роутером.

говорят что виндовс 7 будет это уметь
Автор: pobat
Дата сообщения: 02.11.2009 21:42
у меня вопрос
на материнке есть встроенная сетевуха - по которой прерасно получается включать комп
+ на есть еще одна сетевуха дополнительная (не встроенная) - на которую никак не могу добиться включения компьютера.
вопрос? почему?)
Автор: urodliv
Дата сообщения: 02.11.2009 23:26

Цитата:
у меня вопрос
на материнке есть встроенная сетевуха - по которой прерасно получается включать комп
+ на есть еще одна сетевуха дополнительная (не встроенная) - на которую никак не могу добиться включения компьютера.
вопрос? почему?)

Видимо потому, что она не поддерживает данную функцию. Как это понять? Очень просто: у сетевух с поддержкой вола есть спец разъём для подключения к материнской плате через небольшой шнурок о трёх проводах.
Автор: pobat
Дата сообщения: 03.11.2009 00:35
спасибо
действительно провода нет
но прочел в статье от 04 Ноября 2004

Цитата:
"В современных материнских платах с поддержкой PCI 2.2, WOL-провод не требуется, так как коммутация осуществляется напрямую."

у меня метеринка GA-81PE1000-G и судя по описанию на сайте производителя
Слоты расширения 5 PCI слотов (совместимы с PCI 2.3)
на самой метеринке разъема для провода от сетевухи -- нет.
в настройках второй сетевухи стоит опция включения WOL.
Автор: urodliv
Дата сообщения: 03.11.2009 19:17
ну могу только одно предложить и ещё одно предположить.
Предложение: попробовать вставлять сетевуху во все слоты.
Предположение: банальная "несовместимость железа".
Автор: AlexMoralez
Дата сообщения: 03.11.2009 22:13

Цитата:
в настройках второй сетевухи стоит опция включения WOL.


Ага, вот почему у нас компы включались некоторые, когда их пинговали Оказывается, просыпаться может не только от магического пакета, но и от пинга и пакета АРП.
Автор: pobat
Дата сообщения: 04.11.2009 01:24

Цитата:
ну могу только одно предложить и ещё одно предположить.
Предложение: попробовать вставлять сетевуху во все слоты.
Предположение: банальная "несовместимость железа".

менял слот - тот же результат - т.е. его отсутствие
еще интересно что когда ставил в настройках возможность пробуждения - то windows не слабо так повис? странно такая вот вещь
Автор: Nikkolo
Дата сообщения: 04.11.2009 09:30
IMHO надо в настройках BIOS поковыряться.
Автор: pobat
Дата сообщения: 04.11.2009 10:15

Цитата:
IMHO надо в настройках BIOS поковыряться.
я там вроде все включил - иначе бы интегрированная сетевая бы не будила бы. но посмотрю ещё)))

вопрос: может ли быть такое, что просто мать заточена включаться только от интегрированной сетевухи? бредовое предположение конечно, но такое возможно?
Автор: myual
Дата сообщения: 29.11.2009 15:30
Скажите, если комп, который надо включить, находится за провайдерским NAT то его через интернет никак нельзя включить?
Автор: urodliv
Дата сообщения: 29.11.2009 16:11

Цитата:
Скажите, если комп, который надо включить, находится за провайдерским NAT то его через интернет никак нельзя включить?

http://www.wakeonlan.ru/
Автор: myual
Дата сообщения: 29.11.2009 16:53
urodliv

Цитата:
http://www.wakeonlan.ru/


Если можно, тогда какой там IP указывать: внешний или внутренний широковещательный для подсети?
Автор: urodliv
Дата сообщения: 29.11.2009 17:11
А у вас на машине какой айпишник: серый или белый?
Автор: myual
Дата сообщения: 29.11.2009 18:03
urodliv

Цитата:
А у вас на машине какой айпишник: серый или белый?

Серый.
Автор: urodliv
Дата сообщения: 29.11.2009 18:24
Тогда увы...
Автор: Nikkolo
Дата сообщения: 30.11.2009 10:42
Если есть хоть один комп работающий постоянно то можно и на сером.
Автор: myual
Дата сообщения: 01.12.2009 15:30
Nikkolo

Цитата:
Если есть хоть один комп работающий постоянно то можно и на сером.

А можно поподробней? Этот комп должен быть в той же локальной сети?
Хотелось бы без всяких перенаправлений портов у ISP, а то провайдер вряд ли пойдет на встречу.
Автор: urodliv
Дата сообщения: 01.12.2009 18:08

Цитата:
А можно поподробней? Этот комп должен быть в той же локальной сети?
Хотелось бы без всяких перенаправлений портов у ISP, а то провайдер вряд ли пойдет на встречу.

Если у вас "серый" адрес (это вы сами написали) ISP ничего, никуда перенаправлять не будет, и это логично. Если есть включённый комп в той же локалке, что и нужный нам комп, то поставьте на него хамач, тимвьювер и т.д. И уже с него запускайте волшебный пакет.
Автор: myual
Дата сообщения: 15.05.2010 14:22
Никто не знает, как можно отправить magic packet c определенного порта на локальной машине?
Во всех встречавшихся утилитах параметра souce port к сожалению нету.
Автор: urodliv
Дата сообщения: 15.05.2010 21:28
myual
"В чём сила брат?" (с)
Автор: myual
Дата сообщения: 15.05.2010 22:44
urodliv

Цитата:
"В чём сила брат?" (с)

В данном случае -- в том, что в магич. udp пакете source port должен равняться заданному, иначе он не пройдет куда нужно.
P.S. Или я не правильно понял сей вопрос?)
Автор: urodliv
Дата сообщения: 15.05.2010 23:00

Цитата:
В данном случае -- в том, что в магич. udp пакете source port должен равняться заданному, иначе он не пройдет куда нужно.

То есть вы его собираетесь толкать через сетевой экран, который отслеживает исходящие порты? Тогда решение в лоб: виртуалка + линь +snat
Автор: myual
Дата сообщения: 15.05.2010 23:50
urodliv

Цитата:
То есть вы его собираетесь толкать через сетевой экран, который отслеживает исходящие порты? Тогда решение в лоб: виртуалка + линь +snat

А более эллегантного решения нет?
В идеале -- одна утилита с соотв. опциями настройки.
Пока нашел такой вариант: сниффить пакеты, модифицировать содержимое пакетов и отправлять модифицированные пакеты.
Автор: urodliv
Дата сообщения: 16.05.2010 00:24

Цитата:
А более эллегантного решения нет?

Если сходить по вышеозначенной cсылкt, то можно взять оттуда примеры кодов для формирования "магического пакета" и добавить нужный функционал. Но в программировании я не дока, так что сами... или в ветку программеров.

Страницы: 12345

Предыдущая тема: Репликация между WinNT и Win2K


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.