1. DHCP(Dynamic Host Configuration Protocol)
- IP 주소 자동 할당 기능을 수행하는 네트워크 서비스
- 서버와 클라이언트간에 IP 주소 임대 서비스
- DHCP 구성 요소 : 서버, 클라이언트, DHCP Relay Agent
- DHCP 동작 과정 : 4개 메세지를 이용하여 4단계 진행
1) DHCP 동작 단계(브로드 캐스트로 전송하기 때문에 같은 네트워크에서만 전달이 가능하고 외부로는 x)
SA 68 SA 67
DA 67 DA 68
----------------- UDP ----------------- UDP
SA 0.0.0.0 SA 192.168.1.254
DA 255.255.255.255 DA 255.255.255.255
----------------- IP ----------------- IP
클라이언트(UDP 68) 서버(UDP 67)
0.0.0.0 192.168.1.254
Discover ---------------------------------->
<-------------------------------- Offer
(IP 주소 정보 할당)
Request ---------------------------------->
(IP 할당 요청) <-------------------------------- Ack
(IP 할당 승인)
discover -> 서버를 찾는 메시지로 DHCP서버가 있는지 없는지 확인하기 위한 것
2) DHCP 서버에 설정할 내용
- IP 주소 정보
- 서브넷 마스크
- 기본 게이트웨이
- DNS 서버 주소 정보
- 임대 기간
예제 맨 아래 파일을 참고
169.~ : IP를 할당받지 못했다는 것을 알 수 있다
R1에서 DHCP 서버를 구성하여, A~C PC에게 IP 주소 정보를 할당하도록 한다.
- 제외 IP 주소 범위 : 192.168.1.253, 192.168.1.254
- IP 주소 정보 : 192.168.1.0 (192.168.1.1~ 192.168.1.254)
- 서브넷 마스크 : 255.255.255.0
- 기본 게이트웨이 : 192.168.1.254
- DNS 서버 주소 정보 : 192.168.1.253
- 임대 기간 : 무제한
@ R1
ip dhcp excluded-address 192.168.1.253 192.168.1.254
! 제외한 주소 중에 시작주소 끝주소
ip dhcp pool Local-192
network 192.168.1.0 255.255.255.0
default-router 192.168.1.254
dns-server 192.168.1.253
lease infinite
- A~C 에서 'dhcp'를 클릭한다.
할당되는 것 확인
R1#show ip dhcp binding
IP address Client-ID/ Lease expiration Type
Hardware address
192.168.1.1 00D0.BCB4.E4E4 -- Automatic
192.168.1.2 0090.216A.0A2D -- Automatic
192.168.1.3 0060.5C84.02D1 --
으로도 확인이 가능하다.
주의!!
ex) 192.168.1.2와 192.168.1.254만 제외한다면
ip dhcp excluded-address 192.168.1.2 192.168.1.254
! 제외한 주소 중에 시작주소 끝주소
이렇게 쓴다면
192.168.1.2~ 192.168.1.254 까지가 되어 버린다
ip dhcp excluded-address 192.168.1.2
ip dhcp excluded-address 192.168.1.254
따로 넣어준다.
2. NAT
(NAT을 사용하는 목적)
첫째, 인터넷의 공인 IP주소를 절약할 수 있다는 점
둘째, 인터넷이란 공공망과 연결되는 사용자들의 고유한 사설망을 침입자들로부터 보호할 수 있다는 점
=> 패킷을 보내면 제대로 된 곳으로 응답을 하기 위해 사용이 방법이 특징들을 만든다.
1) NAT 구성 요소
- Inside(내부, 사설 IP 환경) / Outside(외부, 공인 IP 환경)
- Inside Local 주소 (Inside 내부에서 사용하는 주소, 사설 IP 주소)
- Inside Global 주소 (Inside 내부에서 외부로 패켓을 전송할때, 변환되는 주소, 공인 IP 주소)
- Inside -> Outside로 패켓이 전송될때 : 출발지 주소 변경
- Outside ->Inside로 패켓이 전송될때 : 목적지 주소 변경
2) 동적 NAT
- 사용자 대상으로 NAT를 동적으로 구성하는 방법
Ex) 동적 NAT
- Inside Local : 192.168.1.0/24 (192.168.1.1 ~ 192.168.1.254)
- Inside Global : 13.13.12.1/24
간단한 이미지를 보고 코드를 이해하기
@ R1
access-list 10 permit 192.168.1.0 0.0.0.255
!
ip nat inside source list 10 interface s1/0 overload -> 인사이드 출발지 주소가 inside source list 10 에 설정한 주소에
포함이 되면 interface s1/0 overload ->se1/0주소로 바꿔보낸
다.-> ISP에서 받았을 때 s1/0에 공인 IP로 받음으로써
se1/0으로 전달이 가능하게 한다.
!
int fa0/0
ip nat inside
!
int s1/0
ip nat outside
!
R1#debug ip nat
IP NAT debugging is on
- A~C PC에서 Web Brower -> www.xyz.com 실시
R1#show ip nat translations
Pro Inside global Inside local Outside local Outside global
tcp 13.13.12.1:1025 192.168.1.1:1025 198.133.219.25:80 198.133.219.25:80
tcp 13.13.12.1:1026 192.168.1.1:1026 198.133.219.25:80 198.133.219.25:80
tcp 13.13.12.1:1027 192.168.1.1:1027 198.133.219.25:80 198.133.219.25:80
tcp 13.13.12.1:1024 192.168.1.2:1025 198.133.219.25:80 198.133.219.25:80
tcp 13.13.12.1:1028 192.168.1.3:1025 198.133.219.25:80 198.133.219.25:80
3) 정적 NAT
- 서버 대상으로 NAT를 정적으로 구성하는 방법(단, 특정 사용자 시스템도 가능)
Ex) 정적 NAT
- Inside Local : 192.168.1.253 <-- HTTP 서버
- Inside Global : 13.13.12.100
@ R1
ip nat inside source static tcp 192.168.1.253 80 13.13.12.100 80
!
int fa0/0
ip nat inside
!
int s1/0
ip nat outside
!