㈠ java檢測IP地址是哪裡的
兩種方式。
1.調用別人的API判斷。有些網站會提供IP地址判斷的API
2.每個IP地址段都是固定位置的。你可以把這些IP位置在網路上進行搜集做成一個數據集。每次把IP與數據集里的數據進行比對來判斷
㈡ 區域網在線掃描 IP,MAC Java源代碼
1.得到區域網網段,可由自己機器的IP來確定 (也可以手動獲取主機IP-CMD-ipconfig /all)
2.根據IP類型,一次遍歷區域網內IP地址
JAVA類,編譯之後直接運行便可以得到區域網內所有IP,具體怎樣使用你自己編寫相應代碼調用便可
代碼如下::
package bean;
import java.io.*;
import java.util.*;
public class Ip{
static public HashMap ping; //ping 後的結果集
public HashMap getPing(){ //用來得到ping後的結果集
return ping;
}
//當前線程的數量, 防止過多線程摧毀電腦
static int threadCount = 0;
public Ip() {
ping = new HashMap();
}
public void Ping(String ip) throws Exception{
//最多30個線程
while(threadCount>30)
Thread.sleep(50);
threadCount +=1;
PingIp p = new PingIp(ip);
p.start();
}
public void PingAll() throws Exception{
//首先得到本機的IP,得到網段
InetAddress host = InetAddress.getLocalHost();
String hostAddress = host.getHostAddress();
int k=0;
k=hostAddress.lastIndexOf(「.」);
String ss = hostAddress.substring(0,k+1);
for(int i=1;i <=255;i++){ //對所有區域網Ip
String iip=ss+i;
Ping(iip);
}
//等著所有Ping結束
while(threadCount>0)
Thread.sleep(50);
}
public static void main(String[] args) throws Exception{
Ip ip= new Ip();
ip.PingAll();
java.util.Set entries = ping.entrySet();
Iterator iter=entries.iterator();
String k;
while(iter.hasNext()){
Map.Entry entry=(Map.Entry)iter.next();
String key=(String)entry.getKey();
String value=(String)entry.getValue();
if(value.equals(「true」))
System.out.println(key+「-->」+value);
}
}
class PingIp extends Thread{
public String ip; // IP
public PingIp(String ip){
this.ip=ip;
}
public void run(){
try{
Process p= Runtime.getRuntime()。exec (「ping 」+ip+ 「 -w 300 -n 1」);
InputStreamReader ir = new InputStreamReader(p.getInputStream());
LineNumberReader input = new LineNumberReader (ir);
//讀取結果行
for (int i=1 ; i <7; i++)
input.readLine();
String line= input.readLine();
if (line.length() <17 || line.substring(8,17)。equals(「timed out」))
ping.put(ip,「false」);
else
ping.put(ip,「true」);
//線程結束
threadCount -= 1;
}catch (IOException e){}
}
}
}
㈢ java如何查詢本機ip地址和mac地址
Java中可以使用程序來獲取本地ip地址和mac地址沖宏首,使用InetAddress這個工具類,示例如下:
importjava.net.*;
publicclassNetInfo{
publicstaticvoidmain(String[]args){
newNetInfo().say();
}
publicvoidsay(){
散數try{
InetAddressi=InetAddress.getLocalHost();
System.out.println(i);//計算機名稱和IP
System.out.println(i.getHostName());//名稱
System.out.println(i.getHostAddress());//只獲得IP
}
catch(Exceptione){e.printStackTrace();}
}
}
也可以通過命令行窗口來查看絕春本地ip和mac地址,輸入命令:ipconfig。
㈣ java 怎樣根據IP地址掃描區域網主機上的共享資源
調用psexec.exe來掃描弱口令
String userdir= System.getProperty("user.dir");
String exe =userdir+"\\"+"psexec.exe";
String command = exe +" \\\\"+ ip+ " -u " +user+" -p "+ pass + " -c "+addr;
㈤ java IP反查域名,我隨意輸入IP,能得到此IP下所有的域名,例子,思路,資料,什麼都要
這個要看操作系統的,不同命令行實現。
Java調命令行的許多了,網路出去一堆回來,故不詳述版。
如下:
如果是權Linux,則要用到一些arp指令,比如whois之類的。
如果是Windows,則要用到tracert之類的追蹤指令。
㈥ java 怎麼根據IP地址獲取主機名
//看看這個代碼如何。
importjava.net.InetAddress;
importjava.net.UnknownHostException;
importjava.util.Properties;
importjava.util.Set;
{
publicstaticvoidmain(String[]args){
InetAddressnetAddress=getInetAddress();
System.out.println("hostip:"+getHostIp(netAddress));
System.out.println("hostname:"+getHostName(netAddress));
Propertiesproperties=System.getProperties();
Set<String>set=properties.stringPropertyNames();//獲取java虛擬機和系統的信息。
for(Stringname:set){
System.out.println(name+":"+properties.getProperty(name));
}
}
(){
try{
returnInetAddress.getLocalHost();
}catch(UnknownHostExceptione){
System.out.println("unknownhost!");
}
returnnull;
}
publicstaticStringgetHostIp(InetAddressnetAddress){
if(null==netAddress){
returnnull;
}
Stringip=netAddress.getHostAddress();//gettheipaddress
returnip;
}
publicstaticStringgetHostName(InetAddressnetAddress){
if(null==netAddress){
returnnull;
}
Stringname=netAddress.getHostName();//getthehostaddress
returnname;
}
}
這個代碼簡單明了,就是調用現成的InetAddress類
㈦ JAVA查找本機ip地址
注意第九行:InetAddress host_address = ....; 這說明host_address 本身是一個InetAddress類型的對象而不是String類型,所以要用toString()轉換成String類型才能被String類型的str接收。這是嚴格意義上按照規范來講。但如果你不用toString的話應該也可以,會默認把它轉成String類型的。