PPT문서데이터통신과네트워킹_12장_v1.0.pptx

닫기

background image

background image

background image

SECTION

01

네트워크 분할

1. 서브넷 마스크의 특징

• 사물 인터넷 때문에 IP 주소는 빠른 속도로 고갈.

• 조직의 규모에 따라 C 클래스의 256개는 너무 작고, B 클래스의 65535개는 너무 큼 -> 이러한 문제를 

해결하는 방법은 하나의 클래스를 서브넷

(하부넷)으로 잘라 여러 개로 나누어 사용하는 것 -> 

서브넷으로 분할해서 사용할 때 서브넷 마스크가 중요한 역할

.

• 서브넷 마스크에서 1로 표시된 부분은 네트워크 주소, 0으로 표시된 부분은 호스트 주소를 의미.


background image

SECTION

01

네트워크 분할

• 서브넷 마스크의 특성상 앞에서부터 1이 연달아 나타남.

• IP 주소 옆에 1의 개수를 써주면 서브넷 마스크를 간단하게 표현 할 수 있음.

• C클래스의 서브넷 마스크는 1이 24개이다. IP 주소 228.152.23.8이 C 클래스라면 

228.152.23.8/24로 표시 -> 서브넷 마스크의 1이 앞에서부터 24개 있다는 의미.

• B클래스의 서브넷 마스크는 /16, A클래스의 서브넷 마스크는 /8


background image

SECTION

2. 네트워크 분할 방법

01

네트워크 분할

• C 클래스는 원래 256개의 호스트를 가질 수 있는 네트워크 -> 228.255.75로 시작하는 C 클래스를 A 

회사와 

B 회사에게 반씩 나누어 준다고 가정.

• A 회사는 IP 주소의 마지막 자리인 4번째 자리(호스트 주소)는 이진수로 00000000에서 00000001, 

00000010 .... 01111111까지 사용.

• 호스트 주소의 맨 앞 비트가 0으로 시작하는 주소가 A 회사에 속하는 주소. 십진수로는 228.255.75.0

에서 

228.255.75.127까지의 주소이며 128개의 호스트 주소를 사용할 수 있음. 


background image

SECTION

01

네트워크 분할

• B 회사는 2진수 10000000에서 10000001, 10000010 .... 11111111까지의 호스트 주소를 사용. 

• 호스트 주소의 맨 앞 비트가 1로 시작하는 주소가 B 회사에 속하는 주소이며 전체 128개의 호스트 

주소를 사용

. 십진수로는 228.255.75.128에서 228.255.75.256까지의 주소.

• A 회사의 호스트 주소는 2진수로 00000000에서 00000001, 00000010 .... 01111111와 같이 맨 

앞의 첫 비트가 

0으로 시작, B 회사의 호스트 주소는 2진수로 10000000에서 10000001, 

10000010 .... 11111111와 같이 맨 앞의 첫 비트가 1로 시작.


background image

SECTION

01

네트워크 분할

• 2개로 분할시 서브넷 마스크는 2진수로 11111111 11111111 11111111 10000000이 되어야 함

.

• 4번째 바이트의 서브넷 마스크가 00000000이 아닌 10000000으로 변경됨 -> 이는 4번째 바이트의 

맨 처음 비트도 네트워크 주소라는 뜻

• 2진수 10000000를 10진수로 바꾸면 128 -> 따라서 C 클래스를 2개의 서브넷으로 나눈 경우 서브넷 

마스크는 

255.255.255.128이 됨. 간단하게 표시하면 /25가 됨.


background image

SECTION

3. 서브넷 분할 원리

01

네트워크 분할

• 네트워크 주소를 나타내는 1의 개수가 늘어날 때 마다 2의 지수승으로 네트워크는 분할.

• C클래스를 2개의 서브넷으로 분할하면 서브넷 마스크는 11111111 11111111 11111111 

10000000이 됨. 10진수로 255.255.255.128이며 /25라 표시.

• C 클래스 네트워크를 4개로 분할: 서브넷 마스크가 255.255.255.192. 이는 /26으로 표시.


