TCP/IP 주소 및 서브넷 기본 이해

이 문서는 IP(인터넷 프로토콜) 네트워크 및 서브넷의 개념에 대한 일반적인 소개입니다. 문서의 끝에 용어집이 있습니다.

적용 대상: Windows 10 - 모든 버전
원본 KB 번호: 164015

요약

Windows 컴퓨터에서 TCP/IP 프로토콜을 구성할 때 TCP/IP 구성 설정에는 다음이 필요합니다.

  • IP 주소
  • 서브넷 마스크
  • 기본 게이트웨이

TCP/IP를 올바르게 구성하려면 TCP/IP 네트워크의 주소를 지정하고 네트워크와 하위 네트워크로 나누는 방법을 이해해야 합니다.

인터넷의 네트워크 프로토콜로서 TCP/IP의 성공은 주로 다른 크기의 네트워크와 다른 유형의 시스템을 함께 연결할 수 있는 기능 때문입니다. 이러한 네트워크는 미리 정의된 크기를 가진 세 가지 주요 클래스(몇 가지 다른 클래스와 함께)로 임의로 정의됩니다. 각 네트워크는 시스템 관리자에 의해 더 작은 하위 네트워크로 나눌 수 있습니다. 서브넷 마스크는 IP 주소를 두 부분으로 나누는 데 사용됩니다. 한 부분은 호스트(컴퓨터)를 식별하고 다른 부분은 호스트가 속한 네트워크를 식별합니다. IP 주소와 서브넷 마스크가 작동하는 방식을 더 잘 이해하려면 IP 주소를 보고 어떻게 구성되어 있는지 확인하세요.

IP 주소: 네트워크 및 호스트

IP 주소는 32비트 숫자입니다. IP 주소는 TCP/IP 네트워크에서 호스트(컴퓨터 또는 프린터나 라우터와 같은 기타 장치)를 고유하게 식별합니다.

IP 주소는 일반적으로 192.168.123.132와 같이 마침표로 구분된 4개의 숫자가 있는, 점으로 분리된 10진수 형식으로 표시됩니다. 서브넷 마스크를 사용하여 호스트, 네트워크 및 하위 네트워크를 구별하는 방법을 이해하려면 2진수 IP 주소를 살펴보세요.

예를 들어 점선 10진수 IP 주소 192.168.123.132는 32비트 숫자 11000000101010000111101110000100(이진 표기법)입니다. 이 숫자는 이해하기 어려울 수 있으므로 8자리 2진수의 네 부분으로 나눕니다.

이러한 8비트 섹션을 옥텟이라고 합니다. 그러면 예제 IP 주소는 11000000.10101000.01111011.10000100이 됩니다. 이 숫자는 조금 더 의미가 있으므로 대부분의 경우 2진수 주소를 점으로 구분된 10진수 형식(192.168.123.132)으로 변환합니다. 마침표로 구분된 10진수는 2진수에서 10진수 표기법으로 변환된 옥텟입니다.

TCP/IP WAN(Wide Area Network)이 네트워크 모음으로 효율적으로 작동할 수 있도록 네트워크 간 데이터 패킷을 전달하는 라우터는 정보 패킷이 대상으로 하는 호스트의 정확한 위치를 알지 못합니다. 라우터는 호스트가 구성원인 네트워크만 알고 라우팅 테이블에 저장된 정보를 사용하여 패킷을 대상 호스트의 네트워크로 가져오는 방법을 결정합니다. 패킷이 목적지의 네트워크로 전달된 후 패킷은 적절한 호스트로 전달됩니다.

이 프로세스가 작동하기 위해 IP 주소는 두 부분으로 구성됩니다. IP 주소의 첫 번째 부분은 네트워크 주소로 사용되고 마지막 부분은 호스트 주소로 사용됩니다. 예를 들어, 192.168.123.132를 이 두 부분으로 나누면 192.168.123. 네트워크 .132 호스트 또는 192.168.123.0 - 네트워크 주소입니다. 0.0.0.132 - 호스트 주소.

서브넷 마스크

TCP/IP가 작동하는 데 필요한 두 번째 항목은 서브넷 마스크입니다. 서브넷 마스크는 호스트가 로컬 서브넷에 있는지 아니면 원격 네트워크에 있는지 확인하기 위해 TCP/IP 프로토콜에서 사용됩니다.

