14.4 分配固定IP地址

2023-05-12 11:30 更新

在DHCP協(xié)議中有個術(shù)語是“預(yù)約”,它用來確保局域網(wǎng)中特定的設(shè)備總是獲取到固定的IP地址。換句話說,就是dhcpd服務(wù)程序會把某個IP地址私藏下來,只將其用于相匹配的特定設(shè)備。

要想把某個IP地址與某臺主機進行綁定,就需要用到這臺主機的MAC地址。MAC地址是網(wǎng)卡上面的一串獨立的標識符,具備唯一性,因此不會存在沖突的情況,如圖14-6所示。

圖14-6 查看運行Linux系統(tǒng)的主機MAC地址

在Linux系統(tǒng)或Windows系統(tǒng)中,都可以通過查看網(wǎng)卡的狀態(tài)來獲知主機的MAC地址。在dhcpd服務(wù)程序的配置文件中,按照如下格式將IP地址與MAC地址進行綁定。

    host 主機名稱 {             
    hardware    ethernet    該主機的MAC地址;  
    fixed-address   欲指定的IP地址;       
    }               

如果不方便查看主機的MAC地址,該怎么辦呢?比如,要給老板使用的主機綁定IP地址,總不能隨便就去查看老板的主機信息吧。針對這種情況,劉遄老師告訴大家一個很好的辦法。我們首先啟動dhcpd服務(wù)程序,為老板的主機分配一個IP地址,這樣就會在DHCP服務(wù)器本地的日志文件中保存這次的IP地址分配記錄。然后查看日志文件,就可以獲悉主機的MAC地址了(即下面加粗的內(nèi)容)。

    [root@linuxprobe ~]# tail -f /var/log/messages 
    Mar 30 05:33:17 localhost dhcpd: Copyright 2004-2013 Internet Systems Consortium.
    Mar 30 05:33:17 localhost dhcpd: All rights reserved.
    Mar 30 05:33:17 localhost dhcpd: For info, please visit https://www.isc.org/software/dhcp/
    Mar 30 05:33:17 localhost dhcpd: Not searching LDAP since ldap-server, ldap-port and ldap-base-dn were not specified in the config file
    Mar 30 05:33:17 localhost dhcpd: Wrote 0 leases to leases file.
    Mar 30 05:33:17 localhost dhcpd: Listening on LPF/eno16777728/00:0c:29:c4:a4:09/192.168.10.0/24
    Mar 30 05:33:17 localhost dhcpd: Sending on LPF/eno16777728/00:0c:29:c4:a4:09/192.168.10.0/24
    Mar 30 05:33:17 localhost dhcpd: Sending on Socket/fallback/fallback-net
    Mar 30 05:33:26 localhost dhcpd: DHCPDISCOVER from 00:0c:29:27:c6:12 via eno16777728
    Mar 30 05:33:27 localhost dhcpd: DHCPOFFER on 192.168.10.50 to 00:0c:29:27:c6:12 (WIN-APSS1EANKLR) via eno16777728
    Mar 30 05:33:29 localhost dhcpd: DHCPDISCOVER from 00:0c:29:27:c6:12 (WIN-APSS1EANKLR) via eno16777728
    Mar 30 05:33:29 localhost dhcpd: DHCPOFFER on 192.168.10.50 to 00:0c:29:27:c6:12 (WIN-APSS1EANKLR) via eno16777728
    Mar 30 05:33:29 localhost dhcpd: DHCPREQUEST for 192.168.10.50 (192.168.10.10) from 00:0c:29:27:c6:12 (WIN-APSS1EANKLR) via eno16777728
    Mar 30 05:33:29 localhost dhcpd: DHCPACK on 192.168.10.50 to 00:0c:29:27:c6:12 (WIN-APSS1EANKLR) via eno16777728

之前我在線下講課時,講完DHCP服務(wù)后總是看到有些學(xué)員在撓頭。起初我很不理解,畢竟dhcpd服務(wù)程序是Linux系統(tǒng)中一個很簡單的實驗,總共就那么十幾行的配置參數(shù)還能寫錯?后來發(fā)現(xiàn)了原因—有些學(xué)員是以Windows系統(tǒng)為對象做的IP與MAC地址的綁定實驗。而在Windows系統(tǒng)中看到的MAC地址,其格式類似于00-0c-29-27-c6-12,間隔符為減號(-)。但是在Linux系統(tǒng)中,MAC地址的間隔符則變成了冒號(:)。

    [root@linuxprobe ~]# vim /etc/dhcp/dhcpd.conf 
    ddns-update-style none;
    ignore client-updates;
    subnet 192.168.10.0 netmask 255.255.255.0 {
    range 192.168.10.50 192.168.10.150;
    option subnet-mask 255.255.255.0;
    option routers 192.168.10.1;
    option domain-name "linuxprobe.com";
    option domain-name-servers 192.168.10.1;
    default-lease-time 21600;
    max-lease-time 43200;
    host linuxprobe {
    hardware ethernet 00:0c:29:27:c6:12;
    fixed-address 192.168.10.88;
    }
    }

確認參數(shù)填寫正確后就可以保存退出配置文件,然后就可以重啟dhcpd服務(wù)程序了。

    [root@linuxprobe ~]# systemctl restart dhcpd

需要說明的是,如果您剛剛為這臺主機分配了IP地址,則它的IP地址租約時間還沒有到期,因此不會立即換成新綁定的IP地址。要想立即查看綁定效果,則需要重啟一下客戶端的網(wǎng)絡(luò)服務(wù),如圖14-7所示。

圖14-7 重啟客戶端的網(wǎng)絡(luò)服務(wù),查看綁定效果

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號