background image

SECTION

01

네트워크 분할

• B 클래스의 서브넷 마스크는 255.255.0.0이며 /16.

• B 클래스를 2개로 나누면 서브넷 마스크는 255.255.128.0이며 /17 -> 1개의 서브넷이 가질 수 있는 

최대 호스트 수는 

32768개.

• 서브넷 마스크가 255.255.224.0(/19)인 네트워크는 B 클래스를 8개로 분할한 것 -> 1개의 서브넷이 

가질 수 있는 최대 호스트 개수는 

8192개.


background image

SECTION

01

네트워크 분할

• 네트워크를 분할 할 때 한 번에는 2의 배수로만 분할 할 수 있다고 해서 네트워크가 짝수로만 만들어지는 

것은 아님

• 네트워크에서 분할을 여러 번 사용하면 홀수개의 서브넷도 만들 수 있음. 


background image

SECTION

1. 주소 변환의 필요성

02

주소 변환 관련 프로토콜

• 228.255.75.1에서 228.255.75.4까지의 호스트가 있는 어떤 C 클래스 네트워크를 가정.

• 228.255.75.2가 228.255.75.3에게 패킷을 보내려면 해당 호스트의 MAC 주소가 필요.

• IP 주소는 인터넷에서 목적지 LAN까지 도달하기 위해 필요한 주소 -> 도착한 LAN의 안쪽에서 

호스트를 찾는다던가

, IP 주소로 LAN 내부에서 통신을 하는 경우에는 MAC 주소가 필요.


background image

SECTION

2. 주소 변환 프로토콜 - ARP

02

주소 변환 관련 프로토콜

• 주소변환 서버 없이도 IP 주소를 MAC 주소로 바꾸는 프로토콜이 ARPAddress Resolution Protocol

• 특정 IP의 MAC 주소를 알고 싶은 호스트는 다른 호스트들에서 질문 -> 해당 질문은 LAN 전체에 

브로트케스팅 

-> 질문을 받은 호스트 중 해당 IP를 가진 노드는 자신의 MAC 주소를 알려줌.

• ARP의 성능을 높이기 위하여 각 호스트들은 획득한 ARP 정보를 캐시cache에 보관.


background image

SECTION

02

주소 변환 관련 프로토콜

• ARP가 가지고 있는 캐시 데이터를 보고 싶다면, 윈도우 명령 프롬프트(cmd)에서 arp -a라고 검색.

• 해당 컴퓨터는 IP 주소 192.168.0.1, 192.168.0.5, 192.168.0.6에 대한 MAC 주소를 캐시에 저장. 

• 192.168.0.255는 브로드캐스트 주소이며, 물리주소는 항상 ff-ff-ff-ff-ff-ff로 나타남.


background image

SECTION

02

주소 변환 관련 프로토콜

• 기존의 컴퓨터가 사용하던 IP를 228.255.75.7로 바꿈 경우 -> IP 충돌이 발생한 경우, 충돌을 일으킨 

양쪽의 컴퓨터에 “

IP 충돌이 발생하였습니다.”와 같은 경고 메시지가 나타남.

• 충돌이 발생한 경우, 해당 IP를 먼저 사용하고 있던 호스트에게 우선권이 주어짐.

• 충돌이 없다는 것을 확인한 이후에 자신의 IP 주소와 MAC 주소를 전체에게 브로드케스트 함 -> 이때 

사용하는 

ARP를 Gratuitous ARP, 약자로 GARP라 부름. 

• GARP는 응답이 필요없는 ARP.


background image

SECTION

3. 역주소 변환 프로토콜 – RARP 와 BOOTP

02

주소 변환 관련 프로토콜

• 연산능력이나 저장장치가 없는 더미dummy 터미널도 IP 주소가 필요.

• 이런 단말기가 IP 주소를 얻기 위해 사용하는 프로토콜이 RARP이며, Reverse ARP의 약자.

• RARP는 MAC 주소로부터 IP 주소를 얻는 프로토콜.


background image

SECTION

02

주소 변환 관련 프로토콜

