사용자 도구

사이트 도구


java:network

차이

문서의 선택한 두 판 사이의 차이를 보여줍니다.

차이 보기로 링크

양쪽 이전 판 이전 판
다음 판
이전 판
java:network [2018/03/30 08:26]
kwon37xi [DNS Cache]
java:network [2019/03/21 16:08] (현재)
kwon37xi
줄 2: 줄 2:
  
 ===== Java Network Property ===== ===== Java Network Property =====
-  * [[http://docs.oracle.com/javase/6/docs/technotes/guides/net/properties.html|Java network properties]]+  * [[http://docs.oracle.com/javase/6/docs/technotes/guides/net/properties.html|Java network properties]] 
 +  * [[https://docs.oracle.com/javase/8/docs/api/java/net/doc-files/net-properties.html|Networking Properties]] 8
  
 ===== DNS Cache ===== ===== DNS Cache =====
줄 9: 줄 10:
   * ''networkaddress.cache.negative.ttl'' : Lookup 에 실패했을 경우 실패 사항에 대한 Cache 시간.   * ''networkaddress.cache.negative.ttl'' : Lookup 에 실패했을 경우 실패 사항에 대한 Cache 시간.
   * ''jre/lib/security/java.security'' 파일을 통해 설정 가능.   * ''jre/lib/security/java.security'' 파일을 통해 설정 가능.
-  * Oracle JDK의 경우 ''-Dsun.net.inetaddr.ttl=30'' 처럼 ''sun.net.inetaddr.ttl'' 시스템 프라퍼티로 설정 가능. +  * Oracle/Open JDK의 경우 ''-Dsun.net.inetaddr.ttl=30'' 처럼 ''sun.net.inetaddr.ttl'' 시스템 프라퍼티로 설정 가능
-  * OpenJDK  7/8 의 경우 기본값 30초로 돼 있음. [[http://hg.openjdk.java.net/jdk8/jdk8/jdk/file/687fd7c7986d/src/share/classes/sun/net/InetAddressCachePolicy.java|OpenJdk 8 InetAddressCachePolicy]]+    * 단, ''networkaddress.cache.ttl''이 설정 돼 있는 경우 ''sun.net.inetaddr.ttl''은 무시된다
 +  * Java  6/7/8 의 경우 기본값 30초로 돼 있음. [[http://hg.openjdk.java.net/jdk8/jdk8/jdk/file/687fd7c7986d/src/share/classes/sun/net/InetAddressCachePolicy.java|OpenJdk 8 InetAddressCachePolicy]] 
 +  * static context 에서 코드로 지정해줄 수도 있다.<code java> 
 +java.security.Security.setProperty("networkaddress.cache.ttl" , "30"); 
 +</code>
 ===== Localhost의 IP 주소 목록 뽑기 ===== ===== Localhost의 IP 주소 목록 뽑기 =====
 <code java> <code java>
줄 71: 줄 76:
 </code> </code>
   * [[http://commons.apache.org/proper/commons-net/apidocs/org/apache/commons/net/util/SubnetUtils.html|Apache Commons net SubnetUtils]]를 사용할 수도 있다.   * [[http://commons.apache.org/proper/commons-net/apidocs/org/apache/commons/net/util/SubnetUtils.html|Apache Commons net SubnetUtils]]를 사용할 수도 있다.
 +
 +===== java.net.URL =====
 +  * [[http://hackeen.tistory.com/18|[java 네트워크 프로그래밍] 6. URL 클래스 :: hackeen]]
 +
 +===== IPv4 강제하기 =====
 +  * 환경에 따라 IPv6를 우선으로 하면서 ''invalid IPv6 address'' 같은 오류가 발생할 수 있는데, 이 경우 System Property로 다음을 지정해야 한다.
 +
 +<code sh>
 +-Djava.net.preferIPv4Stack=true
 +</code>
 +
 +위 항목을 Java Code에서 지정하면 작동하지 않고, ''java'' 명령행에서 지정해야만 한다.
java/network.1522367763.txt.gz · 마지막으로 수정됨: 2018/03/30 08:26 저자 kwon37xi