요즘 시대에는 PC 뿐만아니라 스마트폰, 노트북, 게임기, 기타 IoT등등 다양한 곳에서 IP를 사용하고 있다.
예전부터 화두되었던 IP 부족문제는 시대가 발전함에 따라 IP 사용량에 비해 턱없이 부족하다.
왜냐면 IP는 중복이 불가능하기 때문에 전세계에서 1개의 IP는 한곳에서 밖에 사용하지 못하기 때문이다.
이러한 IP 부족 문제를 해결하기 위한 방안중 하나가 바로 NAT 이다.
NAT란 무엇인가?
- Network address translation의 약어로 네트워크 주소(IP)를 변환하는 기술이다.
- 내부에서 사설 IP로 통신을 하다가 인터넷에 접속하기 위해선 공인 IP로 변경하여 사용해야 한다.
- 그 이유는 IP 부족 현상을 해결하기 위한 방안으로 사설 IP와 공인 IP로 대역을 나눠서 사용하는데, 회사같은 내부망에서는 사설 IP로 여러곳에서 사용하다 인터넷망에 접속할 때는 공인 IP로 바꿔 통신을 하기 때문이다.
- 사설 IP는 다른 사설망에서 사용이 가능하기 때문에 외부망에서도 사용하면 IP 충돌이 발생하므려 공인 IP로 변환하는데 이러한 작업을 NAT라고 한다.
- NAT 는 IP의 헤더 부분을 체크하여 NAT 테이블에 의해 해당 주소로 바꾼다음 checksum을 다시 계산해 IP의 헤더를 바꾸는 방법으로 동작한다.
NAT의 종류로는 5가지가 존재한다.
1. static NAT
- 내부 IP와 공인 IP를 미리 지정해서 원하는 주소로만 맵핑하는 방식이다.
- 내부IP 와 공인 IP 가 1:1로 매칭되므로 IP 부족 문제의 해결 방법이 되진 않는다
2. Dynamic NAT
- 공인 IP 개수 < 사설 IP 개수로 N:M의 맵핑 방식이다.
- IP 개수가 절약되며 공인 IP사용이 끝나면 다음 대기자가 IP를 사용하기 때문에 지정 방식이 아니며 보안이 뛰어나다.
3. PAT
- 1:N 매칭이다
- 공인 IP 하나와 사설 IP 전부가 매칭되는 방식으로 TCP/UDP의 소스 포트를 사용해서 변환한다. T
'CS > Network' 카테고리의 다른 글
TPC/UDP 그리고 TCP Flag 란? (0) | 2019.11.21 |
---|---|
Port 란? (0) | 2019.10.28 |
탭(Tap) 장비 란? (0) | 2019.10.15 |
핫 스왑(Hot Swap) 이란? (0) | 2019.10.14 |
IP란? (0) | 2019.09.07 |