TCP/IP에서 네트워크와 호스트 주소로 사용되는 IP 주소 부분은 고정되어 있지 않습니다. 추가 정보가 없으면 위의 네트워크 및 호스트 주소를 확인할 수 없습니다. 이 정보는 서브넷 마스크라고 하는 다른 32비트 번호로 제공됩니다. 이 예에서 서브넷 마스크는 255.255.255.0입니다. 2진수로 255가 11111111과 같다는 것을 알지 못한다면 이 숫자가 무엇을 의미하는지 명확하지 않습니다. 따라서, 서브넷 마스크는 11111111.11111111.11111111.00000000입니다.

IP 주소와 서브넷 마스크를 함께 정렬하면 주소의 네트워크 및 호스트 부분을 분리할 수 있습니다.

11000000.10101000.01111011.10000100 - IP 주소(192.168.123.132)
11111111.11111111.11111111.00000000 - 서브넷 마스크(255.255.255.0)

처음 24비트(서브넷 마스크의 1의 수)는 네트워크 주소로 식별됩니다. 마지막 8비트(서브넷 마스크의 나머지 0의 수)는 호스트 주소로 식별됩니다. 이 예제에서는 주소가 다음과 같습니다.

11000000.10101000.01111011.00000000 - 네트워크 주소(192.168.123.0)
00000000.00000000.00000000.10000100 - 호스트 주소(000.000.000.132)

따라서, 255.255.255.0 서브넷 마스크를 사용하는 이 예의 경우 네트워크 ID가 192.168.123.0이고, 호스트 주소가 0.0.0.132라는 것을 알 수 있습니다. 패킷이 192.168.123.0 서브넷(로컬 서브넷 또는 원격 네트워크에서)에 도착하고 대상 주소가 192.168.123.132이면 컴퓨터는 네트워크에서 패킷을 수신하여 처리합니다.

거의 모든 10진 서브넷 마스크는 왼쪽이 모두 1이고 오른쪽이 모두 0인 2진수로 변환됩니다. 다른 일반적인 서브넷 마스크는 다음과 같습니다.

10진수 이진수
255.255.255.192 1111111.11111111.1111111.11000000
255.255.255.224 1111111.11111111.1111111.11100000

인터넷 RFC 1878(인터넷 도메인 이름 등록 서비스에 관한 InterNIC 공개 정보에 있음)은 TCP/IP 네트워크에서 사용할 수 있는 유효한 서브넷 및 서브넷 마스크를 설명합니다.

네트워크 클래스

인터넷 주소는 인터넷을 관리하는 조직인 InterNIC에서 할당합니다. 이러한 IP 주소는 클래스로 나뉘어 있습니다. 가장 일반적인 것은 클래스 A, B, C입니다. 클래스 D와 E는 존재하지만 최종 사용자는 사용하지 않습니다. 각 주소 클래스에는 다른 기본 서브넷 마스크가 있습니다. 첫 번째 옥텟을 보고 IP 주소의 클래스를 식별할 수 있습니다. 다음은 클래스 A, B 및 C 인터넷 주소의 범위이며 각각 예제 주소가 있습니다.

  • 클래스 A 네트워크는 기본 서브넷 마스크로 255.0.0.0을 사용하고 첫 번째 옥텟은 0-127입니다. 주소 10.52.36.11은 A 클래스 A 주소입니다. 첫 번째 옥텟은 10이며 1과 126 사이입니다.

  • 클래스 B 네트워크는 기본 서브넷 마스크로 255.255.0.0을 사용하고 첫 번째 옥텟이 128-191입니다. 주소 172.16.52.63은 클래스 B 주소입니다. 첫 번째 옥텟은 172이며 128에서 191 사이입니다.

  • 클래스 C 네트워크는 기본 서브넷 마스크로 255.255.255.0을 사용하고 첫 번째 옥텟이 192-223입니다. 주소 192.168.123.132는 클래스 C 주소입니다. 첫 번째 옥텟은 192이며 192와 223 사이입니다.

