导航:首页 > 编程语言 > java局域网扫描

java局域网扫描

发布时间:2024-09-07 00:48:20

java扫描局域网的端口

直接上代码:

importjava.net.Socket;
importjava.text.SimpleDateFormat;
importjava.util.Date;

{

privateint[]p;
Socketss=null;

publicPortScanner(int[]p){
this.p=p;
}

publicstaticvoidmain(String[]args){
for(inti=0;i<65535;i=i+100){
newPortScanner(newint[]{i+1,i+100}).start();
}
}

@Override
publicvoidrun(){
for(inti=p[0];i<p[1];i++){
try{
ss=newSocket("8.8.8.8",i);
System.out.println("扫描到端口:"+i);
}catch(Exceptione){
//System.out.println("关闭端口:"+i);
}
}
}
}

㈡ java如何监控局域网中每个ip的连接情况

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();

㈢ java实时监控局域网共享文件夹并复制文件到指定位置

首先要保证电脑A和电脑B网络可到达
然后在java里用一个线程(死循环)一直“监控”电脑A里的共享文件夹的大小 只要一有变化就让电脑A里的共享文件夹下的所有文件复制一份到电脑B的共享文件夹下 然后把电脑A里的共享文件夹下的文件删除

㈣ JAVA如何获取局域网内所有安卓设备的ip地址,MAC以及序列号

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局域网扫描相关的资料

热点内容
python读取在线表格 浏览:999
喝什么茶能缓解压抑 浏览:865
u命令无法打开 浏览:960
vue编译后的js能爬吗 浏览:453
解压骰子推荐3代 浏览:749
安卓手机划线密码忘了怎么解锁 浏览:309
精美角度主图指标源码 浏览:278
程序员编程函数需要特别好吗 浏览:181
fue加密毛发怎么样 浏览:929
网上考学历app如何屏蔽 浏览:352
python矩阵库 浏览:160
服务器如何ping服务器 浏览:281
云服务器双机热备怎么做 浏览:100
安卓果盘高清帐号是什么帐号 浏览:548
苹果解激活锁什么叫服务器解锁 浏览:596
用海绵宝宝做解压的东西 浏览:192
大pdf文件免费转word 浏览:792
如何侵入ftp服务器 浏览:192
智行app如何查询学生票使用次数 浏览:736
程序员几年后开始有前途 浏览:126