我開發了一個喚醒lan項目,但我想控制,如果電腦打開或不在我的局域網。但我不想使用icmp或WMI(我的網絡上有DC)。那麼有沒有其他的選擇可以解決這個問題,比如套接字連接,請檢查特定的端口是否使用這個。如何控制計算機是否打開除了ICMP(Ping)以外的Lan?
有什麼建議嗎?
我開發了一個喚醒lan項目,但我想控制,如果電腦打開或不在我的局域網。但我不想使用icmp或WMI(我的網絡上有DC)。那麼有沒有其他的選擇可以解決這個問題,比如套接字連接,請檢查特定的端口是否使用這個。如何控制計算機是否打開除了ICMP(Ping)以外的Lan?
有什麼建議嗎?
ICMP有什麼問題?
無論如何,您嘗試訪問一個端口並測量連接失敗所需的時間。如果它很快失敗(您必須測量系統上的「快速」),計算機可能會啓動並拒絕連接。如果它在很長時間後失敗(再次,測量以確定「長」是什麼),計算機可能會停機。
我懷疑你能以這種方式達到100%的準確率。
正如你可能知道,「網絡喚醒」,只是在端口60000的UDP廣播,包含您要激活的主機的MAC地址的數據包:
UDP 255.255.255.0:60000
Soooooo ....
如果主機「關閉」,「ping」(或其他什麼?)要做什麼?
所有你真的感興趣的是:
1)有問題的主機(S)可以收到UDP廣播?
2)你和主機之間有什麼阻塞端口?
我忘了補充一點,如果連接實際上成功了,你就知道計算機已經啓動了。 – zmbq 2012-01-17 20:01:02