NAT (Network Address Translation)
- 주소 변환 기술
- 공인 IP 부족 현상을 완화하기 위해 제안된 기술
- 사설 IP를 지정하여 intranet 내부에서만 임의의 IP를 사용할 수 있게 한다.
- 중복된 IP를 사용할 수 있으므로 사설 IP를 이용한 공용 네트워크 통신을 제한한다.
- intranet에서 공용 네트워크에 접근하기 위해 네트워크를 연결하는 Router에서 사설 IP를 공인IP로 변환 시켜 내보내야 한다.
NAT 사용 목적
- IPv4 부족현상 완화
- 공인 IP 사용 비용 감소
- 보안
NAT 동작 방식
NAT 종류
- Static NAT
- NAT Table의 변환 정보를 관리자가 직접 지정하고 관리한다. -> 정보가 고정 된다.
- 사설 IP(1):공인 IP(1)
- Server에 Client가 접근할 수 있게 한다.
- Dynamic NAT
- NAT Table의 변환 정보를 장비가 직접 생성하고 관리한다.
- NAT 동작을 수행해야 하는 조건에 맞는 Packet을 전달받았을 때 변환 된다.
- 사설 IP(n):공인 IP(m) -> 동시에 통신 가능한 장비가 공인 IP수로 제한 된다.
- 내부 호스트장비의 공용 네트워크 통신을 위해 사용된다.
- NAT Table의 변환 정보를 장비가 직접 생성하고 관리한다.
- NAT-PAT(Port Address Translation)
- 일반 Dynamic NAT의 한계를 극복
- NAT동작이 수행될 때 PoRT주소를 변환정보 식별용으로 함께 사용 한다.
- 사설 IP(n):공인IP(1) -> 하나의 공인 IP로 다수의 사설 IP를 이용한 통신이 지원된다.
- 일반 Dynamic NAT의 한계를 극복
Static NAT
- 공인 IP로 전달된 Client의 요청을 내부 Server로 전달할 수 있도록 목적지 주소를 변환하는 기능
- Server에 할당된 사설 IP 하나당 공인 IP를 할당 -> 1:1
Static NAT 설정
- NAT 정책 설정
R1(config)# ip inside source static [사설IP] [공인 IP]
- interface 역할 결정
- 사설 네트워크를 연결하는 인터페이스 -> inside
R1(config)# interface [inside interface]
R1(config-if)# ip nat inside
- 공용 네트워크를 연결하는 인터페이스 -> outside
R1(config)# interface [outside interface]
R1(config-if)# ip nat outside
NAT 정보 확인
- NAT Table 변환 정보 확인
Pro | NAT변환된 트래픽 종류 | ||
Inside | 사설네트워크 | Local ———— Global |
변환 전 ————– 변환 후 |
Outside | 공인 네트워크 | Local ———— Global |
변환 전 ————– 변환 후 |
- NAT 설정 정보 확인
- NAT 동작과정 확인
- NAT Table 변환정보 초기화
- NAT Table 한 항목 삭제
Dynamic NAT
- 사설 네트워크 내부의 호스트 통신을 위해 사용 된다.
- 다수의 사설 IP의 지정된 개수의 공인 IP로 변환 -> n:m(동시 통신 가능 ->m대)
Dynamic NAT 설정
- 조건 정책 설정
- 사설 IP 네트워크 정보 -> ACL
R1(config)# access-list 1 permit [사설 IP] [wildcard mask]
- 변환에 사용할 공인 IP 정보 -> Pool
R1(config)# ip nat pool [name] [start IP] [end IP] netmask [subnet mask]
- NAT 정책 설정
R1(config)# ip nat inside source list [ACL number] pool[pool name]
- interface 역할 결정
- 사설 네트워크를 연결하는 인터페이스 -> inside
R1(config)# interface [inside interface]
R1(config-if)# ip nat inside
- 공용 네트워크를 연결하는 인터페이스 -> outside
R1(config)# interface [outside interface]
R1(config-if)# ip nat outside
NAT-PAT(Port Address Translation)
- 사설 네트워크 내부의 호스트 통신을 위해 사용 된다.
- 다수의 사설 IP의 하나의 공인 IP로 변환 -> n:1
NAT-PAT 설정
- 조건 정책 설정
- 사설 IP 네트워크 정보 -> ACL
R1(config)# access-list 1 permit [사설 IP] [wildcard mask]
- 변환에 사용할 공인 IP 정보 -> Pool
- NAT 정책 설정에서 interface로 지정 할 경우
R1(config)# ip nat pool[name] [start IP] [ens IP] netmask [subnet mask]
- NAT 정책 설정(두개 중 하나만 설정)
- 공인 IP Pool을 이용해 설정 할 경우
R1(config)# ip nat pool [name] [start IP] netmask [subnet mask]</b>
- 공인 IP가 설정된 Interface를 이용해 설정 할 경우
R1(config)# ip nat inside source list [ACL number] interface [outside interface]
- Interface 역할 결정
- 사설 네트워크를 연결하는 인터페이스 -> inside
R1(config)# interface [inside interface]
R1(config-if)# ip nat inside
- 공용 네트워크를 연결하는 인터페이스 -> outside
R1(config)# interface [outside interface] R1(config-if)# ip nat outside