真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

子網(wǎng)掩碼檢查java代碼 子網(wǎng)掩碼進制

如何獲取局域網(wǎng)內所有IP地址 java代碼

1.得到局域網(wǎng)網(wǎng)段,可由自己機器的IP來確定 (也可以手動獲取主機IP-CMD-ipconfig /all)

成都創(chuàng)新互聯(lián)是專業(yè)的桐梓網(wǎng)站建設公司,桐梓接單;提供成都網(wǎng)站制作、做網(wǎng)站,網(wǎng)頁設計,網(wǎng)站設計,建網(wǎng)站,PHP網(wǎng)站建設等專業(yè)做網(wǎng)站服務;采用PHP框架,可快速的進行桐梓網(wǎng)站開發(fā)網(wǎng)頁制作和功能擴展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團隊,希望更多企業(yè)前來合作!

2.根據(jù)IP類型,一次遍歷局域網(wǎng)內IP地址

JAVA類,編譯之后直接運行便可以得到局域網(wǎng)內所有IP,具體怎樣使用你自己編寫相應代碼調用便可

代碼如下::

package bean;

import java.io.*;

import java.util.*;

public class Ip{

static public HashMap ping; //ping 后的結果集

public HashMap getPing(){ //用來得到ping后的結果集

return ping;

}

//當前線程的數(shù)量, 防止過多線程摧毀電腦

static int threadCount = 0;

public Ip() {

ping = new HashMap();

}

public void Ping(String ip) throws Exception{

//最多30個線程

while(threadCount30)

Thread.sleep(50);

threadCount +=1;

PingIp p = new PingIp(ip);

p.start();

}

public void PingAll() throws Exception{

//首先得到本機的IP,得到網(wǎng)段

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++){ //對所有局域網(wǎng)Ip

String iip=ss+i;

Ping(iip);

}

//等著所有Ping結束

while(threadCount0)

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){}

}

}

}

根據(jù)ip地址和子網(wǎng)掩碼計算網(wǎng)段地址和廣播地址,要是java代碼哦

根據(jù)IPV4的規(guī)則

IP是32位的整數(shù),掩碼是網(wǎng)絡的補碼。A類地方是高8位是網(wǎng)絡地址、B類是高16位、類推。

廣播則是對應IP地址的主機地址全是255。

怎樣用Java驗證ip和子網(wǎng)掩碼是否正確,詳細問題如下

把ip和子網(wǎng)掩碼轉換成二進制 做“按位與”運算 得出的就是網(wǎng)絡id號a 另一個ip也是一樣計算方法 得出網(wǎng)絡id號b

比較a=b 就說明在一個子網(wǎng) 反之 不在

ip轉換成二進制的時候 注意按段轉

java如何確認IP是否屬于某地址段

java確認IP屬于某地址段主要是判斷IP前兩組是否相同,使用如下方法:

(1)如果同一個網(wǎng)段的概念是:

192.168.0.1和192.168.0.254,那么用.拆分判斷第一二三部分完全一致應該就可以了,當然填寫的時候1到255的限制應該是起碼的要求了;

(2)如果192.168.0.1 和 192.168.0.254 ,再配合上子網(wǎng)掩碼定義為同一網(wǎng)段的話,那就用兩個ip轉換為二進制之后分別和二進制子網(wǎng)掩碼做邏輯與,結果一致是不是就可以定義為同一網(wǎng)段;

網(wǎng)絡中對網(wǎng)段的定義我也不太了解,不知道你是要遵循網(wǎng)絡中的定義還是按你自己的需求來;


當前文章:子網(wǎng)掩碼檢查java代碼 子網(wǎng)掩碼進制
分享網(wǎng)址:http://weahome.cn/article/hpjhco.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部