DHCP配置实例(含DHCP中继代理)

https://blog.51cto.com/yuanbin/109759

DHCP****配置实例(含DHCP中继代理)

某公司局域网有192.168.1.0/24和192.168.2.0/24这两个子网。现要配置一台DHCP服务器为这两个网段提供IP地址的动态分配服务。但是连接这两个子网的路由器不具备DHCP中继功能,所以,就要在内网配置一台DHCP服务器和一台DHCP中继服务器。DHCP中继服务器要有两块网卡,一块网卡连接192.168.1.0/24段,另一块网卡连接192.168.2.0/24段。DHCP中继服务器网卡Eth0的IP地址是192.168.1.250/24;Eth1的IP地址是192.168.2.250/24。DHCP服务器的IP地址是192.168.1.251/24。

1. 需求

192.168.1.0/24段用于动态分配IP地址的范围是192.168.1.100--192.168.1.200,默认网关是192.168.1.1/24。

192.168.2.0/24段用于动态分配IP地址的范围是192.168.2.100--192.168.2.140和192.168.2.160—192.168.2.200,默认网关是192.168.2.1/24。

192.168.1.100这个IP需要固定分配给MAC地址为00:00:EC:WR:TY:3R的电脑。

192.168.1.101这个IP需要固定分配给MAC地址为00:AD:CE:45:2F:2C的电脑。

192.168.2.100这个IP需要固定分配给MAC地址为00:AE:35:ER:42:68的电脑。

2. 基本网络拓扑结构

DHCP试验拓扑

3. 配置服务器网卡

① 配置DHCP服务器网卡

vi /etc/sysconfig/network-scripts/ifcfg-eth0

DHCP

**注:DHCP服务器的网关一定要指定,**不然PC2在获取IP时,DHCP服务器日志一直会报网络不可达的错误,并且PC2获取不到IP。

② 配置DHCP中继代理服务器网卡

vi /etc/sysconfig/network-scripts/ifcfg-eth0

DHCP中继eth0

vi /etc/sysconfig/network-scripts/ifcfg-eth1

DHCP中继eth1

4. 安装DHCP软件包

DHCP服务器和DHCP中继代理服务器都需要安装DHCP软件包。

rpm –ivh dhcp-3.0.5-7.el5.i386.rpm

rpm –ivh dhcp-devel-3.0.5-7.el5.i386.rpm

rpm –qa |grep dhcp(查看dhcp包有没有装上)

p_w_picpath

rpm –qc dhcp(查看dhcp相关文件的安装路径)

p_w_picpath

/etc/dhcpd.conf #DHCP服务器的配置文件

/etc/rc.d/init.d/dhcpd #DHCP服务器的启动脚本

/etc/rc.d/init.d/dhcrelay #DHCP中继代理服务的启动脚本

/var/lib/dhcpd/dhcpd.leases #DHCP守护进程程序启动必须的文件,DHCP服务器将客户的地址租用信息保存在该文件中,可查到IP地址的分配情况

5. 配置DHCP服务器

vi /etc/dhcpd.conf

 

1vi /etc/dhcpd.conf 2#全局设置 3ddns-update-style interim; 4ignore client-updates; 5default-lease-time 604800; 6max-lease-time 864000; 7option domain-name-servers 202.96.134.133,202.96.128.168; 8option time-offset -18000; 9#定义DHCP作用域 10subnet 192.168.1.0 netmask 255.255.255.0 { 11 range 192.168.1.100 192.168.1.200; 12 option broadcast-address 192.168.1.255; 13 option routers 192.168.1.1; 14} 15subnet 192.168.2.0 netmask 255.255.255.0 { 16 range 192.168.2.100 192.168.2.140; 17 range 192.168.2.160 192.168.2.200; 18 option broadcast-address 192.168.2.255; 19 option routers 192.168.2.1; 20} 21#定义保留IP 22group { 23 default-lease-time 259200; 24 option routers 192.168.1.1; 25 host staticpc1 { 26 hardware ethernet 00:00:EC:43:AC:EF; 27 fixed-address 192.168.1.100; 28 } 29 host staticpc2 { 30 hardware ethernet 00:AD:CE:45:2F:2C; 31 fixed-address 192.168.1.101; 32 } 33 host staticpc3 { 34 hardware ethernet 00:AE:35:32:42:68; 35 fixed-address 192.168.2.100; 36 option routers 192.168.2.1; 37 } 38}

6. 启动DHCP服务

service dhcpd start

chkconfig --level 35 dhcpd on

查看DHCP启动日志:

DHCP启动成功

查看系统监听的DHCP服务端口:

监听端口

7. 配置DHCP中继代理

1vi /etc/sysconfig/dhcrealy 2在里面输入: 3INTERFACES="eth1" 4DHCPSERVERS="192.168.1.251"

开启DHCP中继代理服务器的IPV4转发:

可以在两个地方开启:

① vi /etc/sysctl.conf

将“net.ipv4.ip_forward = 0”改成“net.ipv4.ip_forward = 1

开启IP转发

执行sysctl –p命令使刚开启的IPV4转发功能生效。

sysctl

echo 1 > /proc/sys/net/ipv4/ip_forward

8. 启动DHCP中继代理服务

dhcrelay 192.168.1.251

启动dhcrelay

service dhcrelay start

chkconfig --level 35 dhcrelay on

9. 测试

PC1测试:

查看PC1获取的IP信息:

pc1

查看DHCP服务器日志:

pc1

查看DHCP租约信息文件:

pc1租约文件

PC2测试:

查看PC2获取的IP信息:

pc2

查看DHCP服务器日志:

pc2日志

注:在DHCP租约信息文件(dhcpd.leases)中没有发现PC2的租约信息。很纳闷??

本次试验未测试需求中的3个IP保留。

点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

MySQL部分从库上面因为大量的临时表tmp_table造成慢查询

背景描述Time:20190124T00:08:14.70572408:00User@Host:@Id:Schema:sentrymetaLast_errno:0Killed:0Query_time:0.315758Lock_

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )

mysql设置时区

mysql设置时区mysql\_query("SETtime\_zone'8:00'")ordie('时区设置失败,请联系管理员!');中国在东8区所以加8方法二:selectcount(user\_id)asdevice,CONVERT\_TZ(FROM\_UNIXTIME(reg\_time),'08:00','0