카테고리 없음

22일차

pulttaegi 2026. 6. 1. 09:02
반응형

1. Static NAT


[ in과 out 설정 ] R2

Static NAT의 in과 out을 지정해준다. 안쪽으로 가면 in 바깥쪽으로 가면 out으로 설정하면 된다.


[ 내부 IP를 외부 공인 IP로 전환 ] R2

나머지도 마찬가지의 방법으로 위와 같이 설정해준다.

 

 

 

중간에 교환을 해주는 IP를 통함
debug ip nat을 사용하면 R2로 ping을 보냈을때 debug 되는 내용을 볼 수 있다.


출발지 10.10.10.10이 2.2.2.100으로 바꿔었다. 사설 IP가 공인 IP로!
이를 기억해놨다가 다시 10.10.10.10에게 돌려줌

 

사설 IP인 10.10.10.10이 외부 인터넷과 대화하고 싶을 때,
공인 IP인 2.2.2.100이 '통역사' 역할을 해주어 통신이 가능하게 만드는 것
즉, 공인 IP인 '2.2.2.100을 중간에 끼고 통해서 통신을 한다!'

DNAT(static)

web 2.2.2.100

dns 2.2.2.200

으로 설정된 상태임


pool: 범위

가운데의 R0이 인터넷이됨

설정된 것을 확인 가능함
위에서 설정된 허용된 list 1을 가져와서 설정한다.

 

1.1.1.1로 ping이 되는 것을 확인 가능함
R1과 R2에 (디폴트)정적라우팅을 해준다.
정적 라우팅 명령어

 

이제 2.2.2.100으로도 통신이 되는 것을 확인 가능함


DNS의 주소가 2.2.2.200

즉, 해당 환경에서 실제 통신은 R0, R1, R2 사이에서만 이뤄지고 사설 IP는 NAT으로 인해서 보호받고 있음

클라이언트 PC들이 도메인 주소(예: http://www.naver.com)를 IP로 바꾸기 위해 DNS 서버를 찾아가야 하는데, 사설 IP(10.10.10.20)로는 라우터들을 통과해 갈 수가 없습니다.
따라서 인터넷 세상에서 통용되는 공인 IP 주소인 2.2.2.200을 DNS 서버 주소로 지정해야만 패킷이 라우터를 타고 올바르게 DNS 서버까지 배달될 수 있습니다.
즉, 사설 IP로는 지정이 불가능하기 때문!

2. PAT 

 

ping이 되는것을 확인 가능하다.


3. NAT 이론 및 설정방법

NAT (network address translation)  네트워크주소변환

사설에서 공인IP(SNAT) 또는 
공인에서 사설 IP로 변환(DNAT)하기 위한 기법
공인 IP주소의 낭비를 막기 위해 고안
보안적으로도 권장


   사설   공인
컴(여러대) 라우터(공유기) 인터넷
사설(여러개) NAT 공인IP (1개)
inside  Local   NAT inside Global
   inside outside

=====================================================================================
NAT의 종류

[static NAT]   ( 사설과 공인의 1:1 매칭  DNAT)
사설 공인
192.168.10.1 ========> 10.10.10.10
192.168.10.2 ========> 10.10.10.20

[Dynamic NAT] 다수의 컴퓨터 => 다수의 공인아이피

    사설 공인 Pool
192.168.10.1 ==무작위====>    10.10.10.10
192.168.10.2 10.10.10.20
192.168.10.3 10.10.10.30
192.168.10.4 10.10.10.40

[PAT]   다수의 컴퓨터  =>  1개 공인
사설 공인 (port)
192.168.10.1 10.10.10.10 (port:4444)
192.168.10.2 10.10.10.10 (port:2222)
192.168.10.3 10.10.10.10 (port:1111)
192.168.10.4 10.10.10.10 (port:3333)

한개의 공인아이피로 각 사설 아이피가 포트변환후 NAT매칭
===================================================
NAT 쓸때 주의할점


1#IP변환에 사용할 전역 주소풀 설정(dynamic,static)
ip nat pool [이름]  [시작 IP] [마지막 IP] [netmask]

2#내부에서 IP변환 허용 주소 standard access-list설정
access-list 번호지정 permit [출발지주소] [wildcard]

3#동적변환을 수립하기 위한 nat설정(PAT)
ip nat inside source list [acl번호] pool 이름 overload
================================================
NAT 는인터페이스에 in out 부터 주고 시작
 
ip nat inside    (사설대역) NAT로 들어오는 인터페이스

ip nat outside    (공인대역)  NAT로 나가는 인터페이스

[static nat] 특정 사설IP를 특정 공인 IP에 매칭
 
특징: 공인 <==> 사설간의 왕래가 자유로워
       서버의 DMZ의 DNAT에서 많이 활용

source 출발 destination 도착


ip  nat inside source static 10.10.10.10  1.1.1.6




*nat의 패킷 확인

debug ip nat 

*dns 확인
ip name-server 1.1.1.6
ip domain-lookup

================================================


*** 사설끼리 통신이 안되는 이유 **** 

인터넷 종단점의 라우터에서 
ip route 0.0.0.0   0.0.0.0   (인터넷 GW) 로 보내지만
인터넷에서는 사설로 라우팅을 하지 않는다
고로 공인끼리는 통신이 되지만 사설로는 도달하지 않음
=================================================
wildcard mask란? 
넷마스크의 반대개념(연속되지 않은 네트워크도 표현가능) 으로 호스트의 개수를 표현
네트워크 정책을 좀더 유연하게 설정하기 위한 기법이다.

[dynamic nat]  딱한번만 합니다.

1. 사설아이프 범위 설정
[network]    [wildcardmask]
access-list  1  permit 20.20.20.0     0.0.0.255
                                
2. 공인아이피 범위

ip nat pool korea    2.2.2.10  2.2.2.12 netmask 255.255.255.0

3. NAT설정

ip nat inside source list 1 pool korea
             사설출발     =>        공인 

debug ip nat 확인
==================================================================================     
  ****
[PAT-NAT] 다수의 사설IP를 하나의 공인IP로 할당 (port로 분류)

#사설  IP 범위지정

access-list 1 permit 10.10.10.0  0.0.0.255

# 공인 IP 범위지정 (따로안줌)

#NAT설정
ip nat inside sorce list 1   int fa0/1 overload

NAT 순서
static 이 최우선  >  동적 NAT (PAT포함)


============================================================
** ip nat in 과 out 확실하게 주고 시작할것**

LINUX = 
vmnet 4 번     
IP 는  40.40.40.40
NETMASK  255.255.255.0
GATEWAY  40.40.40.254
DNS1=168.126.63.1


NAT 설정 vmnet8 구름    

IP 192.168.10.15/24


NAT를 해서 해당 IP로 LINUX에서 NAVER로 들어갈수 잇도록 설정


=======================================================

router설정]   fa0/0 = out   fa0/1 = in


