linux dhcp服務器配置及小實驗

 

                                       linux dhcp服務器配置

配置linux dhcp首先要安裝dhcp軟件包

dhcp-3.0.5-21.el5.i386.rpm

[root@server Server]# rpm -ivh dhcp-3.0.5-21.el5.i386.rpm ////安裝dhcp安裝包

[root@server Server]# rpm -ql dhcp /////查詢dhcp文件安裝位置

[root@server Server]# rpm -qc dhcp /////查詢dhcp的可配置文檔,c代表config可配置的

下面開始進入dhcp的配置文檔進行配置

[root@server Server]# vim /etc/dhcpd.conf /////dhcp的配置文檔的從上面介紹的兩種查詢可以知道在/etc/dhcpd.conf

# DHCP Server Configuration file.

# see /usr/share/doc/dhcp*/dhcpd.conf.sample

但是進去之後並沒有什麼配置文檔只有兩句話,但是在第二句話給我們提示了一個文件,這個文件是dhcp的配置文檔模板,可以直接把它拷貝過來修改爲dhcp的配置文檔進去配置,也可以通過讀取的方法來進行配置如下圖

 

 

1 #

2 ddns-update-style interim;

3 ignore client-updates;

4

5 subnet 192.168.10.0 netmask 255.255.255.0 { ///////這一行相當於windows裏作用域

6

7 # --- default gateway

8 option routers 192.168.10.254; ////網關

9 option subnet-mask 255.255.255.0;

10

11 option nis-domain "domain.org";

12 option domain-name "tec.com"; ////域名

13 option domain-name-servers 222.88.88.88,222.85.85.85; ////這個是域名服務器,和windows上的dns服務器一樣

14

15 option time-offset -18000; # Eastern Standard Time

16 # option ntp-servers 192.168.1.1; //////這個是時間服務器,是使時間同步

17 # option netbios-name-servers 192.168.1.1; //////這個和windows上的win服務器一樣基於機器名轉換成ip地址

18 # --- Selects point-to-point node (default is hybrid). Don't change this unless

19 # -- you understand Netbios very well

20 # option netbios-node-type 2;

21

22 range dynamic-bootp 192.168.10.1 192.168.10.253; ////這個是客戶機的地址池,如果排除某個ip地址就要分開來寫如:

range dynamic-bootp 192.168.10.1 192.168.10.99;

range dynamic-bootp 192.168.10.101 192.168.10.253;

23 default-lease-time 21600; ///////租約時間

24 max-lease-time 43200;

25

26 # we want the nameserver to appear at a fixed address

27 host ns /////host後面最好寫上綁定ip的那臺機器的機器名 {

28 next-server marvin.redhat.com;

29 hardware ethernet 12:34:56:78:AB:CD;

30 fixed-address 207.175.42.254; //////27--31是mac地址和ip地址綁定

31 }

32 }

33 # DHCP Server Configuration file.

34 # see /usr/share/doc/dhcp*/dhcpd.conf.sample

35 #

當然瞭如果裏面的一些配置不太清楚,可以通過man 5 dhcpd.conf此命令查看

配置完成之後可以通過下面的命令進行測試,測試結果是ok說明沒有問題,然後就可以啓動了

[root@server Server]# service dhcpd configtest

Syntax: OK

[root@server Server]# service dhcpd start

Starting dhcpd: [ OK ]

dhcp 服務器 走的協議是udp 端口67 dhcp客戶端協議也是udp 端口是68

[root@server Server]# netstat -tupln | grep dhcpd //////可以通過此命令查看dhcp是否起來,同時也可以看出dhcp服務器的端口號和協議

udp 0 0 0.0.0.0:67 0.0.0.0:* 27595/dhcpd

這個時候dhcp服務器就已經做好了。

用linux系統從dhcp服務器上來獲取地址步驟如下:

ifconfig eth0 down //////先把eth0上的地址禁掉

dhclient -d eth0 //////通過此命令來獲取地址

如果客戶機比較多,一個c類地址不夠用但是又不能用b類地址,這時可以把上面的5--32行復制一遍在32行下粘貼,把作用域的地址段修改下如:192.168.20.0網段,但是綁定的那個地方的一個名稱要修改一下,和上面的不能一樣,然後再第5行上面加shared-network zzdx(名稱) { }左右大括號是把這兩個作用域全部括起來就ok.

這樣一個超級作用域就完成了。shared-network:相當於是聲明超級作用域

對於客戶機獲得地址的信息可以從vim /var/lib/dhcpd/dhcpd.leases裏面查看,在這個裏面有客戶機獲得地址及mac地址還有時間的信息,相當於windows裏面的地址租約。

在windows上dhcp服務器超級作用域有一個服務器選項,這個服務器選項可以添加路由器等。但是如果作用域中有路由器(網關),是以作用域中的爲先。在linux也有,

就是13 option domain-name-servers 222.88.88.88,222.85.85.85;可以把這一行剪切到作用域外超級作用域內,就可以實現服務器選項配置。

 

 

