레이블이 자바 NetworkInterface인 게시물을 표시합니다. 모든 게시물 표시
레이블이 자바 NetworkInterface인 게시물을 표시합니다. 모든 게시물 표시

2016년 7월 21일 목요일

JDK 1.4 튜토리얼 - 2장 NetworkInterface

2.4 네트워크 인터페이스

java.net.NetworkInterface
  • 네트워크 통신의 인터페이스를 표현하는 OS 레벨의 객체에 대한 접근 기능을 제공
  • NIC 정보를 제공
  • InetAddress 주소를 제공
  • NetworkInterface목록 구하기
    • NetworkInterface.getNetworkInterface()
  • NetworkInterface 구하기
    • getByInetAddress() : InetAddress 주소를 사용
    • getByName() : 인터페이스 이름로 (lo, eth0)
    • getByIndex() : 인터페이스 Index
  • InetAddress 주소 리스트 구하기
    • networkInterface.getInetAddresses()
    • 대부분 단일 주소를 가지고 있음

디폴트 인터페이스
  • 일반적으로 IP 통신에 위한 사용하는 인터페이스
  • netstat -rn 명령어 결과에서 네트워크 0.0.0.0 , NetMask 0.0.0.0 에 해당한다.
  • 서버 소켓에서는 포트만 주어주는 경우에 해당한다. 특정 인터페이스 참고 없이 동작할 수 있다는 의미
  • 0.0.0.0 와 localhost(127.0.0.1) 분명한 차이가 있다.
    • 0.0.0.0은 디폴트 인터페이스 이다.
    • localhost : loop back 주소임

특정 주소에 대해서 Listen 하기

  • 디폴트 주소에 대해 리스닝하기
    • 포트만 주어 지는 경우
    • 디폴트 주소 (0.0.0.0) 이며, 실제 주소가 아님 이 주소를 통하여 리스닝 하면 모든 주소에 리스닝 하는 것 이다
    • 간혹 특정 네트워크 API 에서 직접 주소를 지정하는 경우가 있는데. localhost 대신 반드시 0.0.0.0을 사용해야 한다.
출처 : 인포북 JDK 1.4 Tutorial