java本机ip地址
⑴ java如何实现对本机的ip地址 网关地址 子网
提供一种可行的方法。供你参考。思路是利用操作系统的shell,执行相版应的命令。
以下以WINDOW操作系统权为例。LINUX的思路相同。
1,在E;下建立如下两个bat文件,内容分别如下:
e:setip1.bat文件内容:
rem设置IP、子网掩码、默认网关
c:
cd
netshexece:setip.bat
另一个文件e:setip.bat文件内容:
interface
ip
setaddress"本地连接"static192.168.1.111255.255.255.0192.168.1.1
exit
2,执行脚本命令的JAVA程序
⑵ java中怎样实现修改本机IP
一般都是用代理也就是跳板机来实现
⑶ java中如何过去本机ip地址并输出
InetAddress addr = InetAddress.getLocalHost();
ip=addr.getHostAddress().toString;//获得本机IP
address=addr.getHostName()toString;//获得本机名称
⑷ JAVA与本机IP
支持Windows,Linux, 支持多网卡(根据网卡取本机配置的IP) /** * 根据网卡取本机配置的IP * 如果是双网卡的,则取出外网IP * @return */ public static String getIp(){ String localip=null;//本地IP,如果没有配置外网IP则返回它 String netip=null;//外网IP try { Enumeration<NetworkInterface> netInterfaces =
NetworkInterface.getNetworkInterfaces(); InetAddress ip = null; boolean finded=false;//是否找到外网IP while(netInterfaces.hasMoreElements() && !finded){ NetworkInterface ni=netInterfaces.nextElement(); Enumeration<InetAddress> address=ni.getInetAddresses(); while(address.hasMoreElements()){ ip=address.nextElement(); System.out.println(ni.getName() +";"+ip.getHostAddress() +";ip.isSiteLocalAddress()="+ip.isSiteLocalAddress()+";ip.isLoopbackAddress()="+ip.isLoopbackAddress()); if( !ip.isSiteLocalAddress() && !ip.isLoopbackAddress()
&& ip.getHostAddress().indexOf(":")==-1){//外网IP netip=ip.getHostAddress(); finded=true; break; }else if(ip.isSiteLocalAddress() && !ip.isLoopbackAddress()
&& ip.getHostAddress().indexOf(":")==-1){//内网IP localip=ip.getHostAddress(); } } } } catch (SocketException e) { e.printStackTrace(); } if(netip!=null && !"".equals(netip)){ return netip; }else{ return localip; } }
⑸ Java如何获取本地计算机的IP地址和主机名
可以使用 InetAddress.getLocalHost(),代码如下:
importjava.net.*;
publicclassApp{
publicstaticvoidmain(String[]args)throwsUnknownHostException{
InetAddresslocal=InetAddress.getLocalHost();
System.out.println("计算机名:"+local.getHostName());
System.out.println("IP:"+local.getHostAddress());
}
}
⑹ 如何用java获取本地ip地址
import java.net.Inet4Address;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.util.ArrayList;
import java.util.Enumeration;
import java.util.List;
/**
* @author Becolette
* @description TODO
* @date 2015-11-5 下午01:58:46
*/
public class IpAddress {
public static String find() {
List<String> ips = new ArrayList<String>();
// 返回所有网络接口的一个枚举实例
Enumeration<?> allNetInterfaces = null;
try {
allNetInterfaces = NetworkInterface.getNetworkInterfaces();
} catch (SocketException e) {
e.printStackTrace();
}
InetAddress ip = null;
while (allNetInterfaces.hasMoreElements()) {
NetworkInterface netInterface = (NetworkInterface) allNetInterfaces.nextElement();
Enumeration<InetAddress> addresses = netInterface.getInetAddresses();
while (addresses.hasMoreElements()) {
// 获得当前网络接口
ip = (InetAddress) addresses.nextElement();
if (ip != null && ip instanceof Inet4Address && ip.getHostAddress().indexOf(".") != -1) {
ips.add(ip.getHostAddress());
}
}
}
if (ips.size() == 1) {
return ips.get(0);
} else {
for (String ipa : ips) {
if (!"127.0.0.1".equals(ipa)) {
return ipa;
}
}
}
return MacAddress.find();
}
}