DHCP (Dynamic Host Configuration Protocol) Service
@ DHCP Service
Dynamic Host Configuration Protocol - 자동 Host 할당 프로토콜 => 7계층 protocol
=> IP, Subnetm DNS, Gateway 기본적으로 4가지를 자동으로 할당 받는다.
=> 사용자들에게 인터넷을 할수 있게 IP를 자동으로 할당해주는 서비스
DHCP UDP 67(server), 68(client)
HTTP TCP 80
DNS UDP 53
DHCP는 분배단에 속해서 IP를 분배 해주게 된다.
=> Gateway가 있는 L3 switch에 올려놔야 한다.
- discover message : 서버를 찾는다.
- offer message : 제안을 한다 (모든 서버가 나 여깄다고 알린다)
- request message : 요청한다 (제일 빨리 도착한 서버를 쓰겠다고 모든 서버에게 알린다)
- acknowledgment message : 알려준다 (IP할당)
Client discover message
UDP 68 ----------------------------------------------------------------> Server
D : 255.255.255.255 (Broadcast)
S : 0.0.0.0
offer message Server
Client <--------------------------------------------------------------- UDP 67
모든 서버들이 offer message를 client에 에게 omesssage를 전송한다. D : 255.255.255.255
S : Server
- offer message가 제일 빨리 도착한 서버에 정보를 사용한다.
Client request message
UDP 68 ----------------------------------------------------------------> Server
D : 255.255.255.255 (Broadcast로 보내는 이유 : 내가 원하는 DHCP서버를 쓰겠다고 모든 Server에게 알리는 작업)
S : 0.0.0.0
acknowledgment message Server
Client <--------------------------------------------------------------- UDP 67
D : 255.255.255.255
S : Server
< 명령어 >
- Server
ip dhcp excluded-address <제외할 IP 주소>
ip dhcp pool <pool 이름>
network <pool 포함하고 있는 IP대역>
default-router <Gateway주소>
dns-server <dns IP>
option 150 <FTP Server 주소>
lease 일 시 분
interface vlan <번호>
ip address <Gateway 주소>
- client
int fa 0/0
ip address dhcp // ip 주소를 dhccp로 받아 오겠다.
ip dhcp excluded-address 10.1.10.1 10.1.10.20 // 10.1.10.1 ~ 10.1.10.20 의 IP는 제외한다.
(gateway를 포함한 빼주고 싶은것)
ip dhcp pool XYS10 // IP를 담아둘 dhcp를 위해서 XYS10 이라는 수영장을 만든다
network 10.1.10.0 255.255.255.0 // XYS10이라는 수영장에 내가 나눠줄 IP의 대역대를 담아 준다.
default-router 10.1.10.1 // gateway 알려준다.
dns-server 168.127.63.1 // dns 서버 생성
option 150 10.1.1.50 //FTP Server 주소 (option 150 : FTP 서버주소 주겠다고 선언)
lease 0 8 0 // 0일 8시간 동안 0분 임대하겠다.
! //주석
interface vlan 10 //SVI 만들면서 Gateway 생성
ip address 10.1.10.1 255.255.255.0 // Gateway 주소 생성
* lease infinite // 계속 임대하겠다.
< 확인 명령어 >
- Server 에서 확인
show ip dhcp binding
debug ip dhcp server packet
- Client 에서 확인
debug dhcp detail
=> debug 끄는 명령어 undebug all
< Server가 다른 Network 에 있을 경우 >
int vlan 10
ip address 10.1.10.1 255.255.255.0 // Gateway 주소 할당
ip helper-address 10.1.100.1 // 서버 IP 할당
< discover message를 다른 네트워크까지 보내는 방법 >
- 클라이언트에서 보내는 브로드캐스트로 날리는 discover message는 L3장비까지만 간다.
다른 네트워크에 Server가 있으면 전송되지 않고 죽게 된다.
클라이언트랑 연결되어 있는 L3장비를 릴레이식으로 대신 보내 주면 된다.
=> Broadcast를 잡아서 Unicast로 서버에 전달한다.
※ 조건 : L3장비에 물려있는 다른 네트워크에 있는 Server의 장비와 L3장비와 라우팅 되어 있어야 한다.
< 다른 네트워크에 Server가 많을 경우 >
1. Server가 적을 경우
ip helper-address <Server IP> 로 다 적어 준다.
2. Server가 많을 경우 (Server Network에 적용)
- ip helper-address <x.x.x.255> 로 Broadcast로 적어준다.
- 서버 네트워크에 #ip directde-broadcast
- 실습 -
!---- preconfig
ena
conf t
ena sec cisco
no ip domain-lookup
line console 0
password cisco
login
logg sync
exec-timeout 0 0
exi
username CCNP password itbank321
line vty 0 4
login local
exi
!---- R1
int fa 0/0
no shut
ip add dhcp
end
debug dhcp detail
!---- R2
int fa 0/0
no shut
ip add dhcp
end
debug dhcp detail
!---- SW1
vlan 10
int fa 1/1
no shut
sw mode acc
sw acc vlan 10
exi
int fa 1/2
no shut
sw mode acc
sw acc vlan 10
exi
ip dhcp excluded-address 1.1.10.254
ip dhcp pool TEST
network 1.1.10.0 255.255.255.0
default-router 1.1.10.254
dns-server 168.127.63.1
lease infinite
int vlan 10
no shut
ip add 1.1.10.254 255.255.255.0
end
debug ip dhcp server packet
show ip dhcp binding
< 확인 > - Server, Client, Wireshark
- Server
!---- R1
R1#debug dhcp detail
- Discover Message 전송
- offer message 수신
- request message 전송
- ack message 수신
-> 최종적으로 주소 1.1.10.1 을 할당 받음
- Client
Sw1#debug ip dhcp server packet
Sw1#show ip dhcp binding
- Wireshak
=> ACK packet
'IT > Network' 카테고리의 다른 글
Implementing Layer3 High Availabillity - 1.HSRP (Host Standby Router Protocol) (0) | 2019.05.28 |
---|---|
[실습] DHCP 설정 (0) | 2019.05.28 |
InterVLAN3 실습 (0) | 2019.05.28 |
InterVLAN 설정 (L3 switching) (0) | 2019.05.28 |
Inter-VLAN Routing (switch 이용) (0) | 2019.05.28 |
댓글