DHCP服務詳解


  1. DHCP概念和原理
    1. dhcp服務作用
      1. 為大量客戶機自動分配地址,提供集中管理
      2. 減輕管理和維護成本,提高網絡配置效率
    2. 可分配的地址信息主要包括:
      1. 網卡的IP地址、子網掩碼
      2. 對應的網絡地址
      3. 默認網關地址
      4. DNS服務器地址
      5. 引導文件、TFTP服務器地址

    3. DHCP的原理
      1. 客戶端尋找服務器

        client – DHCPdiscovery

        如果未得到響應,1秒后重發,9秒,13秒,16秒…

      2. 服務器提供地址

        Server – DHCPoffer

        提供可用IP,租約信息,服務器地址等

      3. 接受並廣播

        Client – DHCPrequest

        宣告自己所選擇的DHCP服務器

        Arp廣播,測試自己所選擇的DHCP服務器

      4. 服務器確認

        Client – DHCPrequest

        Server – DHCPack

        包含了所有的網絡參數

===========================================================

  1. 戶端重新登錄

    Client – DHCPrequest

    申請,繼續源使用分配的IP地址

  2. 更新租約

    8小時 – 4小時 – 2小時

    Client – DHCPdiscovery

  1. DHCP相關文件
    1. RHEL6的DHCp軟件包

      Dhcp-4.1.1-3.4.P1.el6.x86_64.rpm

    2. DHCP的相關配置

      端口號:ipv4 udp67、udp68

      ipv6 udp546、udp547

      服務名:dhcpd(主程序)或者dhcrelay(中繼)

      主配置文件:/etc/dhcp/dhcpd.conf

      模板文件:/usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample

      中繼配置文件:/etc/sysconfig/dhcrelay

  2. DHCP配置文件解析.

option domain-name "example.org";

option domain-name-servers ns1.example.org, ns2.example.org;

default-lease-time 600;

max-lease-time 7200;

#ddns-update-style none;

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";

}

host fantasia {

hardware ethernet 08:00:07:26:c0:a5;

fixed-address fantasia.fugue.com;

}

class "foo" {

match if substring (option vendor-class-identifier, 0, 4) = "SUNW";

}

shared-network 224-29 {

subnet 10.17.224.0 netmask 255.255.255.0 {

option routers rtr-224.example.org;

}

subnet 10.0.29.0 netmask 255.255.255.0 {

option routers rtr-29.example.org;

}

pool {

allow members of "foo";

range 10.17.224.10 10.17.224.250;

}

pool {

deny members of "foo";

range 10.0.29.10 10.0.29.230;

}

}

option domain-name 設置DNS域

option domain-name-server 設置DNS服務器地址

default-lease-time 設置默認租約時間,單位為秒

max-lease-time 設置最大租約時間,單位為秒

log-facility 指定日志設備

ddns-update-style 設定DNS的更新方式

subnet網段聲明,作用於整個子網段:

range 設置用於分配的IP地址池

option subnet-mask 設置客戶機的子網掩碼

option routers參數 設置客戶機的默認網關地址

option broadcast-address 設置客戶機廣播地址

host主機聲明,作用於某台主機:

hardware Ethernet 設置目標主機的MAC地址

fixed-address 設置為其分配的保留IP

重啟服務,使修改的配置生效

#server dhcpd restart

修改網卡配置,設置DHCP的自動分配方式

#vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0

ONBOOT=yes

BOOTPROTO=dhcp

#ifdown eth0

#ifup eth0

注意:配置完成后,記得關閉SELINUX和防火牆

  1. DHCP服務器端配置
  2. DHCP客戶端配置
  3. 案例:DHCP中繼功能

    主機A的IP地址為192.168.1.1,網關為192.168.1.2

    主機B的IP地址為eth0:192.168.1.2,eth1:200.200.200.2

    主機C網卡設置為DHCP

    1、主機A操作步驟如下:

    #yum –y install dhcp

    #cp    /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf

    #vim /etc/dhcp/dhcpd.conf

    #service dhcpd start

    #vim /etc/sysctl.conf

    #打開網絡轉發功能

    1. 主機B操作步驟如下:

      #yum –y install dhcp

      #vim /etc/sysconfig/dhcrelay

      #service dhcrelay start

    2. 主機c操作如下:

      #vim /etc/sysconfig/network-scripts/ifcfg-eth0

#設置為DHCP

  1. DHCP主機地址保留

    主機A的IP地址為192.168.1.1

    主機B網卡設置為DHCP

    主機A和主機B在同一個網段

    1、主機A的操作步驟如下:

    #yum –y install dhcp

#cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample

#vim /etc/dhcp/dhcpd.conf

綁定MAC地址

#service dhcpd restart

2、主機B的操作如下:

#vim /etc/sysconfig/network-scripts/ifcfg-eth0

  1. DHCP超級作用域

    介紹:超級作用域DHCP服務中的一種管理功能,使用超級作用域,可以將多個作用域組合為單個管理實體。

試驗准備:主機A的網卡eth0與主機B的網卡eth0在同一個網段,主機C的網卡eth1與主機B的網卡eth1在同一網段,主機A、B和C關閉防火牆和SELINUX。

  1. 主機B的操作如下:

    #vim /etc/sysconfig/network-scripts/ifcfg-eth0

#vim /etc/sysconfig/network-scripts/ifcfg-eth1

#yum –y install dhcp

#cp /usr/share/doc/dhcp-4.1.1/dhcpd.conf.sample /etc/dhcp/dhcpd.conf

#vim /etc/dhcp/dhcpd.conf

#service dhcpd start

  1. 主機A的網卡設置

    #vim /etc/sysconfig/network-scripts/ifcfg-eth0

    #ifdown eth0

    #ifup eth0

    結果如下圖

  2. 主機C的網卡設置

    #ifdown eth0

    #ifup eth0

    結果如圖所示

    總結:使用上面那種方法,就在兩個網段中分配IP地址,就不需要做DHCP中繼,唯一問題是連接兩個網段的主機要有足夠的網卡,也就是說,一個網卡對應一個網段


免責聲明!

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



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