다음 이전 차례

6. IP 네트워크 번호를 서브넷으로 나누는 방법

여러분의 IP 네트워크 번호를 서브넷으로 나눌 필요가 있다고 결정했다면 이제 어떻게 해야할까? 아래의 내용은 해야 할 일들을 자세히 설명하고 있다.

이 IP 네트워크는 최대 254개의 인터페이스(호스트)를 가질 수 있고, 반드시 네트워크 자신을 표현할 네트워크 번호(192.168.1.0) 그리고 브로드캐스트 주소 (192.168.1.255)를 가진다.

6.1 실제적인 연결 설정하기

여러분은 여러분이 관리해야할 네트워크의 실제 구조와 잘 부합되도록 모든 디바이스들이 상호연결 되도록 하기위해 정확한 케이블 인프라스트럭쳐 (infrastructure)를 설치해야 할 것이다.

또한 여러분은 다양한 부분(라우터, 미디어 변환기 등등)을 상호 연결할수 있는 매커니즘이 필요할 지도 모른다. 분명히 이것에 대한 자세한 설명은 불가능하다. 도움이 필요하다면 이러한 서비스를 제공하는 주위의 네트워크 디자인/설치 전문가를 만나보는 것이 좋다. 또한 유즈넷 뉴스 그룹을 보면 무료로 제공되는 많은 조언들을 얻을 수 있다. ( comp.os.linux.networking과 같은 뉴스 그룹)

6.2 서브넷 크기 정하기

여러분이 만든 서브넷의 갯수와 '잃어버린' IP 번호의 개수 사이에는 타협이 필요하다. 모든 각 IP 네트워크에서는 2개의 주소를 인터페이스(호스트) 주소로 사용할 수 없게 된다 - 네트워크 IP 번호 그 자체와 브로드캐스트 주소. 여러분이 서브넷을 구성하면 각각의 서브넷은 네트워크 자신을 표시할 고유한 IP 네트워크 번호와 브로드캐스트 번호를 필요로 하며, 이 번호들은 서브넷의 IP 네트워크 에 의해 지정된 범위내에서 유효한 것이어야 한다.

그러므로 IP 네트워크를 두개의 서브넷으로 분리하는 것은 2개의 네트워크 주소와 두개의 브로드캐스트가 필요하다는 것이므로, 이는 곳 '사용불가능한' 인터페이스 (호스트) 주소가 증가한다는 것을 의미한다. 만일 4개의 서브 네트워크를 만든다면 이 숫자는 8로 증가하게 된다.

사실 가장 작은 서브넷도 4가지 IP 번호로 구성되어 있다.

왜 이렇게 사용하지 못하는 IP 숫자를 늘여가면서 작은 네트워크를 만드는 가 하는 것은 또 다른 문제이다. 네트워크에 오직 하나의 호스트가 있다면 어떠한 네트워크 통신도 다른 네트워크로 나가야 한다. 그러나 앞으로 보게될 예제는 서브넷에 적용되는 수익 체감의 법칙을 잘 보여줄 것이다.

이론적으로 IP 네트워크 번호는 똑같은 크기를(서브넷으로 나눈 후 서브 네트워크들을 결합할 수도 있다.) 갖는 2^n개의 서브넷으로 나눌 수 있다.(이때 n은 여러분의 IP 네트워크 번호의 호스트 비트의 갯수보다 하나 적은 숫자이다)

그러므로 자신의 네트워크를 디자인하는데 현실적이어야 한다 - 여러분은 관리, 실제적인 장비, 보안상의 제한등을 고려하여 가능하면 로컬 네트워크의 숫자를 줄이는 방향으로 디자인을 해야한다.

6.3 서브넷 마스크와 네트워크 번호 계산하기

IP 네트워크를 서브넷으로 나누는 마술을 발휘하는 것은 네트워크 마스크 이다. 서브넷으로 나누어지지 않은 IP 네트워크 번호에 대한 네트워크 마스크는 단순히 네트워크의 번호의 모든 '네트워크 비트'를 '1'로 설정하고 모든 호스트 비트를 '0'으로 설정한 것이다.

그러므로 IP 번호의 세가지 클래스에 대한 표준 네트워크 마스크는 다음과 같다.

서브넷이 동작하는 방법은 하나 혹은 그 이상의 사용가능한 호스트 비트를 빌려와서 인터페이스가 빌려온 비트를 네트워크의 일부로 해석하도록 하는 것이다. 그러므로 네트워크 번호를 두개의 서브넷으로 나누기 위해서는 첫번째 호스트의 네트워크 마스크 비트에서 적절한 비트를 '1'로 지정하여 한개의 호스트 비트를 빌려온다.

클래스 C 주소에 대해 네트워크 마스크는 11111111.11111111.11111111.10000000 또는 255.255.255.128가 된다. 우리가 살펴보고 있는 클래스 C 네트워크 번호인 192.168.1.0에 대해 여러분들은 몇개의 서브넷 옵션을 지정할 수 있다.


  No of      No of
  subnets    Hosts/net    netmask
  2            126        255.255.255.128 (11111111.11111111.11111111.10000000)
  4             62        255.255.255.192 (11111111.11111111.11111111.11000000)
  8             30        255.255.255.224 (11111111.11111111.11111111.11100000)
  16            14        255.255.255.240 (11111111.11111111.11111111.11110000)
  32             6        255.255.255.248 (11111111.11111111.11111111.11111000)
  64             2        255.255.255.252 (11111111.11111111.11111111.11111100)

이론적으로, 위에서처럼 서브넷을 만들때 반드시 네트워크 마스크 비트를 가장 중요한 호스트 비트에서 가장 덜 중요한 호스트 비트순으로 더할 필요는 없다. 그러나 만일 여러분이 이 방법을 사용하지 않는다면 만들어진 IP 번호는 매우 이상한 순서가 될 것이다. 이 경우 2진수에 익숙치 않는 우리들 로써는 IP 번호가 어떤 서브넷에 속해있는지 알기가 매우 어려워진다. (반면 컴퓨터는 여러분이 어떤 방법을 사용했는지 상관없이 잘 이해할 것이다) 적절한 네트마스크를 결정했다면 이제 여러분은 네트워크 주소와 브로드캐스트 주소와 각각의 네트워크의 IP 번호의 범위를 알아야 한다. 다시 한번 말하지만 이 예제에서는 클래스 C IP 네트워크 번호만을 고려하고 최종 호스트 번호만을 보여주도록 하겠다.
  Netmask         Subnets Network B'cast  MinIP   MaxIP   Hosts  Total Hosts
  --------------------------------------------------------------------------
      128            2       0     127       1     126    126
                           128     255     129     254    126     252
    192            4       0      63       1      62     62
                            64     127      65     126     62
                           128     191     129     190     62
                           192     255     193     254     62     248
    224            8       0      31       1      30     30
                            32      63      33      62     30
                            64      95      65      94     30
                            96     127      97     126     30
                           128     159     129     158     30
                           160     191     161     190     30
                           192     223     193     222     30
                           224     255     225     254     30     240

위에서 보이는 것처멈 이들 숫자에는 명백한 순서가 존재하기 때문에 확인하기가 매우 쉽다. 서브네트워킹의 아래쪽은 서브넷의 숫자가 증가함에 따라 사용가능한 호스트 주소의 전체 숫자가 감소한다는 사실을 보여준다. 이 정보로부터 이제 여러분들은 호스트와 네트워크 IP 번호 그리고 네트워크마스크 를 할당할 수 있게 되었다.
다음 이전 차례