DHCP服務器的搭建與驗證——超詳細(在Vmware Workstation基於centos7.3/7.4)

前言:2020年,進入大二下學期,上學期學了一學期Linux基礎,這學期,學的深入些。
第一個實驗,搭建DHCP服務與驗證,我實驗的背景是在Vmware Workstation中新建了兩個centos系統的虛擬機,一個centos7.4版本的作爲服務器,一個centos7.3版本的作爲客戶機,如下圖。在這裏插入圖片描述
我參考的3個寫的比較好的博客:
(1)這個博客寫了開機的設置,讓我一開始想了半天不知道爲什麼與預想結果不一致,原來是,要開機重啓 ,。。。。耽誤了好久時間,因爲是做實驗,並不是真的搭建dhcp服務器,所以不用設置開機自啓。
(2)這個博客講了搭建dhcp的原理和作用,但是,搭建完成後的驗證是在虛擬機win7系統驗證的,由於剛卸載winserver,。。。。,所以驗證部分還是播客一比較好,但是與老師教的不同,播客一,用的是自帶的網卡驗證的,沒有新建網卡,不過,問題不大。
(3)這個是新建網卡,配置並驗證dhcp服務的。
(4)補充。
(5)補充。

實驗步驟:

所用命令:
1 ifconfig
2 systemctl stop firewalld
3 setenforce 0
4 yum -y install dhcp

5 cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
6 vim /etc/dhcp/dhcpd.conf
7 vim /etc/sysconfig/network-scripts/ifcfg-ens33
8 systemctl restart network.service
9 systemctl restart dhcpd.service
10 cat /var/lib/dhcpd/dhcpd.leases
*

一:分配動態ip,即制定地址池裏的ip

1,ifconfig查看ip地址,要注意的是ip(inet後)地址和mac(ether後)地址。
在這裏插入圖片描述
2,臨時關閉防火牆以及關閉selinux
systemctl stop firewalld
setenforce 0
3,安裝DHCP軟件包(安裝有很多方式,百度自選,可以用rpm -qa | grep dhcp驗證)
yum -y install dhcp*
注意:雖然做實驗時兩臺主機都在僅主機模式下,但僅主機模式無法聯網,下載軟件時要先把網絡適配器改爲NAT模式,下完dhcp再改爲僅主機模式!。
在這裏插入圖片描述
4,配置DHCP——把系統默認的樣例複製到/etc/dhcp/dhcpd.conf文件裏(注意 /etc/dhcp/dhcpd.conf,這個路徑cd一下看是否存在,不存在要新建)
把系統默認的樣例複製到/etc/dhcp/dhcpd.conf文件裏
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf

cp  /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example  /etc/dhcp/dhcpd.conf

cp:是否覆蓋"/etc/dhcp/dhcpd.conf"? y       

5,修改配置文件

 vim  /etc/dhcp/dhcpd.conf  

進入dhcpd.conf後進行修改,注意:
(1)給幾個客戶機分配就留幾個subnet,我只開了一個客戶機,所以我只留一個,別的全刪了。
修改47-52行,(根據內容而定行數,我的只是樣例),其餘的可以刪掉。

#  vim  /etc/dhcp/dhcpd.conf                           --修改配置文件
   7   option domain-name "example.org";                 --DNS域名
   8   option domain-name-servers ns1.example.org, ns2.example.org;     --DNS的域服務器
   9
 10   default-lease-time 600;             --默認的租約時間,秒爲單位
 11   max-lease-time 7200;                --最大的租約時間,秒爲單位
 14   #ddns-update-style none;         --表示要不要把IP地址的更新情況告訴DNS服務器,默認是關閉的
 22   log-facility local7;                       --定義日誌服務,可以在日誌配置文件中查看具體日誌位置,默認是:/var/log/boog.log,但是在/var/log/messages裏面也會記錄dhcp日誌
 47   subnet 192.168.136.0 netmask 255.255.255.0 {      --分配的網段及子網掩碼,代表只在192.168.8.x這個C類網段裏生效,子網掩碼設爲255.255.255.0
 48   range 192.168.136.140 192.168.136.160;                        --代表給客戶機分配可用的IP範圍,起始到結束,儘量不要包含DHCP服務器的IP地址
 49   option domain-name-servers 192.168.136.132;       --配置要分配給客戶端的DNS地址,這裏我們設爲DHCP服務器的IP地址
 50   option domain-name "internal.example.org";    --DNS的域名
 51   option routers 192.168.136.132;                               --配置分配給客戶機的路由網關,這裏我們設爲DHCP服務器的IP地址
 52   option broadcast-address 192.168.136.255;           --給客戶機指定廣播地址,配置192.168.8.x這個網段的廣播地址
 53   default-lease-time 600;                                       --指定租約時間,秒爲單位
 54   max-lease-time 7200;                                         --指定最大租約時間,秒爲單位
 55   }
 75   host fantasia {                                                     --將MAC地址和IP綁定,host後面的名字隨意,如:fantasia
 76   hardware ethernet 08:00:07:26:c0:a5;                 --MAC地址
 77   fixed-address fantasia.fugue.com;                      --IP地址
 78   }
 85   class "foo" {                                                         --定義多個子網,class後面寫組名
 86   match if substring (option vendor-class-identifier, 0, 4) = "SUNW";
 87   }
 88 
 89   shared-network 224-29 {                                    --定義多個子網,要從大往小寫
 90       subnet 10.17.224.0 netmask 255.255.255.0 {
 91           option routers rtr-224.example.org;
 92       }
 93       subnet 10.0.29.0 netmask 255.255.255.0 {
 94           option routers rtr-29.example.org;
 95       }
 96       pool {
 97           allow members of "foo";
 98           range 10.17.224.10 10.17.224.250;
 99       }
100       pool {
101           deny members of "foo";
102           range 10.0.29.10 10.0.29.230;
103       }
104   }

