2012-11-07 3 views
0

Java를 사용하여 컴퓨터의 IP 주소로 변경할 수 있습니까? 이 리눅스 명령과 같습니다Java에서 로컬 컴퓨터 IP 변경

뭔가 :

ifconfig eth0 [new-ip-address] 
+1

요 아마 당신이 루트로 실행하려면 자바 프로그램이 필요합니다. 그런 다음 위의 명령을 실행하거나 운영 체제의 특정 트릭을 수행 할 수 있습니다 (예 : JNI가 적절한 syscalls를 작성하는 것과 같습니다) –

답변

1

java.net.NetworkInterface 네트워크 인터페이스에 대한 정보를 제공합니다. 그러나 귀하의 컴퓨터의 IP 주소는 OS별로 매우 다양합니다. 나는 그것을 바꾸는 쉬운 방법이 있다고 생각하지 않는다.

더 furthur는 IP 주소가 자동으로 DHCP에 의해 할당됩니다. (나는 당신이뿐만 DHCP를 사용 틸로 지적)

그러나 나는 성공적으로 DOS의 일부 java.lang.Runtime 클래스를 사용하여 명령을 실행할 수있는 코드를 구현했습니다.

그래서, 당신은 자바 DOS 명령의 netsh int ip set address "local area connection" static 192.168.0.101 255.255.255.0 192.168.0.254 1 유형을 사용하여 고정 IP 주소를 할당 시도 할 수 있습니다.

나는 플랫폼에 독립적 인 방법이라고 생각하지 않습니다하지만 당신은이 링크

1. Using Java to get os level system Information

2. Finding Operating System Information

3. How to get System Information using Java

사용하여 OS 정보를 찾을 수 있습니다 그런 다음 각각의 명령을 호출하는 시스템 정보에 따라 몇 가지 경우-else 문을 사용할 수 있습니다

+0

"IP 주소는 DHCP에 의해 자동으로 할당됩니다". 꼭 그런 것은 아닙니다. – Thilo

+0

정적 IP 주소를 의미합니다. 나는 리눅스에서도 똑같이 할 수있다. 플랫폼 독립적 인 방법이 있는지 알고 싶다. – ehsun7b

+0

@Thilo : 당신은 DHCP 암탉을 사용 .if 나중에는 당연히 그 필요는 없습니다 그것은 ehsun7b 그럼 난 플랫폼 독립적 인 방법이라고 생각하지 않습니다하지만 난 당신에게 더 furthur 정보를 제공하기 위해 게시물을 수정할 수 있습니다 @ 자동으로 –

관련 문제