hann-blume
Linux - DHCP (Dynamic Host Configuration Protocol) 본문
DHCP란?
클라이언트 컴퓨터나 다른 TCP/IP 기반 네트워크 장치에 IP 주소를 제공하는 서비스 |
IP와 함께 라우터(G/W주소), DNS서버주소와 같은 네트워크 리소스와 연결할 수 있도록 옵션 제공 |
DHCP 클라이언트에 특정기간 IP를 임대하여 갱신을 요청하는 경우 IP주소를 갱신 |
특정 컴퓨터나 장치에 IP주소 예약이 가능하다(고정IP) |
Port 번호는 Server(UDP:67), Client(UDP:68) 사용한다. |
[DHCP 주소 임대 과정]
DHCP Discover | Client to server 주소를 요청 |
DHCP Offer | Server to client 사용받을 주소를 제공 |
DHCP Request | Client to server 제공받는 주소 사용을 승인 |
DHCP ACK | Server to client 주소 사용 승인 |
서버에서 dhcp 서비스 설치
# yum -y install dhcp-*
# systemctl start dhcpd
사전작업을 해주자
Edit - Virtual Network Editor
Change Setting 클릭
VMnet8 선택 후
붉은 박스 체크해제
다시 Putty
dhcp 설정파일
# ls -ld /etc/dhcp/dhcpd.conf
# vi /etc/dhcp/dhcpd.conf
열어서 맨 아래 줄에 내용 추가
subnet 192.168.131.0 netmask 255.255.255.0 {
range 192.168.131.50 192.168.131.90;
option routers 192.168.131.2;
option domain-name-servers 168.126.63.1;
option broadcast-address 192.168.131.255;
max-lease-time 7200;
}
range 192.168.131.50 192.168.131.90;
50~100번까지 클라이언트한테 부여하겠다는 명시
변경사항 적용
#systemctl restart dhcpd
# systemctl enable dhcpd
# firewall-cmd --permanent --add-service=dhcp
# firewall-cmd --reload
option routers 192.168.131.2
게이트웨이 주소
option domain-name-servers 168.126.63.1;
DNS 서버 주소
max-lease-time 7200;
임대 시간 (7200초, 약 2시간)
변경설정 적용
# systemctl start dhcpd
서비스 자동시작 등록
# systemctl enable dhcpd
확인
# netstat -anp | grep dhcp
방화벽 규칙 추가
# firewall-cmd --permanent --add-service=dhcp
Failover 구성하기위해 tcp로 하나 더 설정
# firewall-cmd --permanent --add-port=647/tcp
적용
# firewall-cmd --reload
확인
# firewall-cmd --list-all
(Wireshark 프로그램이 필요하다.)
이제
vmnet8에서 다니는 패킷을 확인하기위해
Wireshark에서 vmnet8 더블클릭
필터링에서 bootp 검색(dhcp의 조상. dhcp를 보기위해서 bootp를 하면된다. Wireshark버전이 4이기때문. 5면 그냥 dhcp)
Client(윈도우)
윈도우+r
ncpa.cpl
로컬영역 - 속성 - ipv4 - 자동,자동으로 변경 - 확인 - 확인 - 닫기
Wireshark로 와서
DHCP 임대과정을 볼수있다.
여기서는 192.168.131.50 라는 주소를 할당받은 것을 확인할 수 있다.
위에서 정해준 범위내에서 받은 것이다.
다시 client의 cmd에서 ipconfig 하면
위에서 설정한 dhcpd의 ip 설정대로 나온다.
(/윈도우명령어/)
할당 받은 ip 반납
ipconfig /release
할당 받은 ip 재할당
ipconfig /renew
임대받은 정보확인
# cat /var/lib/dhcpd/dhcpd.leases
----------------------------------------------------------------
예약 ip설정(고정ip)
물리적 주소를 사용한다.(NIC 번호)
client 에서 ipconfig /all 하고 물리적 주소 확인.
마우스 우클릭해서 '표시' 누르고 드래그
00-0C-29-B7-16-C1
하고 다시 우클릭하면 복사된 것.
이 물리적 주소는 따로 메모해놓자.
(윈도우에서는 MAC주소 필드 구분을 '-'로 하지만
리눅스에서는 ':' 콜론으로 사용한다. 변경해주자
메모장에서 ctrl+h 하고 찾을내용에 '-', 바꿀내용에 ':' 하고 모두 바꾸기)
00:0C:29:B7:16:C1
Server로 와서
# vi /etc/dhcp/dhcpd.conf
맨아래줄에 아래내용 추가
host Client {
hardware ethernet 00:0C:29:B7:16:C1;
fixed-address 192.168.131.60;
}
(예약작업은 같은 형식으로 여러개 해줄 수 있다.)
host Client - Client는 예약이름(자유)
NIC 물리적 주소 명시
hardware ethernet 00:0C:29:B7:16:C1;
60번 ip를 무조건 사용하도록 고정.
fixed-address 192.168.131.60;
저장하고 나감. wq
변경사항 적용
# systemctl restart dhcpd
다시 client로와서
ipconfig /release
ipconfig /renew
결과값에 60번으로 고정된 것 확인.
하지만 DHCP를 이용하면
다른 작업을 할 때 매번 IP를 확인하고 변경해야 하므로
다시 원래대로 고정 IP로 설정해주자
여기까지 DHCP 에 대한 설명이 끝났다.
'Linux' 카테고리의 다른 글
Linux - Telnet (0) | 2020.03.21 |
---|---|
Linux - DCHP FailOver (0) | 2020.03.21 |
Linux - Network / Firewall (0) | 2020.03.21 |
Linux - Channel Bonding (0) | 2020.03.20 |
Server/Server(B) install (CentOS 7 64bit) (0) | 2020.03.19 |