네트워크 관련한 이것저것들을 정리해봤다.
(+ 그때그때 필요한 CS 지식들을 야매로 채워나가는 중이라 목차는 제가 궁금한 것들 위주로 구성해서 두서가 없을 수 있습니다.)
(++ 공부하는 과정에서 작성한 글입니다. 잘못된 부분이 있다면 말씀해주시면 정말 감사하겠습니다.)
~ 목차 ~
1. 네트워크 표기법
2. IP주소 분류
2.1 사설IP
2.2 특수IP
2.3 공인IP
3. NAT
1. 네트워크 표기법
127.0.0.0 ~ 127.255.255.255 를 127.0.0.0/8 이라고 표현하는걸 보고 이게 뭔가 싶었음
알고보니 슬래시 뒤에 있는 숫자가 네트워크 부분을 뜻하는 거였음
앞에서부터 n개 비트까지가 *네트워크 부분이고, 나머지가 **호스트 부분인 거임
* 네트워크 부분: 어느 네트워크에 속하는지 나타냄. ***라우터가 이 부분을 보고 어디로 보내야 할지를 판단함
** 호스트 부분: 같은 네트워크 안에서 개별 장비를 구분함
*** 라우터: 서로 다른 네트워크를 연결해주는 장치. 네트워크 부분이 다르면 패킷을 다음 라우터로 넘김
2진수로 표현하면 □□□□□□□□.□□□□□□□□.□□□□□□□□.□□□□□□□□ 이잖아여?
이 칸에 맞춰서 앞에서부터 네트워크 부분만큼 고정시키고 범위 계산하면 됨
예시를 2개 보겠음
Ex1) 127.0.0.0/8의 IP주소 범위는?
127.0.0.0을 2진수로 나타내면 01111111.00000000.00000000.00000000 인데 칸으로 봤을 때
□□□□□□□□.□□□□□□□□.□□□□□□□□.□□□□□□□□ 에서 앞 8개 칸이 고정된다는 거임
즉, ■■■■■■■■.□□□□□□□□.□□□□□□□□.□□□□□□□□ 같이
■ 부분에 있는 01111111이 고정되고 나머지는 다 바뀔 수 있다는거임
그럼 나머지 □에 0이나 1들 들어오면서
01111111.00000000.00000000.00000000 부터 01111111.11111111.11111111.11111111 까지의 값들이 가능하게 됨
이걸 10진수로 표현하면 127.0.0.0 ~ 127.255.255.255임
그래서 답은 127.0.0.0 ~ 127.255.255.255 !
Ex2) 172.16.0.0/12의 IP주소 범위는?
이번엔 조금 어려운걸로 가져왔음
172.16.0.0을 2진수로 나타내면 10101100.00010000.00000000.00000000 인데 칸으로 봤을 때
□□□□□□□□.□□□□□□□□.□□□□□□□□.□□□□□□□□ 에서 앞 12개 칸이 고정된다는 거임
즉, ■■■■■■■■.■■■■□□□□.□□□□□□□□.□□□□□□□□ 같이
■ 부분에 있는 10101100.0001이 고정되고 나머지는 다 바뀔 수 있다는거
그럼 나머지 □에 0이나 1들 들어오면서
10101100.00010000.00000000.00000000 부터 10101100.00011111.11111111.11111111 까지의 값들이 가능하게 됨
이걸 10진수로 표현하면 172.16.0.0 ~ 172.31.255.255임
그래서 답은 172.16.0.0 ~ 172.31.255.255 !
2. IP주소 분류
IP주소를 크게 사설, 특수, 공인으로 분류할 수 있음
아래와 같은 메커니즘으로 판단하면 됨
사설IP인가? Yes → 사설IP
No → 특수IP인가? Yes → 특수IP
No → 공인IP
이제 각각을 설명해보겠음
2.1 사설IP
아래 IP만 사설 IP임
(사설IP를 사용하는 이유)
10.0.0.0/8
172.16.0.0/12
192.168.0.0/16
2.2 특수IP
아래 IP만 특수IP임
127.0.0.0/8 - 루프백
0.0.0.0 - IP 없음
100.64.0.0/10 - 통신사 NAT
169.254.0.0/16 - Link-local
192.0.2.0/24 - 문서용
198.51.100.0/24 - 문서용
203.0.113.0/24 - 문서용
198.18.0.0/15 - 성능 테스트
224.0.0.0/4 - 멀티캐스트
240.0.0.0/4 (255.255.255.255 제외) - 예약
255.255.255.255 - 브로드캐스트
2.3 공인IP
나머지는 다 공인IP다.
3. NAT
'기본기 다지기 > CS' 카테고리의 다른 글
| [기본이론] 도커 컨테이너 만들기 (0) | 2026.02.02 |
|---|---|
| [CS] 비선형 자료구조(힙, 우선순위 큐, 맵, 셋, 해시테이블) (0) | 2024.12.17 |
| [CS] 인덱스 (1) | 2024.11.26 |
| [CS] CPU 스케줄링 알고리즘 (1) | 2024.11.16 |
| [CS] IP주소 (1) | 2024.11.11 |