「java获取网关」java获取指定网卡的ip

博主:adminadmin 2023-03-18 03:48:09 317

本篇文章给大家谈谈java获取网关,以及java获取指定网卡的ip对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

Java获取DNS,默认网关

InetAddress localHost = Inet4Address.getLocalHost();

NetworkInterface networkInterface = NetworkInterface.getByInetAddress(localHost);

networkInterface.getInterfaceAddresses().get(0).getNetworkPrefixLength();

InetAddress localHost = Inet4Address.getLocalHost();

NetworkInterface networkInterface = NetworkInterface.getByInetAddress(localHost);

for (InterfaceAddress address : networkInterface.getInterfaceAddresses()) {

System.out.println(address.getNetworkPrefixLength());

}

java程序对于双网卡怎么获取两块网卡IP

用双网卡同时访问内外网暂时没有很完美的解决办法,因为存在路由冲突,毕竟有两个网关地址,现在可以试试下面的办法:

先来解决双网卡冲突的问题。可以通过改变路由地址表搞定。以你的单位用机为例,机器有两块网卡,接到两台路由器上:

内部网地址设置为192.168.1.110,子网掩码:255.255.255.0,网关:192.168.1.1

办公网地址:10.94.12.123,子网掩码:255.255.255.0,网关:10.94.12.254

如果按正常的设置方法设置每块网卡的IP地址和网关,再cmd下使用route print查看时会看到以0.0.0.0 0.0.0.0 开头的两个东西,即指向0.0.0.0的有两个网关,这样就会出现路由冲突,两个网络的访问存在困难。要实现同时访问两个网络就要用到route命令

第一步:route delete 0.0.0.0(删除所有0.0.0.0的路由)

第二步:route add 0.0.0.0 mask 0.0.0.0 192.168.1.1(添加0.0.0.0网络路由)

第三步:route add 10.0.0.0 mask 255.0.0.0 10.94.12.254(添加10.0.0.0网络路由)

这时就可以同时访问两个网络了,但碰到一个问题,使用上述命令添加的路由在系统重新启动后会自动丢失,保存现有的路由表

作一个BAT文件吧,把上面3步的内容全加进去,并设置系统在开始的启动菜单里运行他。这样只要一开机,路由表就会按我们所需要的进行变更,双网的访问再也不会存在问题了。

java tcp如何获取网关代码

您好,提问者:

ServerSocket中有getInetAddress()方法,返回 InetAddress类。

如何获取到JAVA对象所在的内存地址

1、首先打开java构造方法代码。

2、接下来就可以获得网卡物理地址方法代码。

3、然后得到获得机器IP地址方法代码。

4、然后得到获得机器子网掩码方法代码。

5、然后得到获得机器默认网关方法代码。

6、然后得到获得DNS方法代码。

7、最后得到主函数测试方法代码。

扩展资料

当使用80386时,必须区分以下三种不同的地址:

逻辑地址:机器语言指令仍用这种地址指定一个操作数的地址或一条指令的地址。这种寻址方式在Intel的分段结构中表现得尤为具体,它使得MS-DOS或Windows程序员把程序分为若干段。每个逻辑地址都由一个段和偏移量组成。

线性地址:针对32位CPU,线性地址是一个32位的无符号整数,可以表达高达2³² (4GB)的地址。通常用16进制表示线性地址,其取值范围为0x00000000~0xffffffff。对64位CPU,线性地址是一个64位的无符号整数,可以表达高达2⁶⁴  。

物理地址:也就是内存单元的实际地址,用于芯片级内存单元寻址。物理地址也由32位无符号整数表示。

电脑的内存(尤其是指主存)是由许多“内存地址”所组成的,每个内存地址都有一个“物理地址”,能供CPU(或其他设备)访问。一般,只有如BIOS、操作系统及部分特定之公用软件(如内存测试软件)等系统软件;

能使用机器码的运算对象或寄存器对物理地址定址,指示CPU要求内存控制器之类的硬件设备,使用内存总线或系统总线,亦或分别之控制总线、地址总线及数据总线,运行该程序之命令。

内存控制器的总线是由数条并行的线路所组成的,每条线路表示一个比特。总线的宽度因此依电脑不同,决定了可定址之存储单位数量,以及每一单位内的比特数量。

计算机程序使用内存地址来运行机器码、存储及截取数据。大多数的应用程序无法得知实际的物理地址,而是使用电脑的内存管理单元及操作系统的内存映射,为“逻辑地址”或虚拟地址定址。

参考资料:百度百科-内存地址

java 通过doc命令获取IP 网关等 无法获取出来???下面是代码

回答完毕,采纳即可。

import java.io.BufferedReader;

import java.io.BufferedWriter;

import java.io.InputStreamReader;

import java.io.OutputStreamWriter;

import java.io.SequenceInputStream;

public class YuGiOh

{

public static String getIPConfigAll (String key)

{

try

{

String os = System.getProperty ("os.name");

if (os.matches ("(?i).*window.*"))

{

Process process = Runtime.getRuntime ().exec ("cmd");

SequenceInputStream sis = new SequenceInputStream (process.getInputStream (), process.getErrorStream ());

InputStreamReader isr = new InputStreamReader (sis, "GBK");

BufferedReader br = new BufferedReader (isr);

// next command

OutputStreamWriter osw = new OutputStreamWriter (process.getOutputStream ());

BufferedWriter bw = new BufferedWriter (osw);

bw.write ("ipconfig /all");

bw.newLine ();

bw.flush ();

bw.close ();

osw.close ();

// read

String line = null;

while (null != ( line = br.readLine () ))

{

if (line.matches ("(?i)\\s*" + key + ".*"))

{

return line.replaceAll ("[^\\:]+\\:([^\\:]*)", "$1").trim ();

}

}

process.destroy ();

br.close ();

isr.close ();

}

}

catch (Exception e)

{

e.printStackTrace ();

}

return null;

}

public static void main ( String[] args )

{

System.out.println (getIPConfigAll ("ip address"));

System.out.println (getIPConfigAll ("Autoconfiguration IP Address"));

System.out.println (getIPConfigAll ("Host Name"));

}

}

java如何实现对本机的ip地址 网关地址 子网

提供一种可行的方法。供你参考。思路是利用操作系统的shell,执行相应的命令。

以下以WINDOW操作系统为例。LINUX的思路相同。

1,在E;\下建立如下两个bat文件,内容分别如下:

e:\setip1.bat文件内容:

rem  设置IP、子网掩码、默认网关

c:

cd \

netsh exec  e:\setip.bat

另一个文件e:\setip.bat文件内容:

interface

ip

set address "本地连接" static 192.168.1.111  255.255.255.0 192.168.1.1

exit

2,执行脚本命令的JAVA程序

java获取网关的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于java获取指定网卡的ip、java获取网关的信息别忘了在本站进行查找喔。