NAT, PAT
NAT (Network Address Translation)
IP만 변경
- 주로 사설 IP 주소 하나를 특정 공인 IP 주소로 변경하는 것
- 사설-사설, 사설-공인,공인-공인
- 주로 사설 주소를 공인 주소로 변경할 때 사용한다.
- 동적 NAT : 공인 주소 여러개는 공인 주소 pool에 담겨있고 사설주소가 이를 요쳥했을 경우 pool 에 있는 공인주소를 꺼내어 연결(변경)해 준다. 따라서 공인 주소와 사설주소는 지정되지 않는다. (그때그때마다 할당받는 IP 주소가 다를 수 있음)
- AWS에서 인스턴스를 생성하면 인스턴스 자체는 사설 주소가 할당되고, 동적으로 공인 주소를 할당 받을 수 있다. 하지만 이 공인주소는 인스턴스가 종료 → 실행 된다면 다른 주소를 부여받는다. → 동적 NAT
- 정적 NAT : 특정 사설 주소는 무조건 지정된 공인주소를 사용하도록 정적으로 매핑해두는 기술
- 만약, 서비스를 제공하는 서버라면 항상 지정된 공인주소가 필요할 것이다. 따라서 이러한 경우에는 정적 NAT를 구성해야 한다. 이를 클라우드에서는 “elastic IP@aws”, “floating IP@openstack” 이라는 단어로 사용된다.
- NAT를 사용하면 얻는 이점
- 공인 주소의 고갈을 늦출 수 있다.
- 실제 서버의 주소를 외부에 노출 시키지 않아 방화벽의 기능을 제공한다.
- 이로인해 주소변환 방화벽 이라고도 불린다.
- ISP에 의존적이지 않도록 서버를 구성할 수 있어 ISP가 변경된 이후에도 기존 설정을 유지할 수 있다.
local주소 = 사설주소
global주소 = 공인주소
PAT (Port Address Translation)
IP와 Port번호 변경
- 공인 주소가 한개인 경우 다수의 사설 주소가 한개의 공인주소를 공유하여 주소변경을 하고자 하는 경우에 사용하는 방법
- 공인 주소와 사설 주소를 비교했을 때 공인 주소의 개수가 월등히 적은 경우에는 1:1매핑이 불가능한데, 이 경우에 부족한 공인 주소를 다수의 사설 주소들이 공유하도록 해주는 기술이 PAT이다.
- 리눅스에서 동적 PAT구성하는것을 masquerade라고 한다.
- 정적 PAT
- IP와 Port번호를 둘다 변경 할 수 있다.
- 동적 PAT
- 집에서 공유기 하나로 PC 등을 여러대 사용하고싶을 때 쓰는 방법