扫描端口号java代码,扫描端口号java代码-成都快上网建站

扫描端口号java代码,扫描端口号java代码

java扫描局域网的端口

直接上代码:

创新互联总部坐落于成都市区,致力网站建设服务有做网站、网站建设、网络营销策划、网页设计、网站维护、公众号搭建、微信小程序开发、软件开发等为企业提供一整套的信息化建设解决方案。创造真正意义上的网站建设,为互联网品牌在互动行销领域创造价值而不懈努力!

import java.net.Socket;

import java.text.SimpleDateFormat;

import java.util.Date;

public class PortScanner extends Thread {

private int[] p;

Socket ss = null;

public PortScanner(int[] p) {

this.p = p;

}

public static void main(String[] args) {

for (int i = 0; i  65535; i = i + 100) {

new PortScanner(new int[] { i + 1, i + 100 }).start();

}

}

@Override

public void run() {

for (int i = p[0]; i  p[1]; i++) {

try {

ss = new Socket("8.8.8.8", i);

System.out.println("扫描到端口: " + i);

} catch (Exception e) {

// System.out.println("关闭端口: " + i);

}

}

}

}

利用java代码如何检测某端口号是否可用

很简单,给你写个例子:

//检测端口8080到8090哪些可用哪些不可用

for(int i = 8080; i8090; i++){

try {

ServerSocket sskt = new ServerSocket(i);

System.out.println("端口[" +i + "]可用。");

} catch (IOException e) {

System.out.println("端口 [" + i + "] 被占用.");

}

}

如何用java语言实现端口扫描器

使用 DatagramSocket(int port) 建立socket(套间字)服务。

将数据打包到DatagramPacket中去

通过socket服务发送 (send()方法)

关闭资源

public static void main(String[] args) {

DatagramSocket ds = null; //建立套间字udpsocket服务

try {

ds = new DatagramSocket(8999); //实例化套间字,指定自己的port

} catch (SocketException e) {

System.out.println("Cannot open port!");

System.exit(1);

}

byte[] buf= "Hello, I am sender!".getBytes(); //数据

InetAddress destination = null ;

try {

destination = InetAddress.getByName("192.168.1.5"); //需要发送的地址

} catch (UnknownHostException e) {

System.out.println("Cannot open findhost!");

System.exit(1);

}

DatagramPacket dp =

new DatagramPacket(buf, buf.length, destination , 10000);

//打包到DatagramPacket类型中(DatagramSocket的send()方法接受此类,注意10000是接受地址的端口,不同于自己的端口!)

try {

ds.send(dp); //发送数据

} catch (IOException e) {

}

ds.close();

}

}

接收步骤:

使用 DatagramSocket(int port) 建立socket(套间字)服务。(我们注意到此服务即可以接收,又可以发送),port指定监视接受端口。

定义一个数据包(DatagramPacket),储存接收到的数据,使用其中的方法提取传送的内容

通过DatagramSocket 的receive方法将接受到的数据存入上面定义的包中

使用DatagramPacket的方法,提取数据。

关闭资源。

import java.net.*;

public class Rec {

public static void main(String[] args) throws Exception {

DatagramSocket ds = new DatagramSocket(10000); //定义服务,监视端口上面的发送端口,注意不是send本身端口

byte[] buf = new byte[1024];//接受内容的大小,注意不要溢出

DatagramPacket dp = new DatagramPacket(buf,0,buf.length);//定义一个接收的包

ds.receive(dp);//将接受内容封装到包中

String data = new String(dp.getData(), 0, dp.getLength());//利用getData()方法取出内容

System.out.println(data);//打印内容

ds.close();//关闭资源

}

}

修改一个JAVA源程序,使它能扫描指定IP的主机的UDP端口

单线程的

import java.net.*;

public class UDP

{

public static void main(String args[])

{

for (int port=0;port=65535;port++) {

try {

DatagramSocket server=new DatagramSocket(port);

server.close();

}

catch(SocketException e) {

System.out.println("UDP端口"+port+"开放!");

}

}

}

}

希望能够帮助到你,望采纳!

有没有用java代码操作nmap进行过端口扫描的

nmap端口状态解析

open , 应用程序在该端口接收 TCP 连接或者 UDP 报文。

closed 关闭的端口对于nmap也是可访问的, 它接收nmap探测报文并作出响应。但没有应用程序在其上监听。

filtered 由于包过滤阻止探测报文到达端口,nmap无法确定该端口是否开放。过滤可能来自专业的防火墙设备,路由规则 或者主机上的软件防火墙。

unfiltered 未被过滤状态意味着端口可访问,但是nmap无法确定它是开放还是关闭。 只有用于映射防火墙规则集的 ACK 扫描才会把端口分类到这个状态。


当前标题:扫描端口号java代码,扫描端口号java代码
文章路径:http://kswjz.com/article/dsgdgsi.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流