linux配置dhcp中继服务

 

         最近开始学习linux下面一些服务的配置及使用,今天刚好讲到dhcp服务,并在双星唐老师指导下进行了dhcp中继服务的实验。本次实验使用3台rhel6.3的虚拟机,进行dhcp的相关配置,以下是实验步骤,由于本人技术有限,写的不好的地方还望多多谅解。

 

    网络环境
本次实验使用3台rhel6.3的虚拟机,网络适配器选择Custom模式,分别使用vmnet1和vmnet2(均为host-only模式),dhcp端选择vmnet1网卡,由于dhcp中继服务器也充当路由器,所以选用两块网卡,客户端选用vmnet2。实验先配置好网络环境,先让客户机和dhcp服务器分别能与中继器(充当路由器)ping通,然后中继器开启路由功能,保证客户机能与dhcp服务器能正常通信。


    服务器端配置
(1)配置服务器端网卡,具体配置信息如下

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0               #eth0网卡接口 
BOOTPROTO=none
ONBOOT=yes
TYPE=Ethernet
IPADDR=10.0.10.2
NETMASK=255.255.255.0
GATEWAY=10.0.40.254

配置完后重启下network服务

[root@localhost ~]# service network restart


(2)配置dhcp,并启动服务

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


default-lease-time 600;
max-lease-time 7200;

subnet 10.0.20.0 netmask 255.255.255.0 {
  range 10.0.20.10 10.0.20.250;
  option routers 10.0.20.254;
}
subnet 10.0.10.0 netmask 255.255.255.0 {
}


配置完后启动dhcpd服务(注意配置文件中必须声明服务器的所在网段,不然服务启动不了)

[root@localhost ~]# service dhcpd restart

Shutting down dhcpd:                                       [  OK  ]
Starting dhcpd:                                            [  OK  ]



    中继服务器配置


(1)网络配置


配置eth0

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth0


# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]
DEVICE=eth0
BOOTPROTO=none
HWADDR=00:0c:29:16:31:75
ONBOOT=yes
NETMASK=255.255.255.0
IPADDR=10.0.10.254
TYPE=Ethernet


配置eth1

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-eth1


# Advanced Micro Devices [AMD] 79c970 [PCnet32 LANCE]
DEVICE=eth1
BOOTPROTO=none
ONBOOT=yes
HWADDR=00:0c:29:16:31:7f
NETMASK=255.255.255.0
IPADDR=10.0.40.254
TYPE=Ethernet


(2)开启本机的路由功能

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

# Controls IP packet forwarding
net.ipv4.ip_forward = 1            #将配置文件此项值设为1

下面的命令让配置生效

[root@localhost ~]# sysctl -p    #配置生效


(3)配置dhcp中继服务

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


# Command line options here
INTERFACES="eth0 eth1"            #设置需提供中继服务的网卡接口
DHCPSERVERS="10.0.10.2"         #dhcp服务器地址


查看67号端检测dhcp中继服务是否开启

[root@localhost ~]# lsof -i :67
COMMAND  PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
dhcpd   6282 dhcpd    7u  IPv4  37982      0t0  UDP *:bootps


以下命令可以重启dhcp中继服务

[root@localhost ~]# service dhcrelay restart


    客服端配置

客服端先自己配置一个ip和默认路由,确保能ping通dhcp服务器和中继服务器

然后输入以下命令通过dhcp获取到ip

[root@localhost ~]# dhclient eth0

成功获取ip的话,网卡会出现两个ip地址
eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 00:0c:29:9e:3a:11 brd ff:ff:ff:ff:ff:ff
    inet 10.0.20.5/24 brd 10.0.20.255 scope global eth0
    inet 10.0.20.10/24 scope global secondary eth0
    inet6 fe80::20c:29ff:fe9e:3a11/64 scope link 
       valid_lft forever preferred_lft forever