en
conf t
int fa0/0
ip add 192.168.10.15 255.255.255.0
ip nat out
int fa0/1
ip add 40.40.40.254 255.255.255.0
ip nat in
exit
ip route 0.0.0.0 0.0.0.0 192.168.10.2
aceess-list 1 permit 40.40.40.0 0.0.0.255
ip nat inside source list 1  int fa0/0 overload
end
copy run sta


리눅스설정]  시행하기전에 네트워크 카드 vmnet4로 변경
cd /etc/sysconfig/network-scripts/
ls -l |grep ens
vi ifcfg-ens33

DEVICE=ens33
IPADDR=40.40.40.40
NETMASK=255.255.255.0
GATEWAY=40.40.40.254
ONBOOT=yes
DNS1=168.126.63.1

:wq 저장

service network restart
ifconfig |grep 40

-t 옵션을 사용하면 끊임없이 출력이 되는 것을 볼 수 있음

[ debug ]

구분 설명
debug ip nat  
no debug ip nat   
no debug all  모든 디버그를 끔

 

 

 

debug ip nat으로 디버그를 끌 수 있음
no debug all으로 모든 디버그를 끌 수 있음


< 실습 문제 > 다음과 같은 NAT 설정을 완료하자

PAT 설정시 주의사항
STATIC 설정시 주의사항


GNS 환경 설정

R1
ip dhcp excluded-address 10.10.10.1 10.10.10.99
ip dhcp excluded-address 10.10.10.111 10.10.10.254
!
ip dhcp pool sevas
   network 10.10.10.0 255.255.255.0
   dns-server 168.126.63.1
   default-router 10.10.10.200
!
interface FastEthernet0/0
 ip address 100.100.100.100 255.255.255.0
!
interface FastEthernet1/0
 ip address 10.10.10.200 255.255.255.0
 
 루트
 S*   0.0.0.0/0 [1/0] via 100.100.100.254