在linux裏自動獲得地址時dns也會自動獲得,如何實現獲得地址同時dns不自動獲得,而是手動配置如下:

[root@server ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0 /////打開這個文件加入一行如圖:

 

 

&&&&&&&&&&&&

Dhcp小實驗:

有一個公司有一個技術部(tec)和市場部(mkt),通過dhcp服務器來完成這兩個部門的地址分配,這兩個部門在不同的vlan。

地址分配dhcp服務器192.168.10.0/24

Tec 192.168.20.0/24

Mkt 192.168.30.0/24

Dhcp服務器通過linux來實現,路由通過win2003來完成

Ip地址:

Linux eth0:192.168.10.100/24 網關:192.168.10.254

Win2003:vm1:192.168.10.254------與linux連接

Vm2:192.168.20.254------與tec連接

Vm3:192.168.30.254------與mkt連接

拓撲圖:

 

 

Dhcp配置如下:

subnet 192.168.10.0 netmask 255.255.255.0 {

}

subnet 192.168.20.0 netmask 255.255.255.0 {

# --- default gateway

option routers 192.168.20.254;

option subnet-mask 255.255.255.0;

option nis-domain "domain.org";

option domain-name "tec.com";

option domain-name-servers 222.88.88.88,222.85.85.85;

option time-offset -18000; # Eastern Standard Time

# option ntp-servers 192.168.1.1;

# option netbios-name-servers 192.168.1.1;

# -- you understand Netbios very well

# option netbios-node-type 2;

range dynamic-bootp 192.168.20.1 192.168.20.253;

# we want the nameserver to appear at a fixed address

host ns {

next-server marvin.redhat.com;

hardware ethernet 12:34:56:78:AB:CD;

fixed-address 207.175.42.254;

}

}

subnet 192.168.30.0 netmask 255.255.255.0 {

# --- default gateway

option routers 192.168.30.254;

option subnet-mask 255.255.255.0;

option nis-domain "domain.org";

option domain-name "mkt.com";

option domain-name-servers 222.88.88.88,222.85.85.85;

option time-offset -18000; # Eastern Standard Time

# option ntp-servers 192.168.1.1;

# option netbios-name-servers 192.168.1.1;

# --- Selects point-to-point node (default is hybrid). Don't change this unless

# -- you understand Netbios very well

# option netbios-node-type 2;

range dynamic-bootp 192.168.30.1 192.168.30.253;

default-lease-time 21600;

max-lease-time 43200;

# we want the nameserver to appear at a fixed address

host ns1 {

next-server marvin.redhat.com;

hardware ethernet 12:34:56:78:AB:CD;

fixed-address 207.175.42.254;

}

}

Win2003路由配置:

添加三塊網卡分別命名vm1、vm2、vm3。

地址如上配置

然後單擊開始-----程序-----管理工具------路由和遠程訪問。

開始配置路由:

右擊本地服務器在單擊配置並啓動路由和遠程訪問

 

 

單擊自定義配置

 

 

在LAN路由前打鉤

 

 

然後下一步完成就會出現下面的畫面,在下面畫面裏有一個常規右擊在單擊新增路由協議進行dhcp中繼代理配置

 

 

選下面的dhcp中繼代理程序確定

 

 

就會出現下面畫面,然後右擊dhcp中繼代理單擊新增接口

 

 

會出現下圖:把vm2和vm3添加進去

 

 

添加後的結果

 

 

還要繼續設置服務器地址:繼續右擊dhcp中繼代理點屬性如下圖,添加服務器地址

 

 

到目前爲止服務器和路由都已經設置好了,就可以進行測試了。

&&

上面是通過win2003做路由中繼代理完成的,現在改用linux做中繼代理

首先dhcp包要安裝

在dhcp包中有一項是/etc/sysconfig/dhcrelay ////這個就是中繼代理要配置的文件

[root@localhost ~]# rpm -qc dhcp /////可以通過此命令查看dhcp包中的配置文件

/etc/dhcpd.conf

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

/etc/rc.d/init.d/dhcrelay

/etc/sysconfig/dhcpd

/etc/sysconfig/dhcrelay

/var/lib/dhcpd/dhcpd.leases

在配置中繼代理之前應該先把ipv4的轉化功能開啓

[root@localhost ~]# vim /etc/sysctl.conf

7 net.ipv4.ip_forward = 1 ////ipv4轉化功能

[root@localhost ~]# sysctl -p

net.ipv4.ip_forward = 1 /////使ipv4轉化功能生效,可以看出已經生效

然後配置中繼代理

[root@localhost ~]# vim /etc/sysconfig/dhcrelay

INTERFACES="eth0 eth1 eth2" ///////這個是中繼接口

DHCPSERVERS="192.168.10.100" ///////dhcp服務器地址

然後就可以啓動dhcrelay進行測試

[root@localhost ~]# service dhcrelay start

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