본문 바로가기

KITRI/네트워크 기초

ip주소 공부

 

 

 

1. ip주소란? OSI 7Layer에서 쓰이는 주소로서 host가 가지고있는 ip주소

 

하여 라우터를 통해 경로를 지정받을 수 있게 하는 주소 사람과 비교한다면 집

주소 와 같다고 보면된다.

 

windows 커멘드라인을 실행시켜 ipconfig 명령어를 입력하면 노란색글씨로 숫자같은게 보일 것이다.

이게 ip주소이다. 그 위에 영어와 숫자가 섞여있는게 ipv6 주소이다.

 

ipv4 ip주소는 0.0.0.0 부터 255.255.255.255 까지 사용되는데 왜 255냐면 ip주소는 숫자 한자리당 1바이트로 주소를 나타내게된다.

 

 그래서 0000000.00000000.00000000.00000000 부터 11111111.11111111.11111111.11111111 까지 나타낼 수 있다. (대략 42억개)

네트워크부분과 호스트부분을 나눠주는 역할을 하는 것이 서브넷마스크인데 이것은 네트워크 부분과 호스트부분을 나누어 사용한다는 방법으로서 네트워크 호스트 주소를 효과적으로 관리하는 방법법이다. 이 후  VLSM과 CIDR 같은 방법들이 파생되어 생겨났다.

 

위의 그림을 보면 서브넷마스크가 255.255.255.0 이라고 나와있는 것을 볼 수 있다. 서브넷마스크는 기본서브넷마스크(Default Subnet Mask) 와 서브넷 마스크로 나뉘는데  이 서브넷마스크가 네트워크주소와 호스트주소를 나누는 역할을 한다. 나누는 방법은 ip주소 서브넷마스크를 AND연산하면 네트워크 주소를 알 수 있다. ( AND연산이란 0 과 1중 하나만 0 이어도 0) 

 

 

 

 

 

 

 

 

사진은 ip주소를 class별로 나타내고있다.

 

 

 

또 ip주소는 위에서 말했듯이 네트워크 부분과 호스트부분으로 나뉘는데 네트워크 부분의 헤더 숫자가 적으면 나머지가 호스트가 되어 네트워크 하나당 많은 호스트 주소를 담을 수 있게되는데 이것들을 클래스로 나누어 용도에 맞게 사용되고 있다.

 

 

 

 

 

그림의 Class A같은 경우 ip주소는 0xxxxxxx~01111111.xxxxxxxx.xxxxxxxx.xxxxxxxx로 기본서브넷마크는 255.0.0.0 을 사용한다. 따라서 10진수로 바꿔 생각해보면 0.0.0.0~ 127.255.255.255.255 까지의 ip주소를 사용할 수 있고

Class B 같은 경우 ip주소는 10xxxxxx~10111111이니 128.0.0.0~191.255.255.255 까지 사용된다.( 네트워크 주소 하나당 가질 수 있는 호스트의 수가 점점 줄어든다.)

마찬가지로 Class C는 110xxxxx~11011111 으로 192.0.0.0 ~ 223.255.255.255 까지 쓰이며 대략적으로 우리가 쓰는 Class라고 보면 된다.

 마지막으로 Class D는 1110xxxx~11101111로 224.0.0.0~ 239.255.255.255 로 나타내며 연구용으로 쓰이고 있다.

 

 

2. 서브넷마스크

 

서브넷마스크는 네트워크와 호스트부분을 나누는 역할을 한다. 또한 서브넷 마스크는 표기법의 규칙이 있다.

다음의 두 주소는 맞는 서브넷마스크인가?

 

1. 255.255.254.0 (11111111.11111111.11111110.00000000)

2. 255.255.253.0 (11111111.11111111.11111101.00000000)

 

첫번째는 맞는 주소이고 2번째는 틀린주소이다. 여기서 나오는 규칙을 알아보면 서브넷마스크는 앞에 비트가 0이면 뒷비트는 1이 될수 없다는 것이다. 만약에 이러한 규칙이 적용되지 않는다면 네트워크를 나눌때 상당히 곤란한 일이 생길 것이다. 네트워크를 나누는 것은 다음 포스팅에서 자세하게 다뤄보겠다.

 

하지만 이 ipv4표기법이 등장하고 시간이 지나 수요가 점점 많아지면서 약 42억개의 ip주소가 부족하게 되는 현상이 나타났다. 그래서 대안이 되는 방법들이 생겨났는데 대략 이렇다.

 

1. ipv6 

2. NAT

 

 2-1. ipv6 

 일단 ipv4의 경우 간단히 설명하면 옥텟(숫자 한부분)당 8비트의 표기방식으로 나타내어 총 32비트의 주소방식을 사용했지만 ipv6의경우 한 옥텟당 16비트 로 8개의 옥텟으로 구성되어 있으며 총 128비트의 용량을 가진다. (16진수 표기법으로 되어있다.)  

 

이로 인해 엄청난양의 네트워크 수를 충족할 수 있다고 한다. (우리나라에서 개발했다고 들었다.) 아무튼 자세한 ipv6는 다음 포스트에서 자세하게 올리겠고 다음은 NAT라는 것에 대해 알아보겠다.

 

 

 2-2 NAT

 

 

NAT의 개념을 알기전에 일단 ip주소는 공용ip와 사설ip가 있다는것을 알아야 한다. 공용 ip는 정말로 dns서버 도메인 서버에 돈을 주고 42억개의 ip주소중 하나를 임대한 ip주소이고 사설 ip주소는 우리가 사용하고 있는 라우터(게이트웨이) 내부안의 네트워크를 만들어 그 안에서 사용되는 ip주소를 말한다. 이 ip주소는 공용ip주소와는 직접적인 주소관계를 갖고있지않다. 그러면 어떻게 공용ip와 네트워크를 할 수 있을까?  이렇게 공용 네트워크와 사설 네트워크를 이어주는 기술이 바로 NAT이다. NAT에 관한 내용도 다음 포스팅때 자세히 포스팅 해보도록 하겠다.

 

 

 

 

 

 

'KITRI > 네트워크 기초' 카테고리의 다른 글

이중화 및 로드밸런싱  (0) 2017.03.17
tcp ip 헤더 공부  (0) 2015.09.03
CIDR 슈퍼네팅 공부  (0) 2015.09.02
예약된 IP들  (0) 2015.09.02
서브넷 공부  (0) 2015.09.02