2013년 8월 28일 수요일

서브넷

01. Subnet Mask(서브넷 마스크)
- 서브넷 마스크에서 중요한 2가지는?   ① 2진수의 이해
  ② 논리적 AND에 대한 이해

- 서브넷 마스크(Subnet Mask)
▪ 메인이 아닌 어떤 가공을 통한 네트워크를 만들기 위해서 씌우는 마스크. 우리가 일단 어떤 IP 주소를 배정받게 되면 보통은 이 주소를 그대로 사용하지 않는다. 자신이 원하는 대로 설정하기 때문에!
▪ 클래식한 기존의 네트워크를 서브넷으로 나누어 주기 위한 기법
▪ 즉, 서브넷 마스크는 주어진 IP 주소를 네트워크 환경에 맞게 나누어 주기 위해서 씌워주는 2진수 조합이며 커다란 네트워크를 잘게 나누기 위해 필요하다.








02. 서브넷 마스크 기본- 예를 들어 210.100.100.1 이란 주소가 있다. 클래스 C.
▸ 주어진 클래스 C를 하나도 가공하지 않고, 쪼개지 않고 그대로 사용.
⇨ 주어진 클래스 C를 나누어 쓰지 않고 몽땅 쓰는 경우에도 서브넷 마스크는 따라다니는데 그게 바로 ‘디폴트 서브넷 마스크(Default Subnet Mask)’, 즉 ‘기본 서브넷 마스크’- 주어진 네트워크를 나누어서, 즉 가공해서 쓰는 경우는 디폴트 서브넷 마스크를 쓰지 않고 약고 고쳐서 사용.(이런 경우는 디폴트 서브넷 마스크라고 하지 않고 그냥 서브넷 마스크라고만 함)

- 서브넷 마스크란 IP 주소를 가지고 어디까지가 네트워크 부분이고, 또 어디까지가 호스트 분인가를 나타내는 역할. ⇒ 서브넷 마스크를 보면 그 IP 주소의 네트워크 부분과 호스트 부분을 알 수 있음.
- 네트워크 부분은 서브넷 마스크가 2진수로 ‘1’인 부분호스트 부분은 서브넷 마스크가 2진수로 ‘0’인 부분
      ① 1101 0010.0110 0100.0110 0100.0000 0001 = 210.100.100.1 → IP 주소
      ② 1111 1111.1111 1111.1111 1111.0000 0000 = 255.255.255.0 → 서브넷 마스크
      ③ 1101 0010.0110 0100.0110 0100.0000 0000 = 210.100.100.0 → 서브넷 네트워크

⇒ IP 주소를 적고 아래에 서브넷 마스크를 적은 후 이 둘을 논리적 AND를 하게 되면 서브넷 네트워크가 나옴.
- 서브넷 마스크를 가지고 있지 않는 IP 주소는 없다. 비록 네트워크를 작게 나누지 않고 원래 클래스대로 사용하더라고 서브넷 마스크는 있다. 이게 바로 ‘디폴트 서브넷 마스크’- 어떤 IP 주소라도 서브넷 마스크를 통과시키게 되면(이것이 바로 논리적 AND 연산) 네트워크 부분이 어디까지인지를 알 수 있게 됨.






- 서브네팅 : 하나의 주소를 서브넷 마스크를 씌워서 작은 네트워크로 만듦.
- 서브넷 마스크 : 디폴트 서브넷 마스크와 무언가 변형을 한 서브넷 마스크로 나누어 볼 수 있다. 서브넷 마스크를 사용하는 이유는 커다란 네트워크(호스트 숫자가 많은 네트워크)를 작은 네트워크 여러 개로 나누어서 쓰기 위함.
- 서브넷 마스킹 : 기존 IP 주소의 호스트 부분의 일부를 네트워크 부분으로 바꾸는 작업

03. 서브넷 마스크의 기본 성질- 서브넷 : 서브넷 마스크로 만들어진 네트워크. 즉, 이제 하나의 네트워크이기 때문에 서로 나뉘어진 서브넷끼리는 라우터를 통해서만 통신이 가능.
- 하나의 브로트캐스트 도메인에 있는 PC들이고 당연히 라우터 없이도 통신이 가능

