2012-12-09 16 views

回答

6

一個名爲node-raw-socket的新模塊爲使用nodejs的真實套接字提供了完美的解決方案。

而且,爲了創建ping(ICMP)數據包,同樣的開發人員也有一個非常好的基於node-raw-sockets的工作(使用它)解決方案:node-net-ping

+0

node-raw-socket不安裝。失敗爲我建立。 – uptownhr

4

節點支持TCP,UDP和unix套接字。 Ping數據包是ICMP數據包,此時節點不能直接創建。您可以執行外部子程序ping或考慮編寫C擴展。大多數節點的低級操作系統API都是相應C API的簡潔JavaScript包裝器,因此您可以遵循現有的完善模式,並將其作爲圍繞相應操作系統級API的小JS包裝器層來實現。

http://nodejs.org/docs/latest/api/all.html#all_class_net_socket

有一個機會節點/ JavaScript的是,基於此要求,但你的項目一個糟糕的選擇。

+1

我認爲解決方案應該是創建一個插件[addons](http://nodejs.org/docs/latest/api/all.html#all_addon_patterns) – sauletasmiestas

+0

@Peter,沒有理由爲什麼Node支持TCP UDP,但不支持IP。對IP的支持遲早會來。 – Pacerier

0

net-ping模塊可能適合您的需求。要安裝它,您可以使用以下命令:

npm install net-ping 

包含示例的文檔包含在here中。