달력

5

« 2024/5 »

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
2008. 11. 11. 13:00

2-1. IP Address의 이해 Windows Networking2008. 11. 11. 13:00


네트워크 통신을 위해TCP/IP를 사용하는 모든 컴퓨터들은 IP Address를 가지고 있다. IP Address는 당신의 컴퓨터를 네트워크에서 유일하게 구분해 줄 수 있는 고유번호를 의미한다. 굳이 TCP/IP를 전혀 모르더라도 집에서 전화, ADSL, 케이블모뎀 등을 통해서 인터넷에 접근한다거나,  친구에게 E-mail을 전송하고, PC방에서 어디 있는지 모르는 누군가와 채팅을 하거나, 네트워크 게임을 즐기고 있다면 이미 당신은 TCP/IP를 사용하고 있고 당신의 컴퓨터는 IP Address를 가지고 있어야만 한다. 네트워크 관리자가 이러한 IP Address의 체계에 대해서 잘 이해하고 관리할 수 있어야 한다는 것은 필수적이다.

 

이번 장에서는 TCP/IP를 구성하고 있는 IP Address, Subnet Mask, Default Gateway등의 역할들에 대해서 살펴보고, IP Address에 대해서 구체적으로 살펴보도록 한다.

 

컴퓨터에서 TCP/IP등록정보에 접근해 보면 아래의 <그림2-1> 혹은 <그림2-2>와 같은 두가지 유형의 설정을 확인할 수 있다.


<그림2-1.수동(정적) IP구성>

 


<그림2-2.자동(동적) IP구성>

 

분명히 위의 두 그림은 달라 보이지만, <그림2-2>의 경우도 보조프로그램의 명령프롬프트를 열고 "ipconfig"를 입력해 보면 TCP/IP의 구성을 확인할 수 있다.

<그림2-3. IPCONFIG Utility를 이용한 TCP/IP 구성 확인>

 

이렇듯 TCP/IP를 사용하기 위해서는 IP Address, Subnet Mask, Default Gateway등의 정보들이 구성이 되어 있어야 하는데 네트워크 관리자라면 당연히 이들의 역할들에 대한 명확한 이해를 해야 할 것이다. 어려운 수학은 아니지만 아무래도 숫자만 나오면 머리가 아파지기 시작하는 우리들로서는 차근차근 접근해 볼 필요가 있다. 먼저 IP Address에 대한 설명을 하도록 한다.

 

IP Address Network ID Host ID로 구성되어 있다. 갑자기 무슨 소리인가 싶겠지만 이것은 IP Address를 공부하는데 아주 중요한 개념이다.

 

IP Address = Network ID + Host ID

 

다른 통신도 마찬가지이긴 하지만 특히 TCP/IP통신은 우리들의 생활과도 아주 밀접한 연관성이 있다. 우리가 현실에서 외부 누군가와 편지를 주고 받는 과정이 TCP/IP통신과정과 아주 유사하다. 우리가 편지를 주고 받을 때의 상황을 상기하면서 이해를 하면 쉽다.

 

대한민국의 가구수가 얼마나 될까? 뭐 중요한 건 아니다. 얼마 전 뉴스를 보니 90년대 이후 빠르게 핵가족화가 진행 중이라는데, 남한의 가구수가 1,600만가구를 넘었다고 한다. 각 가구들을 구별하기 위해서 우리는 "번지"라는 개념을 사용하는데 그 번지가1번지부터 1,600만 번지까지 존재하는 것은 아니다. 행정구역이라는 개념으로 시, , ... 등을 구분하여 사용하며 최종적으로 번지라는 단위로써 각각의 가구들을 구분해 주고 있다.

 

만일 이러한 세부적인 단위를 사용하지 않고 전체가구가 개별적인 번지수 하나만으로 주소를 이루고 있다면 어떻게 될까? 물론 이 경우도 편지를 주고 받는 데는 문제가 없다. 1번지에 사는 사람은 100번지에 사는 사람에게 편지를 보내기 위해 편지 겉봉에 받을 사람 주소를 쓰고 우체국에 편지를 부칠 것이며, 우체국에서는 100번지인 주소를 찾아서 편지를 배달해 줄 것이다. 이때 우체국에서는 큰 노력이 필요하다. 대한민국 전체를 오로지 "번지"로만 나누었기에 100번지가 어디쯤 있는지 지도책을 펴 놓고 찾을 것이며 직접 그곳까지 배달을 해야 할 것이다. 우체국 입장에서는 자신이 배달해야 할 경로가 총 1600만 가지의 경우의 수가 있는 것이다.

 

