怎么用代码实现,获取一台主机的网关?

redline2005 2005-11-09 05:03:09
如题!谢谢关注!麻烦帮忙!
怎么用java代码实现,获取一台主机的网关的ip地址?
...全文
163 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
redline2005 2005-11-13
  • 打赏
  • 举报
回复
谢谢 lcwlyl(网络幽灵) 我仔细看了看你的帖子,非常好!以下是我调试的代码:大家可以参考参考。

import java.net.*;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import java.io.*;
public class GetMyIp
{

/**
* @param args
* 获得外网地地址一定要一外网服务器,你可以用自已的外网服务器,如果没有,可用其它的
如:http://www.whatismyip.com/,以下是JAVA程序(改成JSP应该很简单吧)

*/
public static void main(String[] args) throws Exception
{
// TODO Auto-generated method stub
DataInputStream is;
URL url=new URL("http://www.whatismyip.com/");
URLConnection connection=url.openConnection();

is=new DataInputStream(connection.getInputStream());
String inputline;
//Pattern p=Pattern.compile("(Your IP Is + \\d+\\.\\d+\\.\\d+\\.\\d+)");
Pattern p=Pattern.compile("(Your IP[ \\-Is]+)(\\d+\\.\\d+\\.\\d+\\.\\d+)");
Matcher m;
String YourIP=new String();

while((inputline=is.readLine())!=null)
{
System.out.println(inputline);
m=p.matcher(inputline);
if (m.find())
{
YourIP=m.group(2);
break; //这里可以退出循环了
}

}


System.out.println("Your IP is:"+YourIP);
}

}
网络精灵 2005-11-09
  • 打赏
  • 举报
回复
一般获取的就是网关的IP,你想实在像什么样的是内部IP吗?很简单,有方法,外部IP,看看这个贴子。http://community.csdn.net/Expert/topic/4340/4340038.xml?temp=.9130976

62,624

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