• RARP의 단점은 브로드케스트 메시지가 LAN에만 전파된다는 것

• RARP는 LAN에서만 사용할 수 있는 프로토콜이기 때문에 라우터를 넘어서 메시지를 전송할 수 없음.

• 라우터를 넘어서 주소변환을 할 수 있도록 만든 것이 부트스트랩 프로토콜, BOOTPbootstrap protocol

• BOOTP는 UDP라고 불리는 전송계층의 프로토콜을 사용한다. 그래서 라우터를 넘어서 메시지가 

전달될 수 있음


background image

SECTION

4. 유동 호스트 설정 프로토콜 - DHCP

02

주소 변환 관련 프로토콜

• 고정 IP 방식의 문제: 모든 호스트의 IP 주소와 관련 값을 일일이 수동으로 설정해야 한다는 것과 IP 주소 

관리

.

• 유동 IP 방식에서는 컴퓨터가 부팅할 때 IP 주소, 서브넷 마스크, 게이트웨이, DNS 주소를 자동으로 

설정 

-> 이때 사용하는 프로토콜이 DHCPDynamic Host Configuration Protocol

• DHCP의 작동 방식은 BOOTP와 유사 -> 메시지를 전체에게 브로드케스트 하면 DHCP 서버가 

사용하지 않는 주소와 서브넷 마스크

, 게이트웨이 주소, DNS 주소를 해당 컴퓨터에게 전달.


background image

SECTION

02

주소 변환 관련 프로토콜

• 주소관련 프로토콜의 특징 요약


background image

SECTION

1. 네트워크 관리 프로토콜

03

기타 네트워크 계층 프로토콜

• 감시와 메시지 전송에 사용되는 프로토콜이 ICMPInternet Control Message Protocol

• 다음 표는 ICMP의 주요 메시지 타입과 의미를 요약한 것.


background image

SECTION

03

기타 네트워크 계층 프로토콜

• ICMP를 직접 경험할 수 있는 방법은 ping을 사용하는 것 -> ping 명령어 다음에 IP 주소를 쓰면 해당 

호스트로 패킷을 보내고

, 해당 호스트는 ping에 대한 답신replay 메시지를 보냄.

• ping 명령어에서 호스트까지 메시지를 보내는 것이 ICMP 8번 Echo request -> Echo request를 

받은 호스트는 이에 대한 응답으로 

ICMP 0번 Echo replay를 보냄.

• ping을 사용하면 해당 호스트가 살아있는지 혹은 죽었는지를 알 수 있을 뿐 아니라, 서버까지 패킷이 

오고가는데 걸리는 시간도 알 수 있음


background image

SECTION

03

기타 네트워크 계층 프로토콜

• ping과 유사하지만 tracert는 해당 호스트까지 가는 경로를 추적하는 명령어.

• tracert 명령은 패킷이 어떤 라우터를 거쳐서 목적지 까지 도달하는지에 대한 경로를 알려줌 -> 이때 

사용하는 것이 

ICMP 30번 trace route.


background image

SECTION

03

기타 네트워크 계층 프로토콜

• ICMP는 다양한 곳에 사용. 

• 3번 destination unreachable은 패킷이 목적지 주소를 찾지 못할 때 발생하는 메시지. 

• 11번 time exceeded는 패킷의 TTL이 0이 되는 경우 발생하는 메시지. IP 헤더 분석에서 

설명하였지만

, TTL이 0이 된 패킷은 폐기됨. 따라서 11번 time exceeded 메시지를 받았다는 

것은 패킷이 루프를 돌거나 

TTL 값이 너무 작게 설정 되어 있다는 의미. 

• 5번의 redirect는 패킷의 경로가 잘못 설정 되었다고 판단될 때 보내는 메시지. 패킷을 보낸 

호스트의 경로 설정에 문제가 있다고 판단되는 경우에 발생하는 메시지


background image

SECTION

03

기타 네트워크 계층 프로토콜

• 멀티케스팅에 사용되는 프로토콜이 IGMPInternet Group Message Protocol

