2015-02-05 70 views
-1

我正在編寫一個網絡實用程序(用於Windows)在Java中.. 我想更改/欺騙我的網絡適配器的MAC地址..我該怎麼做? 如果有做這項工作的任何方法將是巨大的..如何使用java代碼來欺騙mac地址?

我的做法是通過執行三個命令..

//禁用網絡適配器 netsh接口設置接口名稱=「本地會這樣區域連接「admin = DISABLED

//這就是我沒有得到的..讓我說我想我的新欺騙地址是00112233445566,怎麼做......?沒有找到任何cmd命令更改mac地址..需要你的幫助在這裏找到是否有任何cmd語句或任何java方法做這項工作

//啓用網絡適配器 netsh接口設置接口名稱=「本地區域連接」管理=啓用

感謝,將等待您的幫助:)

+0

最簡單的方法是購買一個廉價的路由器,有能力做MAC欺騙並使用它。不要將計算機插入局域網,而要將其插入路由器,然後將路由器插入局域網。然後啓動計算機上的瀏覽器並訪問路由器的管理員設置並進行設置。 – 2015-02-05 22:17:58

回答

0

寫自己的SocketImpl的子類,將需要使用JNI代碼原始套接字。請注意,原始套接字在大多數操作系統上都需要特權操作。

0

但很多搞亂後,我發現了一個很簡單的方法來完成這項工作。我看,窗口在註冊表

HKEY_LOCAL_MACHINE \ SYSTEM這個位置\ CURRENTCONTROLSET \控制\ {級存儲MAC欺騙4D36E972-E325-11CE-BFC1-08002BE10318} \ 0007

通過

然後我搞砸了CMD名爲 「NetworkAddress的」= 「00E04D18XXXX」,看看是否有什麼辦法可以從CMD本身編輯註冊表。 。我得到了一個..下面的命令完成這項工作

「REG ADD HKEY_LOCAL_MACHINE \ SYSTEM \ CURRENTCONTROLSET \控制\類{4D36E972-E325-11CE-BFC1-08002BE10318} \ 0007 /噸REG_SZ/V的NetworkAddress/d XXXXXXXXXXXX/F」

mac = textField.getText(); 

String commandChangeMac = "reg add HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Class\\{4D36E972-E325-11CE-BFC1-08002BE10318}\\0007 /t REG_SZ /v NetworkAddress /d " + mac + " /f"; 

obj.executeCommand(commandChangeMac);` 

很容易心不是它:D

0

String mac =「2d345678U987」;

Process p = Runtime 
       .getRuntime() .exec("cmd /c start cmd.exe /K \" \"reg add HKEY_LOCAL_MACHINE\\SYSTEM\\CurrentControlSet\\Control\\Class\\{4D36E972-E325-11CE-BFC1-08002BE10318}\\0007 /t REG_SZ /v NetworkAddress /d " + mac + " /f "); 
+0

在命令的mac中添加12位數字並嘗試 – 2016-02-17 04:26:33