본문 바로가기
Linux

DHCP Server

by shinebee* 2020. 6. 1.

DHCP 서버

- IP / Subnetmask

- gateway

- dns 주소

 

1. Client ------- 서버 IP 주세요 ------->> Server  (DHCP discover)

             broadcast로 전달 

             포트번호 67

             des 255.255.255.255

             src는 0.0.0.0

             tran ID : 777 (정확한 지표가 없이 통신하기 때문에 만듦)

         

2. Server ---------------------------------->> Client   (DHCP offer)

             tran ID : 777

             src : 111.111.104.2

             des : 255.255.255.255

             포트번호 68   

 

3. Client ------------------------------------->> Server  (DHCP request)

             broadcast로 IP를 지정 받음을 공표

             tran ID : 777

             src : 0.0.0.0 : 68

             des : 255.255.255.255 : 67

             

4. Server ------------- IP 드림 ------------>> Client  (DHCP ACK)

              src : 111.111.104.2 : 67

              des : 111.111.104.25 : 68

              tran ID : 777


// DHCP 연결이 실패하면 169.254.???.??? 로 IP가 자동지정된다.


//KVM 으로 DHCP 실습

 

0. 사전작업

 # dhcp 실습용 네트워크 추가

Edit -> Connection Details -> Virtual Networks -> 새로운 네트워크 추가 -> Enable DHCPv4 체크 해제 -> forward -> Forwarding to physical network 항목 체크 -> finish -> Apply

Virtual Network Interface의 Network Source를 dhcp 실습용 네트워크로 설정 -> 실행

 

1. DHCP 서버 IP 할당 

network profile 전부 삭제
network profile 새로 추가

nmcli con add con-name dhcp_s type ethernet ifname ens8
nmcli con mod dhcp_s ipv4.addresses 192.168.122.50/24
nmcli con mod dhcp_s ipv4.gateway 192.168.122.1
nmcli con mod dhcp_s ipv4.dns 8.8.8.8
nmcli con mod dhcp_s ipv4.method manual
nmcli con up dhcp_s

 ping 8.8.8.8 확인

 

2. 서버에 DHCP 패키지 설치

yum install dhcp -y
vi /etc/dhcp/dhcpd.conf
// 참고. /usr/share/doc/dhcp*/dhcpd.conf.example

	subnet 192.168.122.0 netmask 255.255.255.0 { 
		range 192.168.122.101  192.168.122.110;
		option routers 192.168.122.1;
		option broadcast-address 192.168.x.255;
		option domain-name-servers 8.8.8.8;
		default-lease-time 600;
		max-lease-time 7200;
 	}

 

3. 방화벽 설정 및 재시작

firewall-cmd --permanent --add-service=dhcp
firewall-cmd --reload
systemctl enable dhcpd
systemctl start dhcpd
systemctl status dhcpd

//모니터링
tail -f /var/lib/dhcpd/dhcpd.leases

 

4. 클라이언트에서 DHCP 서버 할당

//Virtual Network Interface의 Network Source를 dhcp 실습용 네트워크로 설정 -> 실행
network profile 전부 삭제
network profile 새로 추가

nmcli con add con-name dhcp_c type ethernet ifname ens3
nmcli con up dhcp_c

 

 

 

 

 

 

 

 

'Linux' 카테고리의 다른 글

SMB Storage  (0) 2020.06.03
NFS Storage (autofs)  (0) 2020.06.02
DNS Server  (0) 2020.06.01
리눅스 보안-SELinux  (0) 2020.06.01
Network Teaming  (0) 2020.06.01

댓글