• 각 채널에는 해당 채널을 시청중인 호스트의 주소가 그룹으로 묶여 있음 -> 채널을 시청하려는 호스트는 

IGMP join 메시지를 이용하여 채널 그룹에 등록 -> A는 IGMP join 7번 채널, B는 IGMP join 8번 

채널

• 그러다가 A가 7번에서 8번 채널로 옮길 때, IGMP leave 메시지를 사용하여 7번 채널 그룹에서 빠지

, IGMP join 8번 채널을 사용하여 8번 채널 그룹에 다시 등록. 


background image

SECTION

내부 라우팅 

- OSPF

03

기타 네트워크 계층 프로토콜

• OSPF는 Open Shortest Path First의 약자로 최단경로 프로토콜이며 내부 라우팅 프로토콜 -> 

OSPF가 연결상태 라우팅 알고리즘을 기반으로 만들어 짐.

• OSPF의 작동방식은 앞의 연결상태 라우팅 알고리즘에서 자세히 설명하였음.

• 다음 표는 OSFP가 사용하는 메시지 타입과 설명.


background image

SECTION

03

기타 네트워크 계층 프로토콜

• 연결상태 라우팅 알고리즘의 초기에는 이웃 라우터의 정보를 수집 -> 이때 사용하는 메시지가 Hello.

• 이웃 라우터의 정보가 모이면, 라우터들은 주기적으로 자신의 테이블을 전체 라우터들에게 플러딩 ->

이때 사용하는 메시지가 

Link state update.

• Link state update를 받으면 이에 대한 응답을 해주어야 하는데 이것이 Link state ACK. 

• 많은 수의 라우터와 ACK를 주고받기 때문에 연결상태 라우팅 알고리즘의 테이블에는 SEND 플래그와 

ACK 플래그를 유지 -> 이는 받은 메시지와 보낸 메시지를 기억 했다가 못 보낸 메시지가 있으면 빠른 

시간안에 응답하기 위해서임

.

• Database description 메시지는 링크상태 테이블의 수를 알려달라는 메시지. 테이블의 수를 

비교하여 자기가 가지고 테이블의 정보와 같은지 혹은 다른지를 확인

. 만약 자신의 테이블과 다르다면 

Link state request를 보내어 다른 라우터의 테이블을 받아 비교. 


background image

SECTION

03

기타 네트워크 계층 프로토콜

• OSFP의 장점은 전체 네트워크 구조를 가지고 있어서 네트워크 상태 변화에 빠르게 적응 할 수 있다는 

것과 거리벡터 라우팅과 같이 무한루프가 발생하지 않는다는 것

• OSFP의 단점은 최단경로 알고리즘을 사용하기 때문에 CPU 소모가 많고, 전체 네트워크 구조를 가지고 

있기 때문에 메모리를 많이 사용한다는 것

.


background image

SECTION

외부 라우팅 

- BGP

03

기타 네트워크 계층 프로토콜

• BGP는 Border Gateway Protocol의 약자로 외부 라우팅에 사용되는 프로토콜. 

• 외부 라우팅에서는 시간(거리)정보는 중요하지 않음 -> 그 보다는 어느 네트워크에 연결 가능한지가 

가장 중요한 문제 

-> 그래서 단순한 BGP를 사용.

• BGP는 거리벡터 라우팅 알고리즘과 유사하지만 다른 점이 있음. 

• 시간(거리)에 대한 처리는 이루어지지 않음. 오직 통신 가능성만을 고려함. 

• 라우팅 정보에는 목적지 라우터 정보만 유지함.

• 무한 루프의 문제는 다른 라우터로부터 잘못된 거리 정보를 받을 때 발생 -> BGP가 시간(거리)를 

계산하지 않기 때문에 거리벡터 라우팅의 문제였던 무한 루프

(무한 숫자 세기)의 문제는 발생하지 않음. 

• BGP에서는 해당 네트워크가 살아 있는지 혹은 죽었는지에 대한 값만을 받기 때문에 특정 라우터로부터 

응답이 없는 경우

, 즉시 다른 경로를 찾음.