NAT (Network Address Translation)
@ NAT (Network Address Translation)
@NAT(Network Address Translation) : 주소변환
- 주소 변환
- 주소 부족 문제 해결을 위해 사설 IP를 가진 Client를 외부(Internet)와 통신이 가능하게 한다.
- 보안 향상 ( 내부 사설망은 외부에서 접근이 불가능하다. )
- Dynamic NAT
사설 IP 그룹과 공인 IP 그룹을 그룹 대 그룹을 매핑
사설 IP 주소를 공인 IP 주소로 변환하는 방법
< 역할 >
내부 사설망으로 사용하는 사용자들에게 Internet Access가 가능하게 하다.
=> Overloading(PAT:Port Address Translation) : Dynamic NAT의 일종
하나의 공인 IP와 여러 사설 IP를 일 대 다 기반으로 매핑
주소가 부족한 경우 PAT를 사용하여 하나의 공인 IP를 여러 사설 IP가 Port만 다르게 설정하여 돌아가면서 사용할수 있기 때문에
주소가 부족하더라도 여러사용자들이 하나의 공인 IP을 돌아가면서 사용하기 때문에 주소부족문제가 해결된다.
< 장점 >
1. 보안성 좋음
2. 주소 문제 해결
< 단점 >
1. 외부에서 접근 불가능
==> 그룹 대 그룹 매핑이기 때문에
- Static NAT
하나의 공인 IP와 하나의 사설 IP를 일 대 일 기반으로 매핑
Destination Address를 사설 IP주소로 변환하는 방법
< 역할 >
외부에서 내부 Network로 접근하고자 하는경우에 사용
< 장점 >
1. 외부에서 접근 가능
< 단점 >
1. 보안성 안좋음
2. 주소 문제 해결 못함.
< IP 공유기와 NAT 가 다른점 >
- IP 공유기 : 인터넷 연결이 하나인 공인 IP를 공유하는 개념
- NAT : 일정 범위에 공인 IP주소를 할당 받고 이 주소를 사설 IP와 매핑해서 사용한다.
@Dynamic NAT-PAT 설정방법
- 공인 IP 그룹 생성
>Netmask설정
Router(config)#ip nat pool <name> <start-ip> <end-ip> netmask <Subnetmask>
>Prefix설정
Router(config)#ip nat pool <name> <start-ip> <end-ip> prefix-length <Bit>
- 사설 IP 그룹 생성
Router(config)#access-list <list-number> permit <inside-local> <wildcardmask>
- 공인 IP 그룹과 사설 IP 그룹 매핑
>Dynamic NAT
Router(config)#ip nat inside source list <list-number> pool <name>
>Dynamic NAT-PAT
Router(config)#ip nat inside source list <list-number> pool <name> overload
- Inside Interface Router에 알리기
Router(config-if)#ip nat inside
- Outside Interface Router에 알리기
Router(config-if)#ip nat outside
ex) Dynamic NAT-PAT Example
R1(config)# ip nat pool ABC 220.110.110.1 255.110.110.14 netmask 255.255.255.240
R1(config)# ip nat inside source list 10 pool ABC overload
R1(config)# access-list 10 permit 172.16.1.0 0.0.0.255
R1(config)# interface fastethernet 0/0
R1(config-if)# ip nat inside
R1(config-if)# exit
R1(config)# interface serial 1/0
R1(config)# ip nat outside
>> Dynamic NAT 확인
R1# debug ip nat
R1# show ip nat translations
@Static NAT 설정방법
- 하나의 사설 IP를 하나의 공인 IP로 매핑
Router(config)#ip nat inside source static <inside-local> <inside-global>
- Inside Interface Router에 알리기
Router(config-if)#ip nat inside
- Outside Interface Router에 알리기
Router(config-if)#ip nat outside
ex) Static NAT Example
R2(config)# ip nat inside source static 172.16.2.1 220.110.120.1
R2(config)# interface fastethernet 0/0
R2(config)# ip nat inside
R2(config)# interface serial 1/0
R2(config-if)# ip nat outside
>> Static NAT 확인
R2# debug ip nat
R2# show ip nat translations
< 문제 >
50명이었던 ITBANK직원이 200명으로 증가하면 주소가 부족해졌다. 그래서 주소부족 문제를 해결하기 위해 첫번째 자유롭게 사용할수 있는 사설 IP를 이용하여 모든 직원에 IP를 할당해주었다.
-> 변환 후
!-- ITBANK
conf t
int f0/0
ip add 192.168.1.254 255.255.255.0
end
!-- VMnet
IP Address : 192.168.1.1
Subnetmask : 255.255.255.0
Default Gateway : 192.168.1.254
ITBANK직원이 증가하면서 주소가 부족했기 때문에 사설 IP를 이용하여 모든 직원에 주소를 할당해줬다. 하지만 할당해준 주소가 사설 IP이기 때문에 내부에서의 통신은 가능하나 외부로 나갈수 없다는 문제가 발생하였다. 그래서 이 문제 해결하기 위해 NAT-PAT를 이용하겠다.
@Dynamic NAT-PAT 설정방법
- 공인 IP 그룹 생성
>Netmask설정
Router(config)# ip nat pool <name> <start-ip> <end-ip> netmask <Subnetmask>
>Prefix설정
Router(config)# ip nat pool <name> <start-ip> <end-ip> prefix-length <Bit>
=> 둘중 하나 선택해서 사용
- 사설 IP 그룹 생성
Router(config)# access-list <list-number> permit <inside-local> <wildcardmask>
- 공인 IP 그룹과 사설 IP 그룹 매핑
>Dynamic NAT
Router(config)# ip nat inside source list <list-number> pool <name>
>Dynamic NAT-PAT
Router(config)# ip nat inside source list <list-number> pool <name> overload
- Inside Interface Router에 알리기
Router(config-if)# ip nat inside
- Outside Interface Router에 알리기
Router(config-if)# ip nat outside
Dynamic NAT-PAT Config
*Global IP Group
210.110.20.0/26
210.110.20.0~63
사용가능IP : 210.110.20.1~62
=>name : cisco
=>start-ip : 210.110.20.2
=>end-ip : 210.110.20.62
=>netmask/prefix : 255.255.255.192 / 26
*Private IP Group
192.168.1.0/24
192.168.1.0~255
사용가능IP : 192.168.1.1~254
=> list-number : 1
=> inside-local : 192.168.1.0
=> wildcardmask : 0.0.0.255
*Inside Interface : f0/0
*Outside Interface : s1/0
< 설정 >
>> Netmask
!-- ITBANK
conf t
ip nat pool cisco 210.110.20.2 210.110.20.62 netmask 255.255.255.192
access-list 1 permit 192.168.1.0 0.0.0.255
ip nat inside source list 1 pool cisco overload
int f0/0
ip nat inside
int s1/0
ip nat outside
end
>> Prefix
!-- ITBANK
conf t
ip nat pool cisco 210.110.20.2 210.110.20.62 prefix-length 26
access-list 1 permit 192.168.1.0 0.0.0.255
ip nat inside source list 1 pool cisco overload
int f0/0
ip nat inside
int s1/0
ip nat outside
end
< 확인 >
ITBANK #debug ip nat
C:\>ping 198.0.1.254
*Mar 1 01:13:16.855: NAT*: s=192.168.1.1->210.110.20.2, d=198.0.1.254
*Mar 1 01:13:17.019: NAT*: s=198.0.1.254, d=210.110.20.2->192.168.1.1
*Mar 1 01:13:17.907: NAT*: s=192.168.1.1->210.110.20.2, d=198.0.1.254
*Mar 1 01:13:18.003: NAT*: s=198.0.1.254, d=210.110.20.2->192.168.1.1
*Mar 1 01:13:18.923: NAT*: s=192.168.1.1->210.110.20.2, d=198.0.1.254
*Mar 1 01:13:18.963: NAT*: s=198.0.1.254, d=210.110.20.2->192.168.1.1
*Mar 1 01:13:19.939: NAT*: s=192.168.1.1->210.110.20.2, d=198.0.1.254
*Mar 1 01:13:20.091: NAT*: s=198.0.1.254, d=210.110.20.2->192.168.1.1
ITBANK# show ip nat translation
Pro Inside global Inside local Outside local Outside global
icmp 210.110.20.2:512 192.168.1.1:512 198.0.1.254:512 198.0.1.254:512
사설 IP를 사용하는 사용자들이 Internet Access할수 있게 하기 위해 NAT-PAT 이용하여 Internet Access가 가능하게 됐다. 하지만 외부에서 내부로의 접근은 불가능하다.
내부에서 외부 Access => O
C:\>ping 198.0.1.254
Reply
외부에서 내부 Access => X
ISP#ping 210.110.20.2
.....
그래서 지금 현재 상태로는 외부에서의 접근이 불가능하다. 그런데 우리 ITBANK 분점과의 통신이 필요할때가 생기는데 이렇게 NAT-PAT를 사용하게 되면 본점에서밖에 요청을 못한다. 그래서 분점에서도 본점으로 요청을 할수 있게 하여라
@Static NAT 설정방법
- 하나의 사설 IP를 하나의 공인 IP로 매핑
Router(config)#ip nat inside source static <inside-local> <inside-global>
- Inside Interface Router에 알리기
Router(config-if)#ip nat inside
- Outside Interface Router에 알리기
Router(config-if)#ip nat outside
Static NAT Config
*inside-local : 192.168.1.1
*inside-global : 210.110.20.1
*inside-interface : f0/0
*outside-interface : s1/0
!-- ITBANK
conf t
ip nat inside source static 192.168.1.1 210.110.20.1
int f0/0
ip nat inside
int s1/0
ip nat outside
end
< 확인 >
ITBANK#debug ip nat
C:\>ping 198.0.1.254
*Mar 1 01:27:41.155: NAT*: s=192.168.1.1->210.110.20.1, d=198.0.1.254
*Mar 1 01:27:41.451: NAT*: s=198.0.1.254, d=210.110.20.1->192.168.1.1
*Mar 1 01:27:42.115: NAT*: s=192.168.1.1->210.110.20.1, d=198.0.1.254
*Mar 1 01:27:42.223: NAT*: s=198.0.1.254, d=210.110.20.1->192.168.1.1
*Mar 1 01:27:43.179: NAT*: s=192.168.1.1->210.110.20.1, d=198.0.1.254
*Mar 1 01:27:43.223: NAT*: s=198.0.1.254, d=210.110.20.1->192.168.1.1
*Mar 1 01:27:44.199: NAT*: s=192.168.1.1->210.110.20.1, d=198.0.1.254
*Mar 1 01:27:44.223: NAT*: s=198.0.1.254, d=210.110.20.1->192.168.1.1
ITBANK#show ip nat translation
Pro Inside global Inside local Outside local Outside global
--- 210.110.20.1 192.168.1.1 --- ---
내부에서 외부 Access => O
C:\>ping 198.0.1.254
Reply
외부에서 내부 Access => O
ISP#ping 210.110.20.1
!!!!!
*Mar 1 01:29:41.663: NAT*: s=211.240.10.2, d=210.110.20.1->192.168.1.1
*Mar 1 01:29:41.667: NAT*: s=192.168.1.1->210.110.20.1, d=211.240.10.2
*Mar 1 01:29:41.843: NAT*: s=211.240.10.2, d=210.110.20.1->192.168.1.1
*Mar 1 01:29:41.919: NAT*: s=192.168.1.1->210.110.20.1, d=211.240.10.2
*Mar 1 01:29:42.091: NAT*: s=211.240.10.2, d=210.110.20.1->192.168.1.1
*Mar 1 01:29:42.155: NAT*: s=192.168.1.1->210.110.20.1, d=211.240.10.2
*Mar 1 01:29:42.187: NAT*: s=211.240.10.2, d=210.110.20.1->192.168.1.1
*Mar 1 01:29:42.239: NAT*: s=192.168.1.1->210.110.20.1, d=211.240.10.2
*Mar 1 01:29:42.347: NAT*: s=211.240.10.2, d=210.110.20.1->192.168.1.1
*Mar 1 01:29:42.371: NAT*: s=192.168.1.1->210.110.20.1, d=211.240.10.2
'IT > Network' 카테고리의 다른 글
CDP (Cisco Discovery Protocol) (0) | 2019.05.27 |
---|---|
DHCP (Dynamic Host Configration Protocol) (0) | 2019.05.27 |
ACL(Access Control List) (0) | 2019.05.27 |
Cisco Switch 시스코 스위치 장비 초기화 (0) | 2019.05.27 |
Classfull 과 Classless 하게 광고할 때 (0) | 2019.05.27 |
댓글