inetAddress 클래스
InetAddress 클래스는 디지털 IP 주소와 앞에서 논의한 주소의 도메인 이름을 캡슐화하는 데 사용됩니다.
IP 호스트 이름을 통해이 클래스와 상호 작용합니다. IP 주소보다 쉽고 이해하기 쉽습니다.
주소 번호는 InetAddress 클래스 내에 숨겨져 있습니다.
inetAddress 클래스의 공장 방법
inetAddress 클래스에는 명백한 생성자가 없습니다. inetAddress 객체를 생성하려면 사용 가능한 공장 방법을 사용해야합니다.
공장 방법은 클래스의 정적 메소드가 해당 클래스의 인스턴스를 반환하는 규칙 일뿐입니다.
inetAddress의 경우 세 가지 방법 : getLocalHost (), getByName () 및 getAllByName ()을 사용하여 inetAddress의 인스턴스를 생성 할 수 있습니다.
getLocalHost ()는 LocalHost를 상징하는 inetAddress 객체 만 반환합니다.
로컬 주소는 또한 LocalHost, 127.0.0.1 이며이 세 개의 주소는 동일합니다.
getByName () 메소드는 inetAddress를 호스트 이름으로 반환합니다.
이러한 메소드가 호스트 이름을 해결할 수 없으면 알려지지 않은 hostException 예외가 발생합니다.
인터넷에서는 하나의 이름을 사용하여 여러 기계를 나타냅니다.
getAllByName () 공장 메서드는 특별 이름으로 분해 된 모든 주소를 나타내는 inetAddresses 클래스 배열을 반환합니다.
이름이 하나 이상의 주소로 분해 될 수 없으면 알려지지 않은 hostexception 예외가 발생합니다.
프로그램 예
inetaddresstest01
com.example.network; import java.net.inetAddress; public static void main (string [] args)은 {inetAddress 주소 = inetAddress.getLocalHost (); /출력 : 기계 이름/IP 주소 // username-pc/10.4.16.131 // 도메인 이름 주소를 통해 IP 주소를 가져옵니다 (주소); /출력 : 도메인 이름 /IP 주소}} inetAddress 클래스를 사용하여 특수 IP 주소를 결정하십시오
IP 주소는 일반 주소와 특별 주소로 나뉩니다. 이전 기사의 대부분은 일반적인 IP 주소입니다.이 기사에서는 IP 주소가 특별한 IP 주소 여부를 결정하기 위해 10 가지 방법을 사용하는 방법을 소개합니다.
1. 이사 닐로 칼라 드레스 방법
IP 주소가 와일드 카드 주소 인 경우 true는 거짓을 반환합니다. 와일드 카드 주소를 사용하면 모든 네트워크 인터페이스의 클라이언트 연결이 서버 호스트에서 허용 될 수 있습니다. IPv4의 와일드 카드 주소는 0 : 0 : 0 : 0 : 0 : 0 : 0 : 0 : 0 : 0 : 0 : 0입니다. ::.
2. Isloopbackaddress 방법
IP 주소가 루프백 주소 인 경우 true를 반환합니다. 그렇지 않으면 false.loopback 주소는 컴퓨터의 IP 주소를 나타냅니다. IPv4의 루프백 주소의 범위는 127.0.0 ~ 127.255.255.255.255입니다. 즉, 첫 바이트가 127이면 룩백 주소입니다. 예를 들어, 127.1.2.3 및 127.0.200.200은 루프백 주소입니다. IPv6의 루프백 주소는 0 : 0 : 0 : 0 : 0 : 0 : 0 : 1이거나 :: 1으로 약칭 할 수 있습니다. 다음 명령 줄에 표시된대로 :
핑 127.200.200.200
실행 결과 :
127.0.0.1에서 답장 : 바이트 = 32 시간 <1ms ttl = 128 (참고 : 127.200.200.200). 127.0.0.1에서 TTL = 128PLY : 바이트 = 32 시간 <1ms TTL = 128ping 통계 127.200.200.200 : 패킷 : SENT = 4, 수신 = 4 (0% 손실), 대략 메이트 왕복 시간은 백만에서- 초 : 최소 = 0ms, 최대 = 0ms, 평균 = 0ms
127.255.255.255도 루프백 주소이지만 Windows에서는 127.255.255.255가 핑 될 수 없습니다. 이는 127.255.255.255가 방송 주소이기 때문에 Windows의 방송 주소로 전송되지 않지만 다른 운영 체제에서는 설정에 따라 다른 결과를 얻을 수 있습니다.
III. ISLINKALADDRESS 방법
IP 주소가 로컬 연결 주소 (LinklocalAddress) 일 때, IPv4의 로컬 연결 주소의 범위는 169.254.0.0 ~ 169.254.255.255입니다. 비트는 fe88 : 및 fe80 :: abcd ::와 같은 임의의 가치 일 수 있습니다.
IS ISSITELOCALADDRESS 방법
IP 주소가 영역의 로컬 주소 (SitelocalAddress) 일 때 true reture false를 반환하는 주소의 주소는 세 가지 세그먼트로 나뉩니다. 192.168.0.0 ~ 192 .168 IPv6의 지역 주소의 첫 12 비트는 FEC 일 수 있습니다.
5. IsmulticastAddress 방법
IP 주소가 방송 주소 (MultiCastAddress) 인 경우, 그렇지 않으면 브로드 캐스트 주소를 통해 정보가 하나의 특정 컴퓨터가 아닌 네트워크의 모든 컴퓨터로 전송 될 수 있습니다. IPv4의 방송 주소의 범위는 224.0.0.0 ~ 239.255.255.255.255.255입니다. IPv6 방송 주소의 첫 바이트는 다른 바이트는 값이 될 수 있습니다. 방송 주소에 대한 자세한 내용은 향후 장에서 논의 할 것입니다.
6. ismcglobal 방법
IP 주소가 글로벌 브로드 캐스트 주소 인 경우 True는 인터넷의 모든 컴퓨터에 정보를 보낼 수 있습니다. IPv4 방송 주소는 IP 주소 224.0.0.0을 제외한 글로벌 브로드 캐스트 주소이며 첫 번째 바이트는 239입니다. IPv6의 글로벌 브로드 캐스트 주소의 첫 번째 바이트는 FF이고, 두 번째 바이트는 0e ~ fe이고, 다른 바이트는 ffbe :: 및 ff0e ::와 같은 값이 될 수 있습니다.
7. ISMCLINKLOCAL 방법
반환 true IP 주소가 서브넷 브로드 캐스트 주소 인 경우 서브넷을 사용하여 브로드 캐스트 주소를 반환합니다. IPv4의 서브넷 브로드 캐스트 주소의 범위는 224.0.0.0 ~ 224.0.0.255입니다. IPv6의 서브넷 브로드 캐스트 주소의 첫 바이트는 FF이고, 두 번째 바이트 범위는 02 ~ f2이고 다른 바이트는 FFB2와 같은 값 일 수 있습니다. :: 및 ff02 : ABCD ::는 모든 서브넷 브로드 캐스트 주소입니다.
8. ISMCNODELOCAL 방법
IP 주소가 로컬 인터페이스 브로드 캐스트 주소 인 경우, 로컬 인터페이스 브로드 캐스트 주소는 방송 정보를 방송 정보를 생성하는 네트워크 인터페이스로 보낼 수 없으며 동일한 컴퓨터의 다른 네트워크 인터페이스를 수행 할 수 없습니다. 모든 IPv4 방송 주소는 로컬 인터페이스 방송 주소가 아닙니다. IPv6의 로컬 인터페이스 방송 주소의 첫 번째 바이트는 FF이고, 두 번째 바이트의 범위는 01 ~ f1이고, 다른 바이트는 ffb1 :: 및 ff01 : a123 ::와 같은 값 일 수 있습니다. 방송 주소.
9. ismcorglocal 방법
IP 주소가 조직 전체의 방송 주소 인 경우 Ture를 반환합니다. 그렇지 않으면 조직 전체의 방송 주소를 사용하여 회사 내 모든 컴퓨터에 방송 정보를 보내십시오. IPv4의 조직 전체 방송 주소의 첫 번째 바이트는 239, 두 번째 바이트는 192, 세 번째 바이트는 195보다 크지 않습니다. 예를 들어, 239.193.100.200 및 239.192.195.0과 같은 것은 모두 조직 전체의 방송입니다. 구애. IPv6의 조직 전체 방송 주소의 첫 번째 바이트는 FF, 두 번째 바이트의 범위는 08 ~ f8이고 다른 바이트는 FF08 :: 및 FF48 ::와 같은 값이 될 수 있습니다. . 주소.
10. ISMCSITELOCAL 방법
IP 주소가 사이트 전체의 방송 주소 인 경우 사이트 전체의 방송 주소를 사용하면 사이트 전체 컴퓨터로 전송 될 수 있습니다. IPv4의 사이트 전체 방송 주소의 범위는 239.255.0.0 ~ 239.255.255.255.255입니다. IPv6 사이트 전체 브로드 캐스트 주소의 첫 번째 바이트는 FF이고, 두 번째 바이트의 범위는 05 ~ F5이고, 다른 바이트는 FF05 :: 및 FF45 ::와 같은 값이 될 수 있습니다. 주소.
다음 코드는 IP 주소가 위의 10 가지 주소 유형의 범위 내에 있는지 여부를 결정할 수 있습니다.
패키지 테스트; Java.net = inetAddress.getByName (Args [0]); 매치 ( "is.*") && method.getParameterTypes (). length == 0) {if (boolean.perseboolean (method.invoke (address) .toString ())) system.out.println (method.g etname ( ) + "= true"); 테스트 1
다음 명령을 실행하십시오.
Java Test.Mynet 224.0.0.1
실행 결과 :
ismclinklocal = trueismulticastaddress = true
테스트 2
다음 명령을 실행하십시오.
Java test.mynet ffb1 ::
실행 결과 :
ismcnodelocal = true ismulticastaddress = true