Session 20. TCP/IP
- TCP/IP 계층 구조
- 각종 프로토콜에 대한 이해
- 포트의 의미
네트워크 계층 서비스
- 라우팅(routing)과 포워딩(forwarding)
- 둘은 서로 직접적으로 연관되어 있음
라우팅(routing)
- 패킷이 근원지에서 목적지까지 갈 수 있도록 경로를 라우팅함
- 물리적인 네트워크는 네트워크(LAN과 WAN)와 네트워크를 연결하는 라우터의 조합
포워딩(forwarding)
- 라우팅 프로토콜을 실행할 때 라우터상의 하나의 인터페이스에 패킷이 도착했을 때 라우터가 취하는 행동
- 이 행동을 취하기 위해 라우터가 일반적으로 사용하는 의사결정 테이블을 포워딩 테이블(forwarding table) 혹은 라우팅 테이블(routing table)이라고 함
IPv4 주소
1) 클래스 기반의 주소 지정(classful addressing)
소규모 및 대규모 네트워크 지원
세 가지의 고정된 접두사(n=8, n=16, n=24)로 설계
전체 주소 공간은 5개의 클래스로 구분 --> 클래스 기반 주소지정
클래스 | 설명 |
A 클래스 | 첫 번째 비트 0 첫 바이트의 나머지 7비트가 네트워크 주소 하위 세 바이트는 호스트 주소 (2^24)-2=16,777,214개의 호스트 수용 가능 큰 규모의 호스트를 갖는 기관에서 사용 |
B 클래스 | 처음 두 비트의 값 10 첫 바이트의 나머지 6비트와 두 번째 바이트가 네트워크 주소 마지막 두 바이트는 호스트 주소 (2^16)-2 개의 호스트 수용 가능 |
C 클래스 | 처음 세 비트의 값 110 세 번째 바이트까지가 네트워크 주소 마지막 한 바이트는 호스트 주소 네트워크마다 254개까지 호스트 수용 가능 작은 규모의 네트워크에서 사용 |
D 클래스 | 처음 네 비트의 값이 1110 네트워크 주소와 호스트 주소의 구분이 X 전체 주소가 멀티캐스트용으로 사용 정보, 멀티미디어 데이터 그리고 리얼타임 비디오 등을 보내는 데 사용 |
E 클래스 | 처음 네 비트의 값 1111 추후 사용을 위해 예약된 주소 |
주소 고갈
- 클래스 기반의 주소가 더 이상 사용되지 않는 이유
- 주소가 적절히 분배되지 않았기 때문에 인터넷에 연결하려는 기관이나 개인이 사용할 주소가 더 이상 남아 있지 않게 되는 문제 직면
서브네팅(subnetting)과 슈퍼네팅(supernetting)
- 주소 고갈을 완화하기 위한 기술
- 서브넷 주소 지정 : 기관의 IP 네트워크 서브넷으로 분리하여 IP 주소 해석 방법에 하나의 계층을 추가
- 기존 클래스 단위 주소 지정 방법의 많은 문제 해결했지만 주소 지정, 라우팅, 일부 TCP/IP 프로토콜이 이를 지원하기 위해 수정되도록 함
2) 클래스 없는 주소 지정
- 주소 고갈 문제를 해결하기 위하여 클래스 권한 제거
- 장기적인 관점에서 더 큰 주소 공간을 확보하기 위해 IP 패킷 형식의 변화가 필요한 IP 주소 길이 증가가 필요하였음
- 단기적인 관점에서는 클래스 없는 주소 방식의 IPv4 주소가 사용됨
[참고] CIDR(Classless Inter-Domain Routing) 장점
- 기존의 클래스 A, B, C 네크워크 주소의 개념을 무시해 IPv4의 주소공간을 효율적으로 할당
- ISP 는 자신이 할당받은 주소 공간 중 client 가 요구하는 양만큼만 잘라서 공급이 가능하여 주소 공간의 낭비를 막음
- 인터넷 라우팅 테이블의 비대화를 막음
- 인터넷을 여러 개의 addressing domain으로 나눔으로써 라우팅 정보량을 줄임
- 한 도메인 내에서는 그 도메인 내의 모든 라우팅 정보가 공유됨
접두사 길이 : 슬래시 표기법 (CIDR 표기법)
- CIDR 에는 주소 클래스가 없기 때문에 주소만으로 네트워크 ID의 크기를 파악 불가능
- 접두사(네트워크 ID)의 길이를 주소 뒤의 슬래시 다음에 표시
3) VLSM(Variable Length Subnet Mask, 가변 길이 서브넷 마스킹)
- 서브네팅을 여러 번 반복하여 네트워크를 크기가 다른 여러 서브 네트워크 계층으로 구분하는 기법
- 기관은 네트워크의 실제 요구 사항에 맞게 서브넷의 크기를 조정 가능
- IP를 효율적으로 할당하여 활용하기 위한 방법
4) 특수 주소 (5개)
- 디스-호스트(this-host) 주소
- 제한된 브로드캐스트 주소
- 루프백 주소
- 사설 주소
- 멀티캐스트 주소
디스-호스트 주소
- 0.0.0.0/32의 주소
- 호스트가 IP 데이터그램을 보내려고 하지만 근원지 주소인 자신의 주소를 모를 때 사용
제한된 브로드캐스트 주소 (limited-broadcast address)
- 255.255.255.255./32의 주소
- 호스트나 라우터가 네트워크 상의 모든 장치로 데이터그램을 보낼 때 사용
- 네트워크상의 라우터가 이런 패킷을 차단하기 때문에 네트워크 외부로 패킷을 보낼 수 없음
직접적 브로드캐스트 | 라우터가 네트워크의 모든 호스트로 패킷을 보낼 때 사용되는 주소 |
제한저 브로드캐스트 | 네트워크에 있는 모든 호스트로 패킷을 보낼 때 사용되는 주소 수신지 주소로만 사용 가능 제한적 브로드캐스트 패킷을 수신한 라우터는 다른 네트워크로 전달되지 않고 폐기 |
루프백 주소
- 127.0.0.0/8의 블록
- 해당 주소를 가진 패킷은 호스트를 벗어나지 않고 호스트에 남게 됨
- 블록 내의 주소는 소프트웨어의 테스트 목적으로 사용
- 127.0.0.1 은 테스트에 가장 많이 쓰이는 주소
사설 주소
- RFC 1918은 사설 주소에만 사용할 수 있는, 라우팅이 불가능한 특수 주소 집합을 정의
- 이 주소들은 공중 인터넷에 존재 X
- 10.0.0.0/8 || 172.16.0.0/12 || 192.168.0.0/16 로 지정
클래스 | IP 주소 블록 | 주소 범위 |
A class | 24비트 블록 | 10.0.0.0 - 10.255.255.255 |
B class | 20비트 블록 | 172.16.0.0 - 172.31.255.255 |
C class | 16비트 블록 | 192.168.0.0 - 192.168.255.255 |
[참고] 네트워크 트래픽 분석기
네트워크에서 유니캐스트, 브로드캐스트 등의 비율을 알아보는 장비
네트워크 계층 프로토콜
인터넷 프로토콜(IP)
- IPv4 는 비신뢰적이고 비연결형인 데이터그램 프로토콜로 최선형 전송 서비스(best-effort delivery service)이다.
- 신뢰성이 중요할 경우 IPv4는 TCP 처럼 신뢰성 있는 전송 계층 프로토콜과 함께 사용해야 함
- 모든 TCP/UDP, ICMP, IGMP 데이터는 IP 데이터 그램을 사용하여 전송
[참고] 최선형 전송
IPv4 패킷이 훼손되거나 손실, 순서에 맞지 않게 도착, 지연되어 도착 그리고 네트워크에 혼잡을 발생시킬 수 있는 것
[참고] IGMP(Internet Group Managerment Protocol)
로컬 네트워크 상에서 라우터와 호스트 간의 멀티캐스트 환경을 제공하기 위해 그룹 멤버십을 구성하거나, 그룹 관리를 위한 프로토콜
[참고] 데이터그램(datagram)
패킷 교환망에서 취급되는 패킷의 일종
다른 패킷과는 독립으로 취급
발신 단말에서 수신 단말에 이르는 경로를 결정하기 위한 정보를 내부에 포함하는 패킷
IPv4 데이터그램 형식
- IP가 사용하는 패킷
- 가변길이의 패킷으로 헤더 + 페이로드(데이터) 로 구성
- 일부 메시지 포맷과 달리 페이로드 다음에 푸터(footer)가 덧붙지 않음
헤더(header) | 20-60 바이트 길이 주소와 제어필드 포함 라우팅과 전송에 필수적인 정보 소유 TCP/IP 에서는 4바이트 부분으로 표현하는 것이 일반적 |
페이로드(payload) | 전송할 실제 데이터 포함 |
IP 프로토콜의 특징
- 비신뢰성(Unreliable)
- 비접속성(Connectionless)
- 주소 지정
- 경로 설정
IP 프로토콜의 주요 필드
버전(Version) | 프로토콜의 버전(IPv4) |
헤더 길이(Header Length) | 선택사항(Option)을 포함한 헤더의 길이 |
Type-Of-Service(TOS) | 우선권(Precedence)필드 (3bit) + TOS 필드(4bit) + 예약 필드(1bit) |
전체 길이 (Total Length) | 전체 길이를 바이트로 표현 |
Time-to-Live(TTL) | 패킷이 경유할 수 있는 최대 홉수 의미 |
식별자(identification) | 호스트가 보낸 각 데이터그램을 유일하게 식별 |
플래그(Flag) | 세 개의 비트로 단편화 관련 정보 표시 |
ARP(Address Resolution Protocol)
- 호스트는 ARP 요청 메시지를 보낼 때 자신의 IP 주소, 자신의 물리주소 그리고 수신자측 IP 주소는 알고 있지만 수신자측 물리주소는 모르기 떄문에 물리 계층 브로드캐스트를 통해 모든 호스트에게 패킷을 전송한다.
- ARP 요청 메시지를 수신한 호스트 또는 라우터는 수신 IP 주소와 자신의 IP 주소를 검사하여 자신에 대해 물리주소를 요구하는 경우라면 ARP 응답 메시지를 전송한다.
- 각 시스템은 ARP Cache 가 있고 여기에 이 정보를 보관한다. (단, 일정 시간 경과 후 삭제)
ARP cache table
- ARP 요청을 통해 알아낸 MAC 정보는 OS에 따라 다르지만 통상 1~2분 정도 메모리에 저장
- arp -a 명령을 통해 ARP table 확인 가능
- dynamic 또는 static 으로 지정
dynamic | arp에 의해 동적으로 설정된 것으로 일정 시간동안 유지 됨 |
static | 관리자에 의해 정적으로 설정된 것으로 관리자가 삭제하거나 시스템이 종료하기 전까지 지속적으로 유지됨 |
[참고] 물리주소
- 각 NIC는 카드상의 ROM(read-only-memory) 칩에 생산자가 프로그램해 놓은 고유한 물리적 주소를 가짐
- 미디어 접근 통제 (MAC, Media Access Control) 주소라고도 부름
- 네트워크 계층은 IP 주소를 이해하고 작업하며, 데이터 링크 계층은 물리적 주소를 이해하고 작업
ARP 메시지 종류
ARP 요청 메시지 | 특정 IP 주소에 대한 물리 주소를 요구 호스트는 ARP 요청 메시지를 보낼 때 수신자측 물리주소를 모르기 때문에 브로드캐스르로 전송 |
ARP 응답 메시지 | 물리 주소 정보를 알림(유니캐스트로 전송) ARP 요청 메시지를 수신한 호스트 또는 라우터는 자신의 물리 주소를 요구하는 경우 ARP 응답 메시지 전송 호스트가 라우터를 넘어서 다른 네트워크에 있으면 라우터가 해당 호스트를 대신하여 응답 메시지 전송 |
RARP(Reverse Address Resolution Protocol)
- 물리주소에 해당하는 IP 주소를 얻고자 할 때 사용 (ARP 는 IP 주소에대한 물리주소 얻고자하는 경우에 사용)
- 디스크와 같은 저장장치가 없는 호스트에서 주로 사용
- RARP 응답은 일반적으로 RARP 서버에서 생성
- 자신의 MAC 정보를 담고 있는 RARP 요청(Request) 메시지를 만들어서 브로드캐스트함
- RARP 서버는 요청자의 IP 주소 정보를 담은 RARP 응답(Replay) 메시지를 만들어 요청자의 MAC 주소로 유니캐스트 방식으로 응답
ARP | IP 주소를 알고 하드웨어 주소(MAC 주소)를 찾기 위해 브로드캐스트 |
RARP | 하드웨어 주소를 알고 IP 주소를 찾기 위해 브로드캐스트 |
GARP(Gratuitous ARP)
- Gratuitous : 불필요한
- 별도의 프로토콜이 아닌, Sender IP와 Target IP 가 동일한 ARP 요청
- 장비가 ARP 요청 브로드캐스트를 통해 다른 장비에게 네트워크에 있는 자신의 존재를 알리는 목적으로 사용되는 패킷
- 이 패킷을 수신한 장비는 자신의 ARP Cache에 해당 정보가 있다면 이를 갱신
- 자신의 MAC 정보을 동일 네트워크상의 다른 장비들에게 알려 ARP Cache를 갱신하도록 하는 목적
GARP 목적
IP 충돌 감지 | IP 충돌 여부를 GARP 를 통해 검색 자신과 동일한 IP가 설정되어 있는 호스트가 있다면 해당 호스트로부터 ARP 응답(Reply)이 오기 때문에 충돌 여부 확인 가능 일반적으로 호스트 IP 를 변경하거나 재부팅 시에 GARP 패킷 생성 |
상대방의 ARP Cache 정보 갱신 | GARP 메시지를 수신한 쪽에서는 자신의 ARP Cache에 Sender IP 갱신 이 부분이 취약점 될 가능성 존재 상대방을 인증하지 않고 Cache 정보를 갱신하여 악의적인 목적의 공격자에 의해 MAC 정보가 위, 변조가 가능함 |
ICMPv4(Internet Control Message Protocol version 4)
- IP 프로토콜은 호스트와의 관리 질의를 위한 메커니즘 없음
- 호스트는 라우터나 다른 호스트가 동작하고 있는지 알 필요 존재
- 네트워크 관리자는 다른 호스트나 라우터로부터 정보를 획득할 필요 존재
- 이를 보완하기 위한 설계
- ICMP는 IP 프로토콜의 동반 프로토콜
ICMPv4 메시지
오류보고 메시지와 질의 메시지로 나뉨
오류보고 메시지 | 라우터(목적지)나 호스트가 IP 패킷을 처리하는 도중에 탐지하는 문제 보고 |
질의 메시지 | 쌍으로 생성 호스트나 네트워크 관리자가 라우터나 다른 호스트로부터 특정 정보를 획득하기 위해 사용 |
첫 번째 필드 | ICMP 유형 (메시지 유형) |
코드 필드 | 특정 메시지 유형의 이유 지정 |
마지막 공통 필드 | 검사합 필드 |
헤더의 나머지 부분 | 각 메시지별로 다름 |
ICMPv4 오류 보고 메시지
- IP는 신뢰성 없는 프로토콜이기 때문에 IP 데이터그램의 프로세싱 동안 발생하는 오류를 보고
- 오류를 수정하는 것이 아니라 단순 보고
- 오류 수정은 상위 계층 프로토콜에 맡김
- 오류 메시지는 언제나 최초의 근원지에 보내짐 (데이터그램으로부터 알 수 있는 경로에 대한 정보는 근원지와 목적지 IP 이기 때문)
ICMPv4 오류 보고 메시지에 대해 중요한 점
- 어떠한 ICMP 오류 메시지도 ICMP 오류 메시지를 운반하는 데이터그램의 응답으로 생성되지 않는다.
- 어떠한 ICMP 오류 메시지도 처음 단편이 아닌 단편 데이터 그램을 위해서 생성되지 않는다.
- 어떠한 ICMP 오류 메시지도 멀티캐스트 주소를 가진 데이터그램을 위해서 생성되지 않는다.
- 어떠한 ICMP 오류 메시지도 127.0.0.0 혹은 0.0.0.0과 같은 특수한 주소를 데이터그램을 위해서 생성되지 않는다.
Type3 | 목적지 도달 불가 (Destination Unreachable) |
가장 널리 사용되는 오류 메시지 왜 데이터그램이 최종 목적지에 도착하지 못하였는지에 대한 오류 메시지의 종류를 정의하기 위해 0부터 15까지의 다른 코드 사용 |
|
Type4 | 근원지 억제 (Source Quench) |
송신자에게 네트워크에 충돌이 발생해서 데이터그램이 폐기되었음을 알리는 메시지 이 메시지를 전달받은 근원지는 데이터그램을 송신하는 과정을 천천히(또는 억제) 수행 IP 프로토콜의 혼잡제어 메커니즘을 추가 |
|
Type5 | 재지정 메시지 (Redirection) |
발신자가 메시지를 전송하기 위해 잘못된 라우터를 사용할 때 사용 라우터는 적절한 라우터에게 메시지를 전달하도록 재지정되지만, 라우터는 발신자에게 향후 디폴트 라우터로 변경해야 한다고 알림 메시지 안에 디폴트 라우터의 IP 주소가 포함 |
|
Type11 | 시간 경과 메시지 (Time Exceeded) |
타임 아웃이 발생하여 IP 패킷이 폐기되었음을 알리는 메시지 타임 아웃 사유는 Code를 통해 알 수 있음 Code 0 (Time To Live in Transit) : IP 패킷이 최종 목적지에 도달하기 전에 TTL 값이 0이 되어 해당 패킷이 폐기 되엇음을 알리는 메시지 Code 1 (Fragment reassembly time exceeded) : IP 패킷 재조합 과정에서 타임 아웃이 발생하여 해당 IP 데이터그램이 모두 폐기되었음을 알리는 메시지 일반적으로 IP 데이터그램의 일부 단편이 전송과정에서 손실된 경우 재조합에 실패하여 발생 |
|
Type12 | 매개변수 문제 (Parameter Problem) |
데이터그램의 헤더에 문제가 있거나 (코드0) 어떤 옵션이 없거나 옵셤의 의미를 알 수 없는 경우(코드1)에 전송될 수 있음 |
대표적인 ICMP 메시지
ICMP | 메시지 기능 |
Echo Request | 원하는 호스트로의 IP 연결을 확인하기 위해 사용되는 간단한 문제 해결 메시지 |
Echo Reply | ICMP Echo Request에 대한 응답 메시지 |
Redirect | 데이터를 보낸 호스트에게 목적 IP 주소에 대한 좀 더 적합한 경로가 있음을 알리기 위해 라우터가 보내는 메시지 |
Source Quench | 데이터를 보낸 호스트에게 IP 데이터그램이 라우터의 집중 현상에 의해 손실되고 있음을 알리기 위해 라우터가 보내는 메시지 데이터를 보내는 호스트는 전송률을 낮춤 ICMP 에서 선택적 메시지이며 대부분은 구현하지 않음 |
Destination Unreachable | 라우터나 목적 호스트에 의해 보내지며 데이터그램이 전달되지 못한다는 것을 데이터를 보낸 호스트에 알려줌 |
ICMPv4 질의 메시지
- 인터넷에서 호스트나 라우터가 활성화되었는지를 알아보거나, 두 장치 사이의 IP 데이터그램이 단방향 시간인지 아니면 왕복 시간인지 찾음
- 에코요청(Echo Request / Type 8) 메시지와 에코응답(Echo Reply, Type 0) 메시지의 쌍은 다른 호스트나 라우터가 활성화되었는지 여부를 테스트하기 위해 호스트나 라우터가 사용함
- 핑(Ping)과 트레이스루트(traceroute)와 같은 디버깅 도구에서 에코 요청과 에코 응답 메시지 쌍 확인 가능
IPv4 의 한계
- 전세계적으로 인터넷의 급격한 보급과 무선 인터넷, 인터넷 정보 가전기기 등의 IP 주소에 대한 수요가 증가하면서 IPv4(32비트. 43억개) 의 주소 체계로는 처리가 어렵다는 문제 대두
- IPv4구 조에 잠재한는 문제인 클래스 단위의 주소할당 방식은 쓰이지 않는 많은 IP 주소를 발생시켜 주소의 낭비 초래
IPv6의 등장
- 128비트 주소 길이를 사용하여 약 (2^128)개의 주소 생성 가능
- 보안문제, 라우팅 효율성 문제, QoS(Quality of Service) 보장, 무선 인터넷 지원과 같은 다양한 기능 제공이 가능해 인터넷 구현의 핵심적인 요소로 인식
- IPv6로의 전환은 단계적으로 진행 예정
- 현재 이동전화, 가전제품 등에 IPv6주소 도입이 추진 중
- IPv6을 지원하는 운영체제 및 응용프로그램이 개발 중
[참고] QoS (Quality of Service)
인터넷이나 네트워크상에서 전송률 및 에러율과 관련된 서비스 품질을 지칭하는 말
IPv6
- Scoped address를 사용하여 관리자가 파일 서버 또는 파일 및 프린트 공유를 위해 특정 주소를 제한할 수 있도록 함
- 프로토콜 스택에 통합된 IPsec을 이용하여 종단간 보안 전송과 인증 제공
- 보다 나은 유연성과 라우팅 능력을 가짐
- 시간에 민감한 전송을 위해 QOS 를 가능하게 함
- 관리를 보다 수월하게 만드는 자동 설정 기능을 제공
- 주소 공간을 확장 시키기위해 NAT(Network Address Translation)를 요구하지 않음
IPv6 특징
확장된 주소 공간 | 128비트 주소 체계를 사용하는 IPv6는 IPv4의 주소 문제를 해결할 수 있는 주소 공간을 가짐 IP 주소를 절약하기 위해 사용되는 NAT 과 같은 변환기술 불필요 주소할당 방식으로 기존의 비효율적인 클래스별 할당을 지양 유니캐스트, 애니캐스트, 멀티캐스트 주소 형태로 이루어짐 |
새로운 헤더 포멧 | IPv4에서 별로 사용되지 않았던 일부 헤더 필드를 삭제하고 확장 헤더를 도입하여 선택적인 사용 가능하게 하여 패킷을 중게하는 라우터의 부하를 줄임 헤더를 고정 길이로 변경 (시스템에서 헤더의 길이를 예측하기 용이해져 빠른 처리 가능) 패킷 단편화(fragmentation) 관련 필드가 삭제 (패킷을 보내기 이전에 전송에 적합한 패킷크기를 알아내는 경로 MTU 탐색 기능 추가) 체크섬(checksum) 필드 삭제 (이미 데이터링크 계층에서 체크섬이 계산이 행해지므로 삭제) |
향상된 서비스 지원 | 응용프로그램이 특정 서비스 품질(QoS)을 요구하는 경우, 응용프로그램에 의해 생성된 트래픽을 실시간 트래픽과 비실시간 트래픽으로 구분하는 것이 필요 트래픽을 효과적으로 분류할 수 있는 기능 제공 IPv6 헤더 내에 플로우 레이블 (Flow Lable) 필드 이용 |
보안 기능 | IPv4는 처음 설계 시 보안에 대한 규정을 하지 않아 IPSec 을 별도 설치해야 하는 부가적 기능 필요 IPv6에서는 프로토콜 내에 보안 관련 기능을 탑재하도록 설계 (즉, 인증절차, 데이터 무결성 보호, 메시지 발신지 확인기능 제공) IPv6의 표준 확장헤더를 통하여 네트워크 계층에서의 종단간 암호화 제공 --> 패킷 변조 방지 |
IPv4 vs IPv6
구분 | IPv4 | IPv6 |
주소 길이 | 32비트 | 128비트 |
표시 방법 | 8비트 4부분 10진수 표시 | 16비트 8부분 16진수로 표시 |
주소 개수 | 약 43억개 | 2^128 개 |
주소 할당 방식 | A,B,C,D 등의 클래스 단위 비순차 할당 | 네트워크 규모, 단말기수에 따라 순차할당 |
브로드캐스트 주소 | 있음 | 없음 (대신 로컬범위 내에서의 모든 노드에 대한 멀티캐스트 주소 사용) |
헤더 크기 | 가변 | 고정 |
QoS 제공 | 미흡 | 제공 |
보안 | IPSec 프로토콜 별도 설치 | IPSec 자체 지원 |
서비스 품질 | 제한적 품질 보장 (Type of Service에 의한 서비스 품질 일부 지원) |
확장된 품질 보장 (트래픽 클래스, 플로우 레이블에 의한 서비스 품질 지원) |
IPv6 주소 공간
- 2^128개의 주소 공간을 가짐
- IPv4 보다 2^96배 많은 것
- 오직 1/64주소 (거의2%) 만 사람에게 할당
유니캐스트 주소 (unicast address) |
단일 인터페이스(컴퓨터, 라우터)를 정의 유니캐스트로 전송된 패킷은 특정한 컴퓨터에게만 전달 |
애니캐스트 주소 (anycast address) |
단일 주소를 공유하는 컴퓨터의 집합으로 정의 애니캐스트로 결정된 패킷은 가장 가까이 있는 애니캐스트 그룹의 구성원에게만 전송 (가장 짧은 경로를 가지는) |
멀티캐스트 주소 (multicast address) |
컴퓨터의 그룹을 정의 그룹의 컴퓨터가 복사본을 수신 (애니캐스트는 패킷의 복사본이 그룹중 하나의 컴퓨터에만 전송) 제한된 버전에서도 브로드캐스트를 지원하지 않음 브로드캐스트를 멀티캐스트의 특수한 경우로 처리 |
[참고] IPv6 주소
IPv4에서 처럼 유니캐스트와 멀티캐스트 주소를 가지고 있음
브로드캐스트 주소 X
새로운 주소 유형인 애니캐스트 주소는 메시지를 그룹 중 어떤 한 멤버에게 전달하는데 사용됨
[참고] IPv4와 IPv6의 공존
IPv4를 한순간에 IPv6로 바꾸는 것은 사실상 불가능 하기 떄문에 한동안 공존해야 함
서로 다른 두 종류의 프로토콜을 사용하기 위한 연동 방법 필요
IPv4에서 IPv6로 변환
- 인터넷 상의 모든 시스템이 IPv4에서 IPv6으로 변환하기 위해서는 상당히 많은 시간이 소요
- IPv4와 IPv6 시스템 사이에 문제가 없도록 프로토콜 버전의 변경은 매끄럽게 진행되어야함
- 변환 기간 동안 호스트는 IPv4와 IPv6 2개의 주소를 사용할 필요 존재
- 변화 완료 시 IPv4 소멸
1) 이중 스택 (dual stack)
- 프로토콜이 변경되는 동안 모든 호스트가 이중 스택을 사용
- 모든 인터넷이 IPv6를 사용하기 전까지는 시스템은 IPv4와 IPv6를 지원해야 함
- 장기적으로 가장 추천되는 방식
2) 터널링 (tunneling)
- 어떤 프로토콜의 패킷을 다른 프로토콜의 패킷 안에 캡슐화하여 통신하는 것
- IPv6를 사용하는 두 호스트가 통신을 할 때 패킷이 IPv4를 사용하는 지역을 지나는 경우에 사용 가능한 방법
- 이 지역을 지나기 위해 패킷은 IPv4 주소가 필요
- 이 지역에 들어서면 IPv6 패킷은 IPv4 패킷으로 캡슐화되고 이 지역을 벗어날 때 역 캡슐화 됨
- 이는 마치 IPv6 패킷이 터널의 한쪽 끝으로 들어가서 다른 쪽으로 나오는 것처럼 보임
3) 헤더 변환(header translation)
- 인터넷의 대부분이 IPv6으로 변경되고 일부만이 IPv4를 사용할 때 필요한 방법
- 송신자는 IPv6를 사용하고 싶지만 수신자는 IPv4를 사용할 때, 수신자는 IPv4의 패킷을 수신해야 하기 떄문에 터널링은 사용할 수 없다. 이 경우에 헤더 변환을 통해 헤더의 형태를 완전히 변경해야 함
'정보보안기사' 카테고리의 다른 글
[정보 보안 기사] 20. TCP/IP (1) 물리 계층과 데이터 링크 계층 (0) | 2021.07.20 |
---|---|
[정보 보안 기사] 19. 네트워크 개요 (4) 기출지문 (0) | 2021.07.20 |
[정보 보안 기사] 19. 네트워크 개요 (3) TCP/IP 프로토콜 그룹 (0) | 2021.07.20 |
[정보 보안 기사] 19. 네트워크 개요 (2) OSI 7 계층 (0) | 2021.07.15 |
[정보 보안 기사] 19. 네트워크 개요 (1) 프로토콜 (0) | 2021.07.14 |