일부 시나리오에서 기본 서브넷 마스크 값은 다음 이유 중 하나로 인해 조직의 요구 사항에 맞지 않습니다.

  • 네트워크의 물리적 토폴로지
  • 네트워크(또는 호스트)의 수가 기본 서브넷 마스크 제한에 맞지 않습니다.

다음 섹션에서는 서브넷 마스크를 사용하여 네트워크를 분할하는 방법을 설명합니다.

서브넷

클래스 A, B 또는 C TCP/IP 네트워크는 시스템 관리자가 추가로 분할하거나 서브넷을 지정할 수 있습니다. 인터넷의 논리적 주소 체계(IP 주소 및 서브넷의 추상적인 세계)를 실제 세계에서 사용하는 물리적 네트워크와 일치시키는 데 필요합니다.

IP 주소 블록이 할당된 시스템 관리자는 이러한 주소에 쉽게 맞는 방식으로 구성되지 않은 네트워크를 관리할 수 있습니다. 예를 들어, TCP/IP 라우터로 연결된 3개의 네트워크(서로 다른 도시에 있음)에 150개의 호스트가 있는 광역 네트워크가 있습니다. 이 3개의 네트워크에는 각각 50개의 호스트가 있습니다. 클래스 C 네트워크 192.168.123.0이 할당되었습니다. (예시를 위해 이 주소는 실제로 인터넷에 할당되지 않은 범위에서 가져온 것입니다.) 즉, 150개의 호스트에 대해 192.168.123.1~192.168.123.254 사이의 주소를 사용할 수 있음을 의미합니다.

예제에서 사용할 수 없는 2개의 주소는 192.168.123.0과 192.168.123.255입니다. 호스트 부분이 모두 1이고 모두 0인 2진 주소는 유효하지 않기 때문입니다. 0 주소는 호스트를 지정하지 않고 네트워크를 지정하는 데 사용되기 때문에 유효하지 않습니다. 255 주소(2진수로, 모든 주소의 호스트 주소)는 네트워크의 모든 호스트에 메시지를 브로드캐스트하는 데 사용됩니다. 네트워크나 서브넷의 첫 번째 주소와 마지막 주소는 개별 호스트에 할당할 수 없습니다.

이제 254개 호스트에 IP 주소를 부여할 수 있습니다. 150대의 컴퓨터가 모두 하나의 네트워크에 있으면 정상적으로 작동합니다. 그러나, 150대의 컴퓨터는 3개의 개별 물리적 네트워크에 있습니다. 각 네트워크에 대해 더 많은 주소 블록을 요청하는 대신, 여러 물리적 네트워크에서 하나의 주소 블록을 사용할 수 있도록 네트워크를 서브넷으로 나눕니다.

이 경우, 네트워크 주소를 더 크게 만들고 가능한 호스트 주소 범위를 더 작게 만드는 서브넷 마스크를 사용하여 네트워크를 4개의 서브넷으로 나눕니다. 즉, 호스트 주소에 사용되는 비트 중 일부를 '빌려서' 주소의 네트워크 부분에 사용합니다. 서브넷 마스크 255.255.255.192는 각각 62개의 호스트로 구성된 4개의 네트워크를 제공합니다. 2진수로 255.255.255.192가 1111111.11111111.1111111.11000000과 같기 때문에 작동합니다. 마지막 옥텟의 처음 두 자리는 네트워크 주소가 되므로 추가 네트워크 00000000(0), 01000000(64), 10000000(128) 및 11000000(192)을 얻게 됩니다. (일부 관리자는 서브넷 마스크로 255.255.255.192를 사용하는 서브네트워크 중 두 개만 사용합니다. 이 항목에 대한 자세한 내용은 RFC 1878을 참조하세요.) 이 네 개의 네트워크에서 호스트 주소에 마지막 6개의 이진 숫자를 사용할 수 있습니다.

서브넷 마스크 255.255.255.192를 사용하면 192.168.123.0 네트워크는 4개의 네트워크 192.168.123.0, 192.168.123.64, 192.168.123.128, 892.123.192가 됩니다. 이 4개의 네트워크는 유효한 호스트 주소를 갖습니다.

192.168.123.1-62 192.168.123.65-126 192.168.123.129-190 192.168.123.193-254