조금 더 편한 방법은 무엇일까? 당연히 그것은 그룹으로 나누는 방법에서 찾을 수 있다. 여러개의 번지를 묶어서 그룹으로 나누면 그만큼 경로의 수가 줄어들기 때문에 배달업무에 효율성을 기할 수 있게 될 것이다. 개별적인 번지수까지 신경 쓸 이유는 없어지고 다만 그 주소가 속해있는 그룹에게 편지를 배달해 주면 되기 때문이다. Network ID도 바로 그러한 것이다.

 

전체 IP Address를 따로 따로 관리하기 보다는 Network ID라는 이름으로 그룹을 만들어서 Network ID 단위로 IP Address를 관리하면 그만큼 효율적으로 IP Address를 관리하고 무엇보다도 보다 원활한 편지배달작업에 해당하는 라우팅(Routing)이 가능해질 수 있기 때문이다.

 

Network ID에 관련한 중요한 개념 한가지를 챙겨보도록 하겠다. 그림을 예로 들어 설명을 한다. 우리가 실생활에서 편지를 보낼 때의 절차를 통해서 정리를 할 것인데, 먼저 2가지를 가정한다.

 

(1) 편지의 주소는 "" "번지"만으로 이루어져 있다.

(2) 같은 동에 속한 사람들끼리는 직접 편지를 교환하고, 다른 동으로 편지를 보내기 위해서는 반드시 우체국을 이용해야 한다.

 

예제에서는 "삼성동" "대치동"사이에 어떻게 편지가 교환이 되는지에 대한 그림을 보여준다. 예제에서 ""에 해당하는 것이 "Network ID"이고, "번지"에 해당하는 것이 "Host ID"가 된다. 우체국은 다른 네트워크 패킷을 라우팅해 주는 "라우터(Router)"에 해당한다.


<그림2-4. Network ID의 이해>

 

위의 <그림2-4> "삼성동 100번지"에 사는 사람이 "대치동 100번지"로 편지를 발송하는 상황이다.

 

"삼성동 100번지"에서는 편지(data)를 쓴 다음 겉봉투(packet)에 넣고 수신인 란에는 "대치동 100번지"라고 기록을 했다. 그 다음 편지를 발송하기 위해 첫 번째로 하는 일은 수신처가 자신과 같은 "(Network ID)"에 있는지 다른""에 있는지를 파악하는 일이다(). 같은 ""이라면 직접 편지를 배달할 것이고, 다른 ""이라면 "자신의 관할 우체국(로컬 라우터)"에게 편지배달을 요청해야 하기 때문이다

 

예제에서 수신처가 자신과는 다른 "대치동"관할에 있으므로 두 번째로 할 일은 "삼성동 우체국"으로 편지를 보내러 가야 한다().

 

삼성동우체국에서는 발신자의 주소는 중요하게 취급되지 않는다. 중요한 정보는 수신자의 주소인 "대치동 100번지"가 되는데, 그 중에서도 "대치동"이라는 "(Network ID)"정보가 필요할 뿐이다. 100번지라는 "번지(Host ID)"수는 의미가 없다. 자신이 직접 최종목적지까지 편지를 배달할 것은 아니기 때문이다. 그래서 삼성동우체국에서는 "대치동"이라는 목적지를 확인한 다음 그 목적지로 가기 위한 경로(Routing Table)를 확인하여 대치동 우체국으로 편지를 발송한다. 이때 발송방법은 여러 가지가 있을 것이다. 비행기, 자동차, 선박 등을 이용해서 상대방 우체국까지 편지를 발송해주게 된다().

 

대치동 우체국에서 편지를 받고서 자신의 관할영역임을 확인한 다음, 편지겉봉의 수신처 주소중 "번지"를 확인하게 된다. "100번지"라는 번지를 근거로 "대치동 100번지"의 우체통에 편지를 배달해 줄 수가 있게 된다.() 이렇듯 다른 "(Network ID)"으로 편지를 보내기 위해서는 반드시 자신의 관할 우체국(Local Router)의 도움을 받아야 하는 것을 확인할 수 있다.

 


 <그림2-5. Network ID의 이해 2>

 

<그림2-5>는 같은 ""에 있는 "삼성동 200번지"로 편지를 배달하고 있다. 과정은 앞의 예제와 다를바가 없다. 다만 편지를 작성한 다음 가장 먼저 수신처가 자신과 같은 동에 있는지 다른 동에 있는지를 판단해서 같은 동에 있다는 판단을 하였기에 우체국에 편지를 부치지 않고 직접 편지를 배달하고 있다.

 