- 서로 다른 브로트캐스트 도메인에 존재하고 있기 때문에 서로 아무리 소리쳐 불러도 상대편이 그 목소리를 들을 수 없다. 다만 라우터를 통해서만 서로의 소리를 전달 가능. 서브넷 마스크에 의해 나누어진 네트워크, 즉 서브넷은 하나의 독립된 네트워크.

- 서브넷 마스크는 2진수로 썼을 때 ‘1’이 연속적으로 나와야 함.
1111 1111.1111 1111.1111 1111.0000 1010 서브넷 마스크로 사용 불가▸ 1이 연속적으로 나오지 않았기 때문에1111 1111.1111 1111.1111 1111.1111 1100 서브넷 마스크로 사용 가능▸ 1이 연속적으로 나옴.
      [※ 1의 사이에는 어떠한 경우에도 0이 오면 안 된다. 즉, ‘1’이 연속적으로 나온 후에 ‘0’이 나오는 게 규칙]
⇨ 서브넷 마스크를 가지고 나누어서 만들어낸 서브넷도 엄연히 하나의 네트워크니가 서로간의 통신은 라우터를 통해서만 가능. 서브넷 마스크를 만들 때는 2진수로 봤을 때 ‘1’들 사이에 ‘0’이 오면 안 됨.


201.222.10.60   = 1110 1001.1101 1110.0000 1010.0011 1100
255.255.255.248 = 1111 1111.1111 1111.1111 1111.1111 1000
        서브넷은   1100 1001.1101 1110.0000 1010.0011 1000 ⇒ 201.222.10.56

이런식으로 서브넷을 계산하면 된다.!
- 서브넷을 찾을 때 서브넷 마스크가 255인 것은 2진수로 바꿀 필요없이 그 부분이 네트워크 부분이 된다고 생각하면 됨.
04. 서브넷 마스크 그 속으로...
① 서브넷도 하나의 네트워크이기 때문에 일단 나누어진 서브넷은 라우터를 통해서만 통신이 되는 엄연한 하나의 네트워크
② 서브넷 마스크를 만들 때는 ‘1’들의 중간에 ‘0’이 들어가는 마스크, 즉 ‘1’이 연속되지 않은 서브넷 마스크는 만들지 않음.

Q. 공인 IP 주소를 210.100.1.0(서브넷 마스크 255.255.255.0) 네트워크 받았다. PC 30대인 네트워크를 최소 4개 이상 만든 다음 이들 네트워크를 라우터를 이용해서 서로 통신하게 하려고 한다. 서브넷 마스크를 만든다면 어떻게 해야 하나?
A. 네트워크 최소 4개 이상 만들려면 디폴트 서브넷 마스크를 변경해야 한다.
                                                        [※ 한 네트워크가 포함하는 PC의 개수(=클라이언트 수, 호스트 수)]
210.100.1.0 : 어떤 특정한 호스트나 PC에서 사용하는 주소가 아님. 네트워크 그 자체
     ~
210.100.1.255 : 호스트 주소로 사용하지 않음. 210.100.1.0 네트워크의 브로드캐스트 주소
⇒ 210.100.1.255를 사용해서 210.100.1.0 네트워크의 모든 호스트들에게 전송
[호스트 부분이 모두 ‘0’이거나 ‘1’인 주소는 쓰지 않는다.]

사용 가능 호스트 수 = 2(Host Bit 수) - 2 (호스트 주소, 브로드캐스트 주소)
                    = 25 – 2
                    = 30


210.100.1.0 ⇒ 210.100.1.0000 0000
            ⇒ 210.100.1.sssh hhhh
                        (s: 서브넷, h: 호스트[호스트자리 맨 오른쪽에서 왼쪽으로 늘어남])
            ⇒ 210.100.1.1110 0000(= 210.100.1.224)                  ∴ 210.100.1.224
- 서브넷 당 호스트 수를 통해서 호스트의 비트 수가 계산되면 서브넷 마스크에서는 이 부분을 ‘0’으로 만들어주면 됨.
- 서브네팅 : 기본의 호스트 부분을 줄여서 일부를 서브넷 부분으로 만들고 나머지를 호스트로 만드는 개념이기 때문에 호스트의 숫자는 줄어들고 서브넷의 숫자는 늘어남.

댓글 없음:

댓글 쓰기