모두 1 또는 모두 0인 2진수 호스트 주소는 유효하지 않으므로 마지막 옥텟이 0, 63, 64, 127, 128, 191, 192 또는 255인 주소는 사용할 수 없습니다.

2개의 호스트 주소 192.168.123.71과 192.168.123.133을 보면 작동 방식을 알 수 있습니다. 기본 클래스 C 서브넷 마스크 255.255.255.0을 사용한 경우 두 주소 모두 192.168.123.0 네트워크에 있습니다. 하지만, 서브넷 마스크 255.255.255.192를 사용하는 경우 서로 다른 네트워크에 있습니다. 192.168.123.71은 192.168.123.64 네트워크에 있고 192.168.123.133은 192.168.123.128 네트워크에 있습니다.

기본 게이트웨이

TCP/IP 컴퓨터가 다른 네트워크의 호스트와 통신해야 하는 경우 일반적으로 라우터라는 장치를 통해 통신합니다. TCP/IP 용어로 호스트의 서브넷을 다른 네트워크에 연결하는 호스트에 지정된 라우터를 기본 게이트웨이라고 합니다. 이 섹션에서는 TCP/IP가 네트워크의 다른 컴퓨터나 장치에 도달하기 위해 기본 게이트웨이로 패킷을 보낼지 여부를 결정하는 방법을 설명합니다.

호스트가 TCP/IP를 사용하여 다른 장치와 통신을 시도하면 정의된 서브넷 마스크 및 대상 IP 주소와 서브넷 마스크 및 자체 IP 주소를 사용하여 비교 프로세스를 수행합니다. 이 비교 결과는 대상이 로컬 호스트인지 원격 호스트인지 컴퓨터에 알려줍니다.

이 프로세스의 결과 대상이 로컬 호스트로 결정되면 컴퓨터는 로컬 서브넷에서 패킷을 전송합니다. 비교 결과 대상이 원격 호스트로 결정되면 컴퓨터는 TCP/IP 속성에 정의된 기본 게이트웨이로 패킷을 전달합니다. 그러면 패킷을 정확한 서브넷으로 전달하는 것은 라우터의 책임입니다.

문제 해결

TCP/IP 네트워크 문제는 종종 컴퓨터의 TCP/IP 속성에 있는 세 가지 기본 항목의 잘못된 구성으로 인해 발생합니다. TCP/IP 구성의 오류가 네트워크 작업에 미치는 영향을 이해함으로써 많은 일반적인 TCP/IP 문제를 해결할 수 있습니다.

잘못된 서브넷 마스크: 네트워크가 주소 클래스에 대한 기본 마스크 이외의 서브넷 마스크를 사용하고 클라이언트가 여전히 주소 클래스에 대한 기본 서브넷 마스크로 구성된 경우, 일부 가까운 네트워크에는 통신이 실패하지만 멀리 있는 네트워크에는 실패하지 않습니다. 예를 들어, 4개의 서브넷을 생성하지만(예: 서브넷 예제) TCP/IP 구성에서 잘못된 서브넷 마스크 255.255.255.0을 사용하는 경우, 호스트는 일부 컴퓨터가 자신의 서브넷과 다른 서브넷에 있는지 확인할 수 없습니다. 이 경우, 동일한 클래스 C 주소의 일부인 다른 물리적 네트워크의 호스트로 향하는 패킷은 배달을 위해 기본 게이트웨이로 전송되지 않습니다. 이 문제의 일반적인 증상은 컴퓨터가 로컬 네트워크에 있는 호스트와 통신할 수 있고 근처에 있고 클래스 A, B 또는 C 주소가 같은 네트워크를 제외한 모든 원격 네트워크와 통신할 수 있는 경우입니다. 이 문제를 해결하려면 해당 호스트의 TCP/IP 구성에 정확한 서브넷 마스크를 입력하기만 하면 됩니다.