당연한 것을 왜 설명하는지 의아해 하는 독자가 있을 것이다. 하지만 여기서 중요한 원칙 하나가 나온다. 물리적으로 같은 ""에 위치한 집들은 반드시 같은 ""의 주소를 할당받아야 하고 다른 ""에 위치한 집들은 반드시 다른 ""의 주소를 할당받아야 한다는 것이다. 다시 정리하면 같은 네트워크에 존재하는 컴퓨터들은 반드시 같은 "Network ID"를 사용해야 하고, 다른 네트워크에 존재하는 컴퓨터는 반드시 다른 "Network ID"를 사용해야 한다는 것을 의미한다. 아래의 <그림2-6>을 통해서 설명하도록 한다.

 


 <그림2-6. Network ID의 이해 3>

 

<그림2-6>의 상황은 "삼성동200번지"에 살던 <B>라는 사람이 "대치동"으로 이사를 했다. 당연히 대치동에서 새로운 번지를 할당 받아야 하겠지만 고집스럽게도 <B>는 물리적으로는 "대치동"관할에 있으면서 주소는 예전 그대로 "삼성동200번지"를 사용하고 있다고 가정해 보겠다. 결과적으로는 <B>는 어느 누구와도 편지를 주고 받을 수 없다. 왜 그럴지 살펴보겠다.

 

먼저 "삼성동100번지"에 있는 <A>와의 통신을 고려해 보면 <A><B>에게 편지를 보내기 위해 편지 겉봉에 "삼성동200번지"라는 주소를 기록할 것이다같은 "(네트워크ID)"에 있는 사람이기에 우체국에 편지를 부치는 것이 아니라 직접 편지를 배달하려고 시도를 하겠지만 실제로는 다른 ""으로 이사를 가 버린 <B>에게는 편지가 도착될 수가 없게 된다. 이번엔물리적으로 같은 ""에 위치한 "대치동100번지"<C><B>의 통신을 고려해 보겠다. <C>는 역시 <B>에게 편지를 부치기 위해 편지겉봉에 수신처주소에는 "삼성동200번지"를 사용할 것이다. 자신과 다른 ""에 위치해 있다는 것을 알 게 되고 직접 발송하는 것이 아니라 "대치동 우체국"에 발송을 요청하게 될 것이다. 대치동우체국에서는 목적지가 "삼성동"으로 되어 있으므로 "삼성동우체국"으로 편지를 보낼 것이고, 우체국에서는 번지를 확인해서 "200번지"를 찾게 되지만 실제로는 이사를 해 버린 <B>를 찾을 수가 없게 된다. 역시 편지발송이 실패하게 된다.

 

위에서 예제에 따르면 "같은 동에 사는 사람들은 주소역시 같은 동의 주소를 가져야 하며, 다른 동에 사는 사람과는 다른 동의 주소를 사용하여야 한다"라는 결과가 나온다. TCP/IP통신에 맞춰서 얘기해 보면 다음과 같다.

 

"같은 물리적인 네트워크에 존재하는 컴퓨터들은 반드시 같은 "Network ID"를 사용해야 하고, 다른 네트워크에 존재하는 컴퓨터는 반드시 다른 "Network ID"를 사용해야 한다".

 

이것은 TCP/IP를 사용하는 컴퓨터들간의 통신을 위해서 반드시 지켜져야 하는 원칙이다. 예를 들면 192.168.5.0이라는 네트워크 ID를 할당한 세그먼트에 A B가 있다면 이들 둘의 통신을 위해서는 A B는 동일하게 192.168.5.0 네트워크 ID를 사용하는 Host ID가 할당되어야만 한다. A에게 192.168.5.1을 할당하고, B에게 192.168.5.20을 할당했다면 둘은 통신이 되겠지만, 만일 B에게 192.168.6.20을 할당했다면 둘은 통신을 할 수가 없게 된다. 물리적으로 같은 네트워크에 서로 다른 네트워크ID가 할당되었기 때문이다. 192.168.5.1 192.168.6.20이 어디가 어떻게 다른 것인가? 이제부터 그런 내용을 배우게 된다.

 

잘 아는 사람들에게는 불필요한 정도로 부연설명을 했다. 하지만 이 개념은 IP Addressing, TCP/IP통신의 흐름을 이해라는데 필요한 너무나 중요한 개념이다. 꼭 이해하시고 넘어갈 것은 당부한다. 이제 본격적으로 IP Address에 대해서 살펴보도록 하겠다.
:
Posted by 새벽예찬