6 ,修改網卡文件:vim /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=static
DEFROUTE=yes


ONBOOT=yes
GATEWAY=192.168.136.132

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY="no"
BOOTPROTO=static
ONBOOT=yes
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=ens33
UUID=98e10e82-8926-4844-93ad-6b671b3ec65b
DEVICE="ens33"
ONBOOT=yes
GATEWAY=192.168.30.1
IPADDR=192.168.30.1
NETMASK=255.255.255.0
ARPCHECK=no

systemctl restart network.service --重啓網卡
7,啓動DHCP服務

systemctl  restart  dhcpd.service        --重啓DHCP服務
netstat  -anlp  |  grep  dhcpd             --查看dhcp服務端口爲67

8,用
cat /var/lib/dhcpd/dhcpd.leases
先查看分配出去的IP地址。若沒問題,可以來到客戶機驗證

以上操作都是在作爲服務器的centos7.4虛擬機上做的!!!

二:下面來到客戶機驗證

(1)把客戶端機的網卡配置成dhcp,再重啓網絡服務
vim /etc/sysconfig/network-scripts/ifcfg-ens33

    BOOTPROTO=dhcp                                 --網卡指定方式改爲dhcp
    ...
    ONBOOT=yes
TYPE="Ethernet"
BOOTPROTO=dhcp
DEFROUTE="yes"
NAME=ens33
UUID=641afec9-fcd3-41ff-b0af-4f93058f6076
DEVICE=ens33
ONBOOT="yes"
IPV4_FAILURE_FATAL=no
IPV6INIT=no
PEERDNS=no
PEERROUTES=yes
~               

(2)systemctl restart network.service --重啓網卡(當有多個網卡用ifdown 網卡名,ifup網卡名)
(3)重啓網絡
systemctl restart NetworkManager --重啓這個服務,每次重啓網絡服務時,系統都會重新去DHCP服務 器上獲取IP地址。
(4)ifconfig --查看IP是否爲ip池裏的ip!

二,分配固定ip
如果要求要分配固定IP的話:
1、修改dhcp配置文件

vi /etc/dhcp/dhcpd.conf

末尾新增:

  host fantasia  {                                 ----主機聲明,host後面的內容,可以自定義

       hardware ethernet       00:0c:29:53:30:50;    ----指定其它pc(客戶機,打印機等)mac地址

       fixed-address 192.168.80.188;        ----要給客戶機分配的固定地址 

}

2,重啓dhcp服務:
systemctl restart dhcpd

3,再次來到客戶機驗證

(1)把客戶端機的網卡配置成dhcp,再重啓網絡服務
vim /etc/sysconfig/network-scripts/ifcfg-ens33

  BOOTPROTO=dhcp                                 --網卡指定方式改爲dhcp
  ...
  ...
  NBOOT=yes

(2)systemctl restart network.service --重啓網卡

(3)重啓網絡
systemctl restart NetworkManager --重啓這個服務,每次重啓網絡服務時,系統都會重新去DHCP服務器上獲取IP地址
(4)查看IP
ifconfig
–查看所分配的IP是否是我們在/etc/dhcp/dhcpd.conf中指定的固定的IP。

注意:當一切工作都問題的話但是沒收到預想的結果:那就改下這裏吧,(我被這裏坑了兩天)

在這裏插入圖片描述
把子網ip改爲你要的那個段吧,並把 “使用本地dhcp服務將ip地址分配給虛擬機” ——這一項的對勾取消。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章