CentOS配置DHCP服務器


知識儲備

bootp (boot protocol)

 

  早前用於無盤工作站,dhcp的前身

 

  IP初次分配完成,以后固定mac和IP綁定關系

 

dhcp基礎

獲取IP步驟

step1:

    Client dhcp discover 發現DHCP服務器

step2:

    Server dhcp offer 發送給客戶端,攜帶IP/MASK GATEWAY

step3:

    Client 響應最先收到的dhcp offer (因為局域網中可能存在多台DHCP服務器)

    Client dhcp request 如果地址合法沒有沖突則發送廣播請求DHCP服務器資源

    Client 地址沖突則拒絕

step4:

    Server dhcp ack 回復客戶端

 

租約:一般獲取到的IP地址的使用時間為2個小時,如果不滿足2個小時的使用時間,那么過1個小時后就必須要再次續約

step1:

    Client dhcp request 單播

step2:

    地址池中有該可用地址

    Server dhcp ack 單播

    否則 Server dhcp nack 單播

 

跨路由器請求DHCP服務器

中間路由器開啟中繼功能,能接收dhcp discaover請求,並單播發送給另一個網絡的DHCP服務器

step1:

    Client dhcp discover

step2:

    Router 單播發送給DHCP服務器

step3:

    Server 單播回應路由器

step4:

    Router 回應Client

 

DHCP軟件包

安裝

 

  重量級軟件包 yum install dhcp

 

  輕量級軟件包 yum install dnsmasq

 

文件詳解

/etc/dhcp/dhcpd.conf  IPV4 DHCP Configuration

/etc/dhcp/dhcpd6.conf IPV6 DHCP Configuration

/usr/sbin/dhcpd DHCP 服務器 守護進程 不能同時提供IPV4和IPV6服務,需要做特別配置

    服務配置文件 CentOS7 

        /usr/lib/systemd/system/dhcpd.service

        /usr/lib/systemd/system/dhcpd6.service

    服務配置文件 CentOS5.6

        /etc/rc.d/init.d/dhcpd

        /etc/rc.d/init.d/dhcpd6

/usr/sbin/dhcrelay DHCP 中繼服務器 守護進程 不能喝dhcpd同時啟動

    服務配置文件 CentOS7 

        /usr/lib/systemd/system/dhcrelay.service

    服務配置文件 CentOS5.6

        /etc/rc.d/init.d/dhcprelay

 

DHCP服務配置

查看主配置文件

[root@localhost ~]# cat /etc/dhcp/dhcpd.conf
#
# DHCP Server Configuration file.
# see /usr/share/doc/dhcp*/dhcpd.conf.example
# see dhcpd.conf(5) man page
#

 

負責模板文件到/etc/dhcp目錄下

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

 

配置文件詳解

全局分配配置

    指明除地址外的其它分配屬性,它可以定義在全局也能定義在子網、主機中

        option domain-name "example.org";  # 默認搜索域,當域名沒有給全時,自動補充搜索域

        option domain-name-servers ns1.example.org, ns2.example.org;  # 指定DNS服務器

        # 不想使用DHCP服務器給定的DNS可以在網卡配置中指定PEERDNS=no

    租約時長配置

        default-lease-time 600;

        max-lease-time 7200;

子網分配配置

    必須先配置本網絡的DHCP服務

        subnet 10.5.5.0 netmask 255.255.255.224 {
            range 10.5.5.26 10.5.5.30;
            option domain-name-servers ns1.internal.example.org;
            option domain-name "internal.example.org";
            option routers 10.5.5.1;
            option broadcast-address 10.5.5.31;
            default-lease-time 600;
            max-lease-time 7200;
        }

主機分配配置

    host passacaglia {
        hardware ethernet 0:0:c0:5d:bd:95;
        filename "vmunix.passacaglia";
        server-name "toccata.fugue.com";
    }

其它配置選項

    group {
        filename "Xncd19r";  # 通常是一個TFTPserver
        next-server ncd-booter;
    }

    filename 指明引導文件路徑

    next-server IP_ADDR 指定加載引導文件的服務器IP

 

啟動服務

1 systemctl start dhcp

 

查看狀態和監聽端口

systemctl status dhcp

ss -unlp

netstat -unlp

監聽端口

    67/udp

 

DHCP Client 守護進程獲取地址

單台主機上只能啟動一次

dhcpclient -d

netstat -unlp

監聽端口

    68/udp

 

查看dhcp分配情況

1 cat /var/lib/dhcpd/dhcpd.leases

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM