Notice
Recent Posts
Recent Comments
Link
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
Tags
more
Archives
Today
Total
관리 메뉴

나의 IT일지

NAT 본문

네트워크/Cisco

NAT

세레프 2023. 5. 21. 20:34

 데이터를 전송하기 위해서는 목적지를 식별할 수 있는 식별자가 필요하며, MAC주소와 IP주소가 해당 역할을 한다.

 Subnet IP주소가 같은 네트워크에서의 전송은 LAN(Ethernet)을 사용하기에 MAC주소를 기반으로 목적지에게 데이터를 전송한다. 반면, Subnet IP주소가 다른 네트워크에서의 전송LAN(Ethernet)에서 MAC 주소 테이블을 통해 경로를 판단해서 데이터를 해당 목적지에 전송하거나 WAN(HDLC,PPP,F/R)에서 라우팅 테이블을 통해 경로를 판단해서 데이터를 전송한다.

같은 네트워크에서의 전송 다른 네트워크에서의 전송

 

 이렇게 데이터를 전송하는 과정에서 IP주소는 중요한 역할을 한다. 그런데 이러한 IP주소도 갯수가 한정되어 있으며, 해당 회사나 가정에 네트워크 주소를 부여할 때, 2^n개의 사용가능한 IP주소를 부여 하기에 버려지는 IP주소도 많다. 그래서 버려지는 IP주소를 없애고자 subnetting 기술을 사용해서 부여하는 IP주소의 수를 자유롭게 조절할 수 있게 된다.

 

IP주소

네트워크를 사용하는 터미널에는 식별자를 가진다. 식별자란 기기를 구분하기 위해 사용하는 번호로, 3계층에서 식별하는 IP주소와 2계층에서 식별하는 MAC주소가 있다. MAC주소 : NIC카드에 할당

my-it-diary.tistory.com

 하지만 subnetting 기술을 통해 IP주소를 나눠서 부여하여도 여전히 IP주소에 비해 사용자가 많다. 그래서 현재 공인 IP주소를 사설 IP주소로 변환하는 기술인 NAT를 사용해서  IP 주소 부족 현상해소하고 있다. 

 

NAT

 NAT사설 IP주소를 공인 IP주소로 변환하는 기술로, 내부 네트워크(inside)에서는 사설 IP주소를 사용하다가, 외부 네트워크(outside)로 데이터를 전송하는 경우에, 사설 IP주소를 공인 IP주소로 변환한다. 

 NAT를 설정하는 방법관리자가 직접 사설 IP주소와 공인 IP주소의 변환시키는 정적 NAT사설 IP주소 범위와 공인 IP주소 범위를 정하고 범위에 속해있는 사설 IP주소와 공인 IP주소를 자동적으로 변환시키는 동적 NAT이 있다.

 이때, NAT사설 IP주소를 공인 IP주소로 변환할 때, 1대 1로 변환된다. 즉, 여러 개의 사설 IP주소를 하나의 공인IP주소로 변환하지 않으며, 서로 다른 공인IP주소로 변환이 된다.

 

공인 IP주소, 사설 IP주소

 NAT이란 공인 IP주소과 사설 IP주소를 1대 1로 변환하는 기술이며, 사용하는 IP 주소의 갯수는 변화하지 않는다. 이때, 사설 IP주소와 공인 IP주소는 무엇일까?

 

 공인 IP주소 ISP가 AP에게 부여하는 외부와 통신이 가능한 IP주소로, 사설 IP주소와 달리 고유한 IP주소값을 갖는다. 반면, 사설 IP 주소 내부에서만 통신을 하기 위해 사용하는 IP주소로, 중복적인 IP주소값을 갖고 있기에, 외부와 통신이 불가능하다.

 

 사설 IP 주소는 국제 번호부여단체에서 공인 IP주소로 사용할 수 없는 IP주소 대역에서 있는 IP주소를 사용하며, AP(Address point)에서 NAT기능을 이용해서 공인 IP주소로 변환해야 외부와 통신이 가능하다. 

Class 사설 IP영역
A 10.0.0.0~10.255.255.255
B 172.16.0.0~172.31.255.255
C 192.168.0.0~192.168.255.255

  즉, 외부 네트워크에서 통신하기 위해서는 공인 IP주소가 필요하며, 내부 네트워크에서 사용하는 사설 IP주소를 NAT를 사용해서 공인 IP주소로 변환해서 사용한다.

 

 이때, NAT를 사용하게 되면 실제 출발지 주소가 아닌 다른 주소로 변환되어서 외부 네트워크에 사용되기 때문에, 내부 네트워크 정보가 공개하지 않는다.

 즉, 사설 IP주소는 공인 IP주소로 변환되어서 사용되기 때문에, 사설 IP주소 같아도 공인 IP 주소가 다르면 외부 네트워크에서는 서로 다른 IP주소로 인식 된다. 그래서, 사설IP주소는 중복적으로 사용할 수 있고 외부 네트워크에서는 통신을 할 수 없으며, 포트 포워딩기술을 사용하지 않는 이상, 외부 네트워크에서 해당 사설 IP주소로는 접근할 수 없다. 

 

정적 NAT

 정적 NAT이란 Inside Local IP 주소(사설 IP주소)와 Inside Global IP주소(공인 IP주소)에 1대 1 맵핑을 하도록 설정하는 NAT으로, 호스트가 변하지 않은 공인 IP주소를 가져야 하는 경우에 사용한다. 그래서 해당 방법은 포트 포워딩 기술을 구현할 때 사용한다. 

  • ip nat inside source static [사설 IP주소] [공인 IP주소] : 외부 네트워크와 통신할 때 Source IP주소가 사설 IP주소일 경우, 공인 IP주소로 변경해서 전송
  • ip nat inside : 해당 인터페이스를 내부 네트워크에 소속    →    사설 IP주소로 데이터가 수송되는 곳
  • ip nat outside :  해당 인터페이스를 외부 네트워크에 소속    →    공인 IP주소로 데이터가 전송되는 곳
  • show ip nat translations : ip주소 변환 테이블 확인
Router(config)#ip nat  inside source static 192.168.10.2 1.1.12.3 
Router(config)#int fa0/0
Router(config-if)#ip nat inside
Router(config-if)#int se0/0/0
Router(config-if)#ip nat outside

show ip nat translations

Inside Global 호스트 공인 IP주소
Inside Local 호스트 사설 IP주소
Outside Local 외부 네트워크에서의 목적지 호스트 IP주소 (목적지 호스트 IP주소 공인 IP주소)
Outside Global 내부 네트워크에서의 목적지 호스트 IP주소 (목적지 호스트 IP주소 사설 IP주소)

 

동적 NAT

 동적 NAT Inside Local IP 주소그룹의  Inside Local IP 주소 하나와 Inside Global IP주소그룹의 Inside Global IP주소하나가 자동적으로 1대 1 맵핑이 되도록 설정하는 NAT으로, 공인 IP 그룹과 사설 IP그룹이 N대 N으로 맵핑한다. 그래서 사설망에서 외부망으로 접속할 때 해당 방법을 사용한다.

  • access-list [번호] permit [사설 네트워크IP주소] [와일드 마스크] : 사설 IP주소 범위 생성
  • ip nat inside pool [이름] [시작 공인 IP주소] [마지막 공인 IP주소] netmask [서브넷 마스크] : 공인IP주소 풀 생성
  • ip nat inside source list [사설 IP주소 범위 리스트 번호] pool [공인 IP주소 풀 이름] : 외부 네트워크와 통신할 때 Source IP주소가 사설 IP주소일 경우, 공인 IP주소로 변경해서 전송
  • ip nat inside : 해당 인터페이스를 내부 네트워크에 소속    →    사설 IP주소로 데이터가 수송되는 곳
  • ip nat outside :  해당 인터페이스를 외부 네트워크에 소속    →    공인 IP주소로 데이터가 전송되는 곳
  • show ip nat translations : ip주소 변환 테이블 확인
