ip4 기반의 ip 를 테스트 하였고 ip6 는 테스트 해보지 않았습니다.
소스는 아래와 같습니다.
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.util.Enumeration;
public class IpTest{
public static void main(String[] args){
IpTest ipTest = new IpTest();
System.out.println(ipTest.getLocalServerIp());
}
private String getLocalServerIp(){
String ip = "";
try{
Enumeration en = NetworkInterface.getNetworkInterfaces();
while(en.hasMoreElements()){
NetworkInterface ni = (NetworkInterface)en.nextElement();
Enumeration inetAddresses = ni.getInetAddresses();
while(inetAddresses.hasMoreElements()){
InetAddress ia = (InetAddress)inetAddresses.nextElement();
if(ia.getHostAddress() != null && ia.getHostAddress().indexOf(".") != -1){
byte[] address = ia.getAddress();
if(address[0] == 127) continue;
ip = ia.getHostAddress();
break;
}
}
if(ip.length()>0){
break;
}
}
}catch(Exception e){
e.printStackTrace();
}
return ip;
}
}
=========================이렇게 하면 결과는[root@centos-server ~]# java IpTest
10.211.55.5
[root@centos-server ~]# ifconfig
eth0 Link encap:Ethernet HWaddr 00:1C:42:26:F1:C6
inet addr:10.211.55.5 Bcast:10.211.55.255 Mask:255.255.255.0
inet6 addr: fdb2:2c26:f4e4:0:21c:42ff:fe26:f1c6/64 Scope:Global
inet6 addr: fe80::21c:42ff:fe26:f1c6/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:73368 errors:0 dropped:0 overruns:0 frame:0
TX packets:38389 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:108460695 (103.4 MiB) TX bytes:2238786 (2.1 MiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:8 errors:0 dropped:0 overruns:0 frame:0
TX packets:8 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:480 (480.0 b) TX bytes:480 (480.0 b)
'JAVA' 카테고리의 다른 글
[ JAVA ] java.util.zip.ZipException: invalid entry size (expected xxxxx but got 0 bytes) (0) | 2014.10.22 |
---|---|
[ JAVA ] JAVA system 지원 font (2) | 2013.06.25 |
[ JAVA ] 배열 (array) 을 List 형태로 변경 하기 (0) | 2013.06.01 |
[ JAVA ] Property 파일 변경 된 사항 실시간 적용 되도록 하는 법 (2) | 2013.05.19 |
[ JAVA ] 동적으로 class , method 실행 시킬 수 있는 reflection 사용법 (0) | 2013.05.19 |
댓글