잘못된 IP 주소: 로컬 네트워크의 별도 서브넷에 있어야 하는 IP 주소를 가진 컴퓨터를 서로 연결하면 통신할 수 없습니다. 패킷을 정확하게 전달할 수 없는 라우터를 통해 서로에게 패킷을 보내려고 합니다. 이 문제의 증상은 원격 네트워크의 호스트와 통신할 수 있지만 로컬 네트워크의 일부 또는 모든 컴퓨터와 통신할 수 없는 컴퓨터입니다. 이 문제를 해결하려면 동일한 물리적 네트워크에 있는 모든 컴퓨터의 IP 주소가 동일한 IP 서브넷에 있는지 확인합니다. 단일 네트워크 세그먼트에서 IP 주소가 부족한 경우 이 문서의 범위를 벗어나는 솔루션이 있습니다.

잘못된 기본 게이트웨이: 잘못된 기본 게이트웨이로 구성된 컴퓨터는 자체 네트워크 세그먼트의 호스트와 통신할 수 있습니다. 그러나 일부 또는 모든 원격 네트워크의 호스트와 통신하는 데 실패합니다. 호스트는 다음 조건이 True인 경우 일부 원격 네트워크와 통신할 수 있지만 다른 네트워크와는 통신할 수 없습니다.

  • 하나의 물리적 네트워크에 둘 이상의 라우터가 있습니다.
  • 잘못된 라우터가 기본 게이트웨이로 구성되어 있습니다.

이 문제는 조직에 내부 TCP/IP 네트워크와 연결된 라우터와 인터넷에 연결된 또 다른 라우터가 있는 경우에 흔히 발생합니다.

참조

TCP/IP에 대한 인기 참고 문헌:

  • "TCP/IP Illustrated, Volume 1: The Protocols," Richard Stevens, Addison Wesley, 1994
  • "Internetworking with TCP/IP, Volume 1: Principles, Protocols, and Architecture," Douglas E. Comer, Prentice Hall, 1995

TCP/IP 네트워크를 담당하는 시스템 관리자는 이러한 참조 중 하나 이상을 사용할 수 있도록 하는 것이 좋습니다.

용어집

  • 브로드캐스트 주소--호스트 부분이 모두 1인 IP 주소입니다.

  • 호스트--TCP/IP 네트워크에 있는 컴퓨터 또는 기타 장치입니다.

  • 인터넷--함께 연결되고 공통 IP 주소 범위를 공유하는 글로벌 네트워크 컬렉션입니다.

  • InterNIC--인터넷에서 IP 주소 관리를 담당하는 조직입니다.

  • IP--TCP/IP 네트워크 또는 인터넷을 통해 네트워크 패킷을 보내는 데 사용되는 네트워크 프로토콜입니다.

  • IP 주소--TCP/IP 네트워크 또는 인터네트워크의 호스트에 대한 고유한 32비트 주소입니다.

  • 네트워크--이 문서에서 네트워크라는 용어는 두 가지 용도로 사용됩니다. 하나는 단일 물리적 네트워크 세그먼트에 있는 컴퓨터 그룹입니다. 다른 하나는 시스템 관리자가 할당한 IP 네트워크 주소 범위입니다.

  • 네트워크 주소--호스트 부분이 모두 0인 IP 주소입니다.

  • 옥텟--8비트 숫자로, 그 중 4개는 32비트 IP 주소를 구성합니다. 범위는 00000000-11111111이며 0-255의 10진수 값에 해당합니다.

  • 패킷--TCP/IP 네트워크 또는 광역 네트워크를 통해 전달되는 데이터 단위입니다.

  • RFC(Request for Comment)--인터넷에서 표준을 정의하는 데 사용되는 문서입니다.

  • 라우터--서로 다른 IP 네트워크 간에 네트워크 트래픽을 전달하는 장치입니다.

  • 서브넷 마스크--IP 주소의 네트워크 부분과 호스트 부분을 구별하는 데 사용되는 32비트 숫자입니다.

  • 서브넷 또는 서브넷워크--더 큰 네트워크를 동일한 부분으로 나누어 생성된 더 작은 네트워크입니다.

  • TCP/IP--광범위하게 사용되며, 인터넷 및 대규모 네트워크에서 일반적으로 사용되는 프로토콜, 표준 및 유틸리티 집합입니다.

  • WAN(광역 네트워크)--라우터로 분리된 소규모 네트워크의 집합인 대규모 네트워크입니다. 인터넷은 대규모 WAN의 예입니다.