Router(config)#ip nat pool cisco 1.1.12.3 1.1.12.150 netmask 255.255.255.0 	
Router(config)#access-list 1 permit 192.168.10.0 0.0.0.255			
Router(config)#ip nat inside source list 1 pool cisco
Router(config)#int fa0/0
Router(config-if)#ip nat inside
Router(config-if)#int se0/0/0
Router(config-if)#ip nat outside

와일드 마스크
 서브넷 마스크과 같이 네트워크 주소와 호스트 주소를 구분하는 것으로, 서브넷 마스크에서는 0을 호스트 부분, 1을 네트워크 부분으로 정의한다면, 와일드 마스크는 1을 호스트 부분, 0을 네트워크 부분으로 정의 한다. 추가적으로 서브넷 마스크는 0과 1이 연속적으로 위치해야 하지만 와일드 마스크는 연속적이지 않아도 된다.
 즉, 서브넷 마스크는 네트워크 주소를 정한다면, 와일드 마스크는 네트워크 주소에 속한 호스트의 범위를 구한다.

 

PAT

 NAT사설 IP주소와 공인 IP주소가 1대 1로 변환이 되기에, 사용하는 IP 주소의 갯수는 변화하지 않는다. 그렇다면 IP 주소 부족 현상을 NAT기술로 어떻게 해결하는 것일까? 다수의 사설 IP주소를 하나의 공인 IP주소로 변환하는 기술인 PAT는 NAT를 통해 구현되고 있다.

 PAT란 공인 IP주소에 포트번호(식별자)를 할당해서 다수의 사설 IP주소를 하나의 공인 IP주소로 변환하는 기술로,  Inside Local IP 주소그룹중의 Inside Local IP 주소 하나와 Inside Global IP주소 맵핑이 되도록 설정한다. 이때, 같은 공인 IP주소를 사용하더라도, 호스트마다 포트번호를 다르게 설정하기 때문에, 내부 호스트 별 packet을 구분할 수 있다. 

 

  • access-list [번호] permit [사설 네트워크IP주소] [서브넷 와일드] : 사설 IP주소 범위 생성
    • 서브넷 와일드는 서브넷 마스크의 반대 개념 : 호스트를 정의할 떄 사용
  • ip nat inside pool [이름] [공인 IP주소] [공인 IP주소] netmask [서브넷 마스크] : 공인IP주소 풀 생성, 이떄 공인 IP주소는 하나만 사용할 것이니 범위를 공인 IP주소 1개로 생성
  • ip nat inside source list [사설 IP주소 범위 리스트 번호] pool [공인 IP주소 풀 이름] : 외부 네트워크와 통신할 때 Source IP주소가 사설 IP주소일 경우, 공인 IP주소로 변경해서 전송
  • ip nat inside : 해당 인터페이스를 내부 네트워크에 소속    →    사설 IP주소로 데이터가 수송되는 곳
  • ip nat outside :  해당 인터페이스를 외부 네트워크에 소속    →    공인 IP주소로 데이터가 전송되는 곳
  • show ip nat translations : ip주소 변환 테이블 확인
Router(config)#ip nat pool cisco 1.1.12.3 1.1.12.3 netmask 255.255.255.0 	
Router(config)#access-list 1 permit 192.168.10.0 0.0.0.255			
Router(config)#ip nat inside source list 1 pool cisco overload
Router(config)#int fa0/0
Router(config-if)#ip nat inside
Router(config-if)#int se0/0/0
Router(config-if)#ip nat outside

'네트워크 > Cisco' 카테고리의 다른 글

게이트웨이 이중화  (0) 2023.05.29
동적 라우팅 작업 - RIP  (0) 2023.05.28
정적 라우팅 작업  (0) 2023.05.20
라우터 DHCP  (0) 2023.05.15
WAN  (0) 2023.05.14
Comments