R2
interface FastEthernet0/0
 ip address 192.168.10.17 255.255.255.0
 ip nat outside
!
interface FastEthernet1/0
 ip address 100.100.100.254 255.255.255.0
 ip nat inside
 !
R2(config)#ip nat inside source list 1 interface fastEthernet 0/0 overload
R2(config)#access-list 1 permit 10.10.10.0 0.0.0.255

루트
S       10.10.10.0 [1/0] via 100.100.100.100
S*   0.0.0.0/0 [1/0] via 192.168.10.2

 

VMnet 8의 게이트웨이가 192.168.10.2로 설정되어있기 때문에 디폴트 라우팅시에 해당 IP로 하는 것이다.

 

 

clear ip dhcp binding *을 진행하고 와이어 샤크를 확인한다.

선 우클릭, Start capture 클릭

 service NetworkManager restart
 nmcli networking off
 nmcli networking on
위의 명령어 사용시에 와이어샤크 dhcp에 dora가 나오는지 본다.


이쪽을 추가해서 설정해보자.


out은 공인 IP 방향으로 설정하면 된다.

PC1> ip 20.20.20.20/24 20.20.20.254
PC1> ip dns 168.126.63.1
PC1> show ip 

! 1. 인터페이스 IP 및 NAT 지정
R3(config)# int fa1/0
R3(config-if)# ip add 20.20.20.254 255.255.255.0
R3(config-if)# ip nat inside
R3(config-if)# no sh

R3(config)# int fa0/0
R3(config-if)# ip add 200.200.200.200 255.255.255.0
R3(config-if)# ip nat outside
R3(config-if)# no sh
R3(config-if)# exit

R3#ping 20.20.20.20 // ping 되는지 확인


! 2. 기본 라우팅 설정
R3(config)# ip route 0.0.0.0 0.0.0.0 200.200.200.254
R3(config)#end

! 3. NAT 라이선스 및 ACL 설정 (PAT 설정)
R3(config)# access-list 1 permit 20.20.20.0 0.0.0.255
R3(config)# ip nat inside source list 1 interface fa0/0 overload

! 4. 설정 저장
R3# copy run sta
R2# config t

! 1. 각 인터페이스 IP 및 NAT 지정 (show run 기준 전체 반영)
R2(config)# int fa0/0
R2(config-if)# ip add 192.168.10.17 255.255.255.0
R2(config-if)# ip nat outside
R2(config-if)# no sh

R2(config)# int fa1/0
R2(config-if)# ip add 100.100.100.254 255.255.255.0
R2(config-if)# ip nat inside
R2(config-if)# no sh

R2(config)# int fa2/0
R2(config-if)# ip add 200.200.200.254 255.255.255.0
R2(config-if)# ip nat inside
R2(config-if)# no sh
R2(config-if)# exit

! 2. 정적 라우팅 설정 (기존 명령어에서 누락되었던 부분)
R2(config)# ip route 0.0.0.0 0.0.0.0 192.168.10.2
R2(config)# ip route 10.10.10.0 255.255.255.0 100.100.100.100

! 3. ACL 및 외부 인터넷용 NAT 설정 (기존 명령어에서 누락되었던 부분)
R2(config)# access-list 1 permit 10.10.10.0 0.0.0.255
R2(config)# access-list 1 permit 20.20.20.0 0.0.0.255
R2(config)# ip nat inside source list 1 interface fa0/0 overload
R2(config)# end

! 4. 설정 저장
R2# copy run sta

R3(config)#no access-list 1 permit 20.20.20.0 0.0.0.255
R3#show ip access-lists

 

Host1 쪽 (10.10.10.0): 라우터 간에 순수 라우팅만 처리하여, Host1이 속한 원래의 사설 IP 대역(10.10.10.0)이 라우터 R2까지 그대로 전달되기 때문입니다.
PC1 쪽 (200.200.200.0): 중간 라우터(R3)에서 NAT가 적용되어, PC1의 원래 IP(20.20.20.0 대역)가 R2와 연결된 외부 대역인 200.200.200.0 대역으로 변환되어 R2로 들어오기 때문입니다.
최종적으로 라우터 R2는 이 두 가지 서로 다른 경로(f1/0 f2/0)를 통해 들어오는 트래픽을 구분해 상위 인터넷 공간(Cloud 2, VMnet8)으로 내보내는 역할을 맡게 됩니다.

 

 

 







































































































 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

반응형