2014-12-13 363 views
-1

我正在開發一個項目,基本上我需要該程序來查找所有連接到網絡的IP地址列表,例如在Windows中訪問您的網絡連接。我已經瀏覽了所有的互聯網,我找不到我在找什麼,我希望有人可以!如何獲取Java中所有網絡設備的IP地址

該程序不能只關閉數字(如ping所有可能的IP地址),它需要比這更快。能夠連接到網絡並獲得它可以看到的所有IP的「列表」將是完美的。使用docs.oracle.com網頁做了它應該做的,但是有太多額外的結果(包括Eth10等)。此外,它列出的唯一的IP地址不是我自己的,它不匹配任何活動的計算機,所以我不知道這是怎麼回事...(192.168.0.9已列出,唯一的其他活動連接是在192.168.0.10,也許我錯過了什麼?)。

有什麼辦法可以做到這一點?對不起,如果我不清楚,如果有特定的事情,我可以更清楚,希望這有助於!

謝謝!

編輯:我希望這有助於;我想在java中這樣做,因爲對於我設計的程序來說,它需要一個可連接到活動機器的活動IP地址列表。這意味着如果我在學校的筆記本電腦上運行它,我需要所有可以連接到網絡上的IP地址。這是一個網絡事物,但它確實需要用java來完成。目的是爲了一個文件管理器,否則它很難解釋。這有幫助嗎?

+0

你的問題不是很清楚。這不是一個編程問題..這是一個網絡問題。你是指所有與特定機器的連接?你的意思是所有內部連接的設備在局域網上有發佈的IP嗎?你的意思是你的內部網絡和互聯網之間的所有開放連接? – 2014-12-13 04:59:10

+0

我想你可以在cmd中做到這一點爲什麼你需要在Java中做到這一點? – 2014-12-13 05:00:37

+0

如果你想知道如何在cmd中做到這一點,我可以幫助:) – 2014-12-13 05:00:56

回答

0

做你所要求的唯一方法就是通過暴力。它可以通過創建多個線程來快速完成,這些線程可以向網絡上的隨機IP發出TCP SYN請求(這是NMap所做的)。如果你有權訪問DHCP服務器,那麼你很可能會從那裏獲得一個列表。我會警告你非常輕微地行事。在網絡上運行NMAP或進行端口掃描被認爲是許多網絡管理員的攻擊......你可能會陷入困境(他們會注意到)。

+0

所以,我可以看到你在說什麼被注意到。基本上,就像鐵人那樣,他能夠立即將文件傳輸到不同的界面。這就是我想要做的,最需要骨骼的。我爲系統安全和所有好東西負責。有沒有辦法以每30秒鐘左右的速度相對快速地獲取此列表,而不會被管理員「標記」? – PulsePanda 2014-12-13 05:43:47

+0

這類活動本身就符合黑客/病毒攻擊的特徵。大多數企業網絡/學校網絡/等都將利用入侵檢測設備。 – 2014-12-13 05:51:59

相關問題