서브넷 마스크
- 어디까지가 network이고, 어디까지가 host인지를 나타내기 위한 주소
- IP 주소를 바탕으로 network주소와 host주소를 바탕으로
라우터를 이용해야 하는지(network가 다를 때),
이더넷을 이용해야 하는지(network가 같을 때) 확인하기 위함
⇒ IPv4는 network 주소와 host 주소의 구분이 없으므로 서브넷 마스크가 필요192.168.0.0 255.255.0.0 ping 192.168.20.20 11000000.10101000.00001010.00001010 (192.168.10.10) & 11111111.11111111.00000000.00000000 (255.255.0.0) -------------------------------------------------------- 11000000.10101000.00000000.00000000 11000000.10101000.00010100.00010100 (192.168.20.20) & 11111111.11111111.00000000.00000000 (255.255.0.0) -------------------------------------------------------- 11000000.10101000.00000000.00000000 => 같은 값이 나옴 (같은 network를 사용) if) 서브넷 마스크가 255.255.255.0 이면, 다른 값이 나옴 => 다른 network를 사용
- IP 주소와 Classful, Classless
- 192.168.10.0 ~ 192.168.10.255 까지 있을 때,
- host 주소가 0인 경우 → network 주소
- host 주소가 255인 경우 → broadcast 주소
- ⇒ 254명에게 주소를 나누어 줄 수 있음
- gateway
- 다른 network로 가기 위한 문
- 라우터 - 스위치간의 연결은 의례적으로 가장 마지막 port에 꼽음
- 1 ~ (마지막port -1) 까지는 서버를 연결
- IP 주소는 1번을 주는 경우가 많음
- 게이트웨이 주소 확인
ipconfig
- 해당 게이트웨이로 ping 보내서 TTL 확인
ping 게이트웨이주소
- ARP cache table에서 통신 후 저장된 MAC 주소 확인
arp -a
- 해당 MAC Address Lookup 해서 회사 모델 확인
- 기기의 취약점을 찾으면 해킹도 가능
- 게이트웨이 주소 확인
IP 주소의 필요성
- 해당 사이트에서 IPv4 보유 현황을 확인할 수 있음
- IPv6는 아직 확보가 많이 되지 않은 상황임
- why?
- 지원되지 않는 서비스가 많음
- 차별화되는 서비스가 없음
- but, 남아있는 IPv4주소는 0.3%밖에 되지 않음
- ⇒ 더이상 신규 서비스를 만들 수 없음
- why?
IP 주소 관리
- 전체 IP주소는 IANA가 관리
- 대륙 별로 5군데로 나뉘어 관리를 맡김
- Asia : APNIC에서 관리
- 국내 : KRNIC에서 IP를 관리하고 있음
- KT, SKT는 KRNIC에서 국내 IP를 할당받음
- 국내 IP는 WHOIS 에서 확인 가능함
- 만약 국내 Domain이 아닌 경우, 확인할 수 있는 곳을 알려줌
IP 주소 할당
- 서비스의 종류에 따라 IP를 다르게 할당하여 관리하기 용이하게 만들어야 함
- 방법
- 1.11, 1.12, 1.13 … 1.200 까지의 서버를 1.11
1.20 까지는 web, 1.211.50 까지는 DB로 하나의 network로 만듦- 논리적으로 나눔
- 브로드캐스트 트래픽이 높아짐
- 중간에 방화벽을 둔 후, 스위치를 통해 web과 DB를 물리적으로 나눠 network를 분리함
- web에는 사용자들이 접속할 수 있도록 함
- DB에는 F/W를 통해서 web 서버만 들어올 수 있도록 설정할 수 있음
- 관리와 보안, 고가용에 용이함
- 게이트웨이(라우터)가 많아져야 함 ⇒ 비용 증가
- 방화벽을 설치하면 반드시 network를 나누어줘야 함
- 1.11, 1.12, 1.13 … 1.200 까지의 서버를 1.11
- 캠퍼스 network의 특징
- IP가 많이 필요함 (한 사람당 1개씩의 IP를 가짐)
- 50개의 강의실에 20명씩 있다고 생각해보면, 1000개의 IP가 필요함
- ⇒ network를 나눌 필요가 있음
- IP가 많이 필요함 (한 사람당 1개씩의 IP를 가짐)
AWS의 Network
- default VPC에 따라 IP대역을 할당받음
- AZ에 따라 network를 나누어 두었음
- 각 AZ에 따라 최소 2개 이상의 IP대역으로 나누어 사용해야 함
⭐ 진짜 중요 ⭐
IP 주소 체계
IP의 가장 앞자리
00000000.00000000.00000000.00000000
--------
해당 숫자를 통해 class(회사 규모)를 나누어 생각할 수 있음
00000000 ~ 01111111 (0~127)을 큰 회사 => A Class
10000000 ~ 10111111 (128~191)을 중간 회사 => B class
11000000 ~ 11011111 (192~223)을 작은 회사 => C class
11100000 ~ 11101111 (224~239)를 multicast => D class
11110000 ~ 11110111 (240~255)를 연구용 => E class
- IP의 제일 첫 숫자를 보면 회사의 규모를 예측해볼 수 있었음
17.6.4.11 => 2^24 -2개의 IP를 사용할 수 있음 255.0.0.0 A class의 서브넷 마스크 164.128.10.11 => 2^16 - 2개의 IP를 사용할 수 있음 255.255.0.0 B class의 서브넷 마스크 202.147.10.20 => 2^8 - 2개의 IP를 사용할 수 있음 255.255.255.0 C class의 서브넷 마스크
- 낭비되는 IP가 발생
- 600개의 IP를 필요로 하는 회사는 B class → 약 6만5천개의 IP가 낭비됨
- ⇒ 서브넷팅 개념이 생김
서브넷팅
- 하나의 네트워크를 여러 기업에서 나누어 사용하게끔 함
- ARP request로 인한 Broadcast량이 증가할 수 있으므로, 네트워크를 나누어 관리할 필요가 있음
- Broadcast Domain
- Broadcast가 도달할 수 있는 network의 범위
- 라우터(Layer3장비 이상)는 broadcast domain을 나눌 수 있는 장비임
- Broadcast Domain
A - 40개 IP 필요
B - 50개 IP 필요
C - 25개 IP 필요
D - 30개 IP 필요
=> 202.147.16.0 (subnet mask 255.255.255.0) 하나의 network로 묶음
4개의 회사를 구별하기 위해 필요한 bit는 2bit
11111111.11111111.11111111.00000000 에서
--
해당 2bit를 빌려 subnet을 구별하는 데 사용
A subnet - 00(000000)
B subnet - 01(000000)
C subnet - 10(000000)
D subnet - 11(000000)
- Classless의 개념으로 전환됨
- 서브넷팅으로 인해 class의 개념이 모호해진 이후로는 class는 개념 설명을 위하여서만 활용됨
- 서브넷 마스크의 길이에 따라 분할 가능한 network의 수도 달라지고,
사용 가능한 서버(node)의 수도 달라짐 - ⇒ 설계가 중요함
슈퍼넷팅
- subneting으로 나누었던 IP를 다시 하나의 network로 합치는 것
서브넷팅 연습
- KRNIC 에서 IP를 할당받음
202.147.10.0
255.255.255.0 - IP를 사용성에 따라 network 로 나누어 사용하기로 결정
=> Host 부분을 나누어야 함
11111111.11111111.11111111.00000000 을 8개의 network로 나누기로 함이미 할당받은 network 부분은 변경 불가
- 3bit를 임의로 나누어 subnet으로 분리함
000
001
010
011
100
101
110
111
=> 총 8개의 network으로 분리할 수 있음필요에 따라 나누었다가 다시 합칠 수도 있음 (슈퍼넷팅)
- 필요에 따라 나누어 주면 끝
1 강의실 - ...00000000 => 202.147.10.0 (255.255.255.224)
2 강의실 - *...00100000 => 202.147.10.32 (255.255.255.224)
...
8 강의실 - *...11100000 => 202.147.10.224 (255.255.255.224)
=> 각 강의실마다 `*2^5 - 2**`개의 IP를 사용할 수 있음
if) 8강의실의 network를 2개로 분할해달라는 요청을 받으면
11100000 에서의
- 하나의 bit를 한번 더 나눌 수 있음
이 때, 8강의실의 subnetmask는 255.255.255.240이 됨
CIDR 표기법
- Classless Inter-Domain Routing 표기법
**202.147.10.32 /72**
- IP와 Prefix로 나타내는 것
- AWS에서도 서브넷을 만들 때, CIDR를 작성해주어야 함
Prefix
- 서브넷 마스크의 1의 길이를
**/숫자**
로 나타냄 - 장점
- 가독성 향상
- 5bit로 작성 가능
- subnetmask를 사용하면 32bit가 필요함
- ⇒ mem 효율 향상
직접 해보자!!
202.147.10.0/24 를 4개의 network로 분할해보기
- 4개의 network가 필요하므로 /26 으로 2bit로 서브넷 만들기
- 202.147.10.0/25 ⇒ main으로 사용
- 202.147.10.128/26 ⇒ 60대 사용
- 202.147.10.192/27 ⇒ 30대 사용
- 202.147.10.224/27 ⇒ 20대 사용
- ⇒ 필요한 PC의 갯수에 따라 네트워크를 나눌 수 있음
Subnet Mask 계산
Address | Subnet Mask | Class | Subnet | Broadcast |
---|---|---|---|---|
201.222.10.60 | 255.255.255.248 | B | 201.222.10.56 | 201.222.10.63 |
15.16.193.6 | 255.255.254.0 | A | 15.16.193.255 | 15.16.193.255 |
128.16.32.13 | 255.255.255.252 | B | 128.16.32.12 | 128.16.32.15 |
153.50.6.27 | 255.255.255.128 | B | 153.50.6.0 | 153.50.6.127 |
- Class는 Address를 기준으로 나누어야 함! |
728x90
'Study > Network' 카테고리의 다른 글
[네트워크 계층구조] TCP/IP에 대하여 - 3 (ARP란?) (0) | 2024.01.17 |
---|---|
[네트워크 계층구조] TCP/IP에 대하여 - 2 (0) | 2024.01.17 |
[네트워크 기초] 개요 3 (2) | 2024.01.13 |
[네트워크 기초] 개요 2 (1) | 2024.01.12 |
[네트워크 기초] 개요 1 (1) | 2024.01.12 |
댓글