IP 주소 표준 및 서비스
- 13분
클라우드로의 전환을 고려한다면 Azure 개발자, 솔루션 설계자 또는 관리자는 네트워크의 기본 작동 방식을 알고 있어야 합니다. 네트워크의 구성을 이해하는 다음 단계는 네트워크의 상호 운용성을 자세히 확인하는 것입니다. 조직의 네트워크도, 웹 같은 더 광범위한 네트워크도 마찬가지입니다. 모든 네트워크는 동일한 보안 원칙을 바탕으로 구축됩니다.
이번 단원에서는 네트워크 통신의 주요 특성과, TCP/IP(Transmission Control Protocol/Internet Protocol)를 사용하여 네트워크를 구축하는 이유를 살펴봅니다. 그런 다음, 인터넷 프로토콜 주소 표준 간의 차이점을 설명합니다. 마지막으로 서브넷, DNS(Domain Name System), 포트, 개인 IP 주소의 사용과 역할을 살펴봅니다.
주소 확인 프로토콜이란?
ARP(주소 확인 프로토콜)는 인터넷 프로토콜 모음 내의 통신 프로토콜입니다. 지정된 IP 주소에 대한 MAC(미디어 액세스 제어) 주소를 확인하기 위해 사용되는 요청-응답 프로토콜입니다. ARP는 IPv4(인터넷 프로토콜 버전 4), DECnet 및 PUP 같은 다양한 데이터 연결 계층 기술을 지원합니다. IPv6(인터넷 프로토콜 버전 6) 주소가 확인되면, ARP 대신 NDP(환경 검색 프로토콜)를 사용합니다. ARP가 없으면 IP 주소를 실제 디바이스 주소로 확인할 방법이 없습니다.
주어진 MAC 주소를 기반으로 IP 주소를 검색하는 RARP(Reverse Address Resolution Protocol)도 있습니다.
TCP/IP란?
Transmission Control Protocol/Internet Protocol은 네트워크 지원 디바이스가 IP 기반 네트워크를 통해 상호 연결하는 방법을 지원 및 정의하는 다양한 통신 프로토콜 컬렉션입니다. 핵심 프로토콜은 다음 두 가지입니다. TCP 및 IP. TCP/IP를 사용하면 인터넷뿐만 아니라 인트라넷과 엑스트라넷 같은 개인 네트워크와 공용 네트워크를 비롯한 네트워크도 사용할 수 있습니다.
TCP/IP는 엔드투엔드 통신 프로세스를 정의하여 네트워크 지원 디바이스 간에 데이터를 공유하는 방법을 정의합니다. 메시지를 데이터 패킷으로 분할하는 방법을 관리하며, 이 방법을 데이터그램이라고 합니다. 또한 TCP/IP는 패킷의 처리와 전송, 라우팅 및 수신 방법을 결정합니다. TCP/IP는 네트워크를 지나는 가장 효율적인 경로를 결정할 수 있습니다.
TCP/IP 모델은 상태 비저장으로 설계되었습니다. 이러한 설계에서는 모든 요청이 이전 요청과 무관하기 때문에, 네트워크 스택은 각 요청을 새로운 요청으로 간주합니다. 그렇지만 TCP/IP 모델 특정 부분은 상태 비저장이 아닙니다. 전송 계층은 메시지의 모든 패킷이 수신될 때까지 연결을 유지하기 때문에 상태 저장 모드에서 작동합니다.
TCP/IP는 개방형 표준입니다. TCP/IP는 관리형이지만 어느 조직에서도 소유하지 않기 때문에 모든 운영 체제, 네트워크 및 하드웨어에서 잘 작동합니다.
TCP/IP 모델 계층
TCP/IP 모델은 고유한 계층 4개로 구성됩니다. 각 계층은 서로 다른 유형의 프로토콜을 사용합니다. TCP/IP 모델이 앞에서 설명한 인터넷 프로토콜 모음과 얼마나 비슷한지 확인해 보세요.
- 애플리케이션 계층: 애플리케이션 계층은 사용되는 통신 프로토콜을 결정합니다. 이 계층에는 HTTP(HyperText Transfer Protocol), DNS, FTP(File Transfer Protocol), IMAP(Internet Message Access Protocol), LDAP(Lightweight Directory Access Protocol), POP(Post Office Protocol), SMTP(Simple Mail Transfer Protocol), SNMP(Simple Network Management Protocol), SSH(Secure Shell), 텔넷 및 TLS/SSL이 포함됩니다.
- 전송 계층: 이 계층은 사용되는 애플리케이션 프로토콜에 적합한 포트를 사용하여 애플리케이션 데이터를 관리 가능한 순서가 지정된 청크로 분할합니다. 이 계층과 연결된 프로토콜은 TCP 및 UDP(User Datagram Protocol)입니다.
- 인터넷 계층: 네트워크 계층이라고도 하는 이 계층은 데이터 패킷이 대상에 도착하도록 합니다. 이 계층에 연결된 프로토콜은 IP, IPv4, IPv6, ICMP(Internet Control Message Protocol)와 IPsec(Internet Protocol Security)입니다.
- 네트워크 액세스 계층: 이 계층은 네트워크를 통해 데이터를 보내는 방법을 정의합니다. 이 계층과 연결된 프로토콜은 ARP, MAC, 이더넷, DSL(디지털 구독자 회선) 및 ISDN(Integrated Services Digital Network)입니다.
인터넷 프로토콜 표준이란?
앞에서 확인했듯이 인터넷 프로토콜은 패킷이 전송/수신되는 순서를 고려하지 않습니다. 또한 패킷의 전달도 보장하지 않습니다. 인터넷 프로토콜은 메시지를 라우팅하고 대상에 전달하는 데 사용하는 논리적 주소 지정 시스템만 제공합니다.
현재 네트워크에서 작동하는 두 가지 인터넷 프로토콜 버전이 있습니다. IPv4 및 IPv6.
IPv4
1983년에 공개된 인터넷 프로토콜 버전 4는 현재 사용 중인 모든 패킷 스위치 기반 네트워크의 표준입니다. IPv4는 32비트 주소 공간을 사용하여 최대 4,294,967,296(43억)개의 고유한 논리 IP 주소를 제공합니다. 사용 가능한 수많은 IP 주소는 프라이빗 네트워크, 로컬 호스트, 인터넷 릴레이, 설명서, 서브넷 등의 특정 목적으로 예약됩니다.
IPv4 주소의 구조
IPv4 주소의 구조는 0에서 255 사이의 10진수 4개이며 점으로 구분됩니다. 이 구조를 점으로 구분된 10진수 형식이라고도 합니다. IP 주소의 대표적인 예는 192.168.0.1입니다.
IPv4 주소의 부분
IP 주소는 네트워크와 호스트라는 두 가지 부분으로 구성됩니다. 예를 들어 192.168.0.1을 살펴보겠습니다.
IP 주소의 네트워크 부분은 첫 번째 10진수 세트에 해당합니다. 이 예제에서는 192.168.0입니다. 이 숫자는 네트워크별로 고유하며 네트워크 클래스를 지정합니다. 다음 섹션에 설명된 대로 여러 네트워크 클래스를 사용할 수 있습니다.
IP 주소의 호스트 부분은 다음 10진수 세트에 해당합니다. 이 예제에서는 1입니다. 이 숫자는 디바이스를 나타내며, 주소 충돌을 방지하기 위해 네트워크에서 고유해야 합니다. 네트워크 세그먼트의 각 디바이스에는 고유한 주소가 있어야 합니다.
IPv4 주소 클래스
인터넷 프로토콜의 로컬 주소 공간은 5개의 논리 클래스 또는 IP 주소 범위로 분할됩니다. 각 항목은 알파벳 문자로 표시됩니다.
| 클래스 | 시작 주소 | 끝 주소 | 네트워크 수 | 네트워크당 IP 주소 | 사용 가능한 총 IP 주소 | 서브넷 마스크 |
|---|---|---|---|---|---|---|
| A | 0.0.0.0 | 127.255.255.255 | 128 | 16,777,216 | 2,147,483,648 | 255.0.0.0 |
| b | 128.0.0.0 | 191.255.255.255 | 16,384 | 65,536 | 1,073,741,824 | 255.255.0.0 |
| C | 192.0.0.0 | 223.255.255.255 | 2,097,152 | 256 | 536,870,912 | 255.255.255.0 |
| D | 224.0.0.0 | 239.255.255.255 | - | - | 268,435,456 | - |
| E | 240.0.0.0 | 255.255.255.255 | - | - | 268,435,456 | - |
A, B, C 클래스의 경우 시작 IP 주소와 끝 IP 주소는 예약되어 있기 때문에 사용할 수 없습니다. 클래스 D는 멀티캐스트 트래픽용으로만 예약됩니다. 클래스 E는 예약되어 있으며 인터넷 같은 퍼블릭 네트워크에서는 사용할 수 없습니다.
앞의 표에서 마지막 열은 서브넷 마스크로 표시됩니다. 서브넷 마스크는 IP 주소의 동일한 형식을 사용하지만, 그 목적은 IP 범위에서 유효한 IP 주소를 식별하는 것입니다.
예를 들어 192.168.0.1에서 시작하는 IP 주소 범위가 있고 255.255.255.0의 서브넷이 있다고 가정해 보겠습니다. Microsoft는 서브넷 마스크를 다음과 같은 방식으로 적용합니다. 마스크에서 255로 지정된 각 주소 세그먼트 값의 경우, 해당 주소 세그먼트는 고정입니다. IP 주소를 선택하고 싶다면 192.168.0과 일치하는 주소를 선택해야 합니다. 세그먼트의 값이 0이면 0~255 사이의 값을 사용할 수 있습니다.
255.255.255.0 서브넷 마스크는 192.168.0.0~192.168.0.255의 IP 주소 범위를 제공하며, 이 값을 선택하면 됩니다.
서브넷이란?
서브넷은 클래스 A, B 또는 C 네트워크 내에서 하나 이상의 논리 네트워크를 정의합니다. 서브넷이 없으면 각 클래스 A, B 또는 C 네트워크에서 단일 네트워크만 사용할 수 있습니다.
네트워크 주소 또는 라우팅 접두사라고도 하는 IP 주소는 데이터 패킷을 보낼 디바이스 또는 컴퓨터의 주소를 나타냅니다. 서브넷 또는 호스트 주소는 사용할 네트워크 또는 서브네트워크를 나타냅니다. 서브넷은 점으로 구분된 10진수 형식으로 구성하는 32비트 숫자입니다. 예를 들어 255.255.255.0은 표준 서브넷 마스크입니다.
IPv4 네트워크에서 데이터 패킷을 올바른 네트워크와 네트워크 디바이스로 라우팅하려면, 라우팅 접두사가 필요합니다. 라우팅 접두사는 서브넷 마스크를 가져온 다음 IP 주소에 비트 AND를 적용하여 만듭니다.
서브넷 및 라우팅 접두사를 정의하는 더 일반적인 방법은 CIDR(클래스 없는 도메인 간 라우팅) 표기법을 사용하는 것입니다. CIDR은 서브넷에 할당할 비트 수로 IP 주소에 적용됩니다. IP 주소 끝에 CIDR 표기법을 사용하여 "/"를 추가하고 비트 수를 추가합니다. 예를 들어 198.51.100.0/24는 점으로 구분된 10진수 형식 서브넷 마스크 255.255.255.0을 사용하는 것과 같습니다. 198.51.100.0~198.51.100.255의 주소 범위를 제공합니다.
서브넷을 사용하면 하나의 네트워크에 여러 서브네트워크가 존재할 수 있습니다. 따라서 라우팅 성능을 향상할 수 있습니다. 서브넷을 계층적으로 정렬하여 라우팅 트리를 만들 수 있습니다.
특수 용도의 주소
각 클래스에는 사용할 수 있는 IP 주소 범위에 대한 제한이 있습니다. 다음 표는 자주 사용하는 주소 범위를 보여줍니다.
| 주소 범위 | 범위 | 설명 |
|---|---|---|
| 10.0.0.0~10.255.255.255 | 프라이빗 네트워크 | 프라이빗 네트워크 내의 로컬 통신에 사용합니다. |
| 127.0.0.0~127.255.255.255 | 호스트 | 루프백 주소에 사용합니다. |
| 172.16.0.0~172.31.255.255 | 프라이빗 네트워크 | 프라이빗 네트워크 내의 로컬 통신에 사용합니다. |
| 192.88.99.0~192.88.99.255 | 인터넷 | 예약됨 |
| 192.168.0.0~192.168.255.255 | 프라이빗 네트워크 | 프라이빗 네트워크 내의 로컬 통신에 사용합니다. |
| 255.255.255.255 | 서브넷 | "제한된 브로드캐스트" 대상 주소에 예약됩니다. |
IPv4 주소 공간 소모
IPv4가 도입된 후, 사용 가능한 IP 주소 풀이 예상보다 빨리 소모되고 있음이 명확해지고 있습니다. 예를 들어 지난 몇 년간 출시된 모바일 디바이스의 수를 생각해 보세요.
IP 주소 부족이라는 문제를 완화하고자 몇 가지 솔루션이 도입되었습니다. 대표적인 방법은 NAT(Network Address Translation), 네트워크 클래스와 CIDR입니다. 1990년대에는 IP 주소 공간의 수를 128비트로 늘리고자 IPv6를 개발했습니다. IPv6는 2006년에 상업적으로 출시되었습니다.
개인 IP 주소 지정
클래스 A, B 및 C에서는 프라이빗 네트워크용으로 별도 설정된 IP 주소 범위가 있습니다. 이러한 IP 주소는 인터넷을 통해 액세스할 수 없습니다. 모든 퍼블릭 라우터는 이러한 주소를 포함해 전송된 패킷을 무시합니다.
| 이름 | CIDR 블록 | 주소 범위 | 주소 수 | 클래스 설명 |
|---|---|---|---|---|
| 24비트 블록 | 10.0.0.0/8 | 10.0.0.0~10.255.255.255 | 16,777,216 | 단일 클래스 A |
| 20비트 블록 | 172.16.0.0/12 | 172.16.0.0~172.31.255.255 | 1,048,576 | 16 클래스 B 블록의 연속 범위 |
| 16비트 블록 | 192.168.0.0/16 | 192.168.0.0~192.168.255.255 | 65,536 | 256 클래스 C 블록의 연속 범위 |
프라이빗 네트워크의 네트워크 디바이스는 퍼블릭 네트워크의 디바이스와 통신할 수 없습니다. 통신은 라우팅 게이트웨이에서 NAT(Network Address Translation)을 통해서만 발생합니다.
서로 다른 지역에 있는 두 개의 프라이빗 네트워크를 연결하는 유일한 방법은 VPN(가상 사설망) 사용입니다. VPN은 각각의 프라이빗 네트워크 패킷을 캡슐화합니다. VPN은 패킷을 추가로 암호화한 다음 퍼블릭 네트워크를 통해 한쪽 프라이빗 네트워크에서 다른 프라이빗 네트워크로 전달합니다.
IPv6
인터넷 프로토콜 버전 6는 IP 표준의 가장 최신 버전입니다. IETF(Internet Engineering Task Force)는 IPV4 논리 주소 고갈 문제를 해결하기 위해 IPv6를 설계하고 개발했습니다. 결국 IPv4 표준을 대체하기 위한 것이었습니다. 2017년 7월 공식 인터넷 표준으로 채택되었습니다.
IPv6은 128비트 주소 공간을 사용하며 2개의128 개의 주소를 허용합니다. 이 크기는 IPv4보다 약 7.9x1028 배 더 높습니다.
IPv4와 IPv6은 상호 운용 가능하도록 설계되지 않았으며, 따라서 최신 IPv6 표준으로의 전환 속도가 느립니다.
IPv6는 다음과 같은 다양한 장점을 도입했습니다.
- 간소화된 네트워크 구성: IPv6에는 프로토콜에 기본 제공되는 주소 자동 구성이 있습니다. 예를 들어 라우터는 네트워크 접두사를 브로드캐스트하고, 네트워크 디바이스는 MAC 주소를 추가하여 고유한 IPv6 주소를 자체 할당할 수 있습니다.
- 보안: IPsec은 IPv6에 기본 제공됩니다.
- 새 서비스 지원: IPv6을 사용하면 NAT가 필요하지 않으므로 피어 투 피어 네트워크를 더 쉽게 만들 수 있습니다.
- 멀티캐스트 및 애니캐스트 기능: 멀티캐스트를 사용하면 일대다 방식으로 메시지를 브로드캐스트할 수 있습니다. 애니캐스트를 사용하면 단일 대상에 둘 이상의 엔드포인트 대상으로 가는 여러 라우팅 경로가 포함될 수 있습니다.
IPv6 주소 구조
IPv6는 IPv4와 구조가 다릅니다. 4개의 10진수 대신 hexadectet이라고 하는 4개의 16진수 그룹을 사용합니다. 각각의 hexadectet은 콜론으로 구분합니다. 전체 IPv6 주소는 2001:0db8:0000:0000:0000:8a2e:0370:7334 형식을 취합니다.
새 표준에서는 다음 규칙을 사용하여 주소를 간소화할 수 있습니다.
- 어떤 그룹에서든 하나 이상의 선행 0을 제거할 수 있어,
0042은(는)42이(가) 됩니다. - 0이 연속되는 부분을 주소에서 한 번만 사용할 수 있는 이중 콜론(
::)으로 대체합니다.
IPv6 예제의 약식 버전은 2001:db8::8a2e:370:7334입니다.
0000의 인스턴스가 모두 제거되었습니다.
디엔에스 (DNS)
DNS는 사람이 읽을 수 있는 도메인 이름 또는 URL을 사이트 또는 서비스를 호스팅하는 서버의 IP 주소로 변환하는 분산적 조회 서비스입니다. 전 세계에 분산되는 DNS의 특성은 인터넷의 핵심 구성 요소입니다. DNS는 1985년 처음 도입된 후부터 계속 사용되고 있습니다.
DNS 서버는 두 가지 용도로 사용합니다. 첫 번째는 최근 검색된 도메인 이름의 캐시를 유지하여 성능을 향상하고 네트워크 트래픽을 줄이는 것입니다. 두 번째는 모든 도메인에 대한 SOA(권한 시작) 역할을 하는 것입니다. 자체 캐시에 보관되지 않은 도메인 이름을 확인하려는 경우 가장 높은 수준인 점에서 시작됩니다. 그런 다음, SOA 역할을 하는 DNS 서버를 찾을 때까지 하위 도메인으로 내려갑니다. DNS 서버를 찾으면 도메인의 IP 주소를 자체 로컬 캐시에 저장합니다.
DNS에는 도메인과 관련되는 특정 레코드도 포함됩니다. 이러한 레코드에는 SOA, IP 주소 지정(A 및 AAAA), MX(SMTP 메일), NS(이름 서버) 및 CNAME(도메인 이름 별칭) 레코드가 있습니다.
Azure는 어떤 기능을 제공합니까?
여기서 설명하는 많은 개념은 기술적인 개념이지만, Azure는 네트워크 구성에 도움이 되는 도구를 사용하여 다양한 측면을 빌드하고 확장합니다.
Azure DNS 서비스
Azure DNS는 등록된 도메인 이름을 Azure 인프라를 사용하여 호스트하는 서비스입니다. Azure DNS를 사용하여 도메인을 관리할 수 있습니다. 일반 Azure 로그인 자격 증명을 사용하여 A, AAAA, CNAME, SOA, NS, MX와 같은 레코드를 관리할 수 있습니다.
Azure DNS에서 제공하는 주요 이점 중 하나는 A, AAAA 또는 CNAME 레코드를 사용할 수 있는 별칭 레코드입니다. 별칭을 사용하면 Azure 리소스에 트래픽을 라우팅할 수 있습니다.
Azure DNS는 도메인을 등록하고 구매해야 하는 도메인 등록 기관을 대체하지 않습니다.
Azure Virtual Network
Azure Virtual Network를 사용하면 클라우드에서 프라이빗 네트워크를 구축할 수 있습니다. Azure 가상 네트워크를 사용하면 다른 가상 네트워크 및 온-프레미스 네트워크와 통신할 수 있는 네트워크를 구축할 수 있습니다. 모두 네트워크를 클라우드로 확장하는 효율적인 방법입니다.
Azure 가상 네트워크를 사용하면 사용되는 주소 지정을 제어할 수 있습니다. 대부분의 가상 네트워크는 프라이빗 네트워크로 간주됩니다. 일반 네트워크를 이용할 때처럼 서브넷 지정을 사용하여 IP 주소 범위를 세그먼트화하고 해당 서브넷에 제공할 수 있습니다.
지식 점검
피드백
이 페이지가 도움이 되었나요?
No
이 항목에 대한 도움이 필요하세요?
Ask Learn을 사용하여 이 주제를 명확히 설명하거나 안내하고 싶으신가요?