掌握Linux DHCP服务:快速搭建与配置教程 (linux的dhcp服务)

Linux作为一种十分流行的开源操作系统,不仅被广泛应用于服务器、嵌入式系统等领域,也在家庭网络方面占有一席之地。在家庭网络中,路由器在网络中起到着关键的作用,而其中的一个功能——DHCP协议,也是家庭网络以及企业网络中必不可少的一环。DHCP(Dynamic Host Configuration Protocol,动态主机配置协议)是一个计算机网络协议,它在网络中动态地为主机分配IP地址及其他参数,如子网掩码、默认网关、DNS服务器等。本文将向读者详细介绍如何在Linux上快速搭建和配置DHCP服务。

一、准备工作

在进行DHCP服务搭建之前,需要确保计算机系统中已经安装了DHCP服务程序。在Linux中,可以使用如下命令来查询是否已安装DHCP服务:

“`

dpkg -l isc-dhcp-server

“`

如果该命令的输出结果中含有“ii isc-dhcp-server”,则说明DHCP服务程序已经安装。如果没有安装,则可以使用如下命令来安装:

“`

sudo apt-get install isc-dhcp-server

“`

二、配置DHCP服务

1、DHCP服务主配置文件dhcpd.conf的配置

在安装DHCP服务后,需要对DHCP服务主配置文件dhcpd.conf进行配置,以为客户端提供IP地址等信息。该文件的默认位置在/etc/dhcp/dhcpd.conf,该文件可以通过vi等编辑器打开并修改其中的配置。下面是一个示例配置文件的部分代码:

“`

# Sample /etc/dhcpd.conf

default-lease-time 600;

max-lease-time 7200;

option subnet-mask 255.255.255.0;

option broadcast-address 192.168.1.255;

option routers 192.168.1.1;

option domn-name-servers 192.168.1.1, 8.8.8.8;

subnet 192.168.1.0 netmask 255.255.255.0 {

range 192.168.1.10 192.168.1.100;

}

“`

其中,各项配置的含义如下:

– default-lease-time:DHCP客户端租用IP地址的默认时间。该时间默认为7200秒,也可以自行设置。

– max-lease-time:DHCP客户端租用IP地址的最长时间。该时间默认为86400秒,也可以自行设置。

– option subnet-mask:DHCP客户端的子网掩码,默认为255.255.255.0。

– option broadcast-address:DHCP客户端的广播地址,默认为192.168.1.255。

– option routers:DHCP客户端的默认网关地址。

– option domn-name-servers:DHCP客户端的DNS服务器地址。

– subnet:可供DHCP客户端使用的IP地址段及其子网掩码。

需要注意的是,在dhcpd.conf中配置subnet的同时,也需要在/etc/network/interfaces中对相应的网卡进行配置。例如,如果想在eth0网卡上提供DHCP服务,则需要在该文件中添加如下内容:

“`

auto eth0

iface eth0 inet dhcp

“`

2、DHCP服务的启动和运行

在完成DHCP服务的配置后,可以使用如下命令来启动DHCP服务:

“`

sudo systemctl start isc-dhcp-server.service

“`

为了使DHCP服务在系统启动时自动运行,可以使用以下命令:

“`

sudo systemctl enable isc-dhcp-server.service

“`

3、DHCP服务的日志和调试

在使用DHCP服务的过程中,可能会遇到一些问题,如客户端无法获取IP地址或其他网络配置等。此时,我们需要查看DHCP服务的日志以及进行调试。在Linux系统中,DHCP服务的日志默认存储在/var/log/syslog文件中。可以通过如下命令查看DHCP服务的日志:

“`

cat /var/log/syslog | grep dhcpd

“`

如果想查看更为详细的日志信息,可以在dhcpd.conf中添加如下配置:

“`

log-facility local7;

“`

同时,在/etc/syslog.conf文件中对DHCP服务的日志添加配置,以指定日志的存储和输出方式:

“`

local7.* /var/log/dhcpd.log

“`

配置完成后,需重启rsyslog服务使其生效:

“`

sudo service rsyslog restart

“`

四、结语

DHCP服务是一个十分有用的网络服务,它可以为大量设备提供统一的网络配置。在Linux系统中,使用isc-dhcp-server程序可以快速地搭建和配置DHCP服务。本文从DHCP服务的配置、启动和运行以及日志和调试方面讲解了如何使用Linux搭建和配置DHCP服务。希望这篇文章能够对您有所帮助。

相关问题拓展阅读:

Linux(centos7)之DHCP部署

centos7部署DHCP服务

yum -y install dhcp //安装DHCP服务

vim /etc/dhcp/dhcpd.conf //配置文件,里面什么都没有,告诉我们在/usr/share/doc/dhcp*/dhcpd.conf.example有个配置模板

cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example    /etc/dhcp/dhcpd.conf //将模板cp过来

vim /etc/dhcp/dhcpd.conf //编辑DHCP配置文件

 subnet 192.168.130.0 netmask 255.255.255.0 { //声明网段和子网掩码

 range 192.168.130.10 192.168.130.20; //设置分配DHCP地址的地址池,根据实段皮际

  option domain-name-servers 202.96.128.86; //指定DNS服务器地址

   option domain-name “internal.example.org”; //搜索域,根据情况设置,这里选择注释#

   option routers 192.168.130.2; //设置客户机的默认网关地址

   option broadcast-address 192.168.130.255; //广播地址

     default-lease-time 300; //默认租约时间

max-lease-time 7200; //更大租约时间

ddns-update-style none; //启用或禁用全局动态dns更新

握段差}

vim  /etc/sysconfig/network-scripts/ifcfg-ens33 //修改网卡配置的如下几项

BOOTPROTO=static

IPADDR=192.168.130.5

NETMASK=255.255.255.0

GATEWAY=192.168.130.2

DNS1=202.96.128.86

ONBOOT=yes

ifup ens33 //启动网卡

systemctl start  dhcpd //启动服务

systemctl  enable dhcpd //下次重启启动DHCP服务

systemctl status dhcpd //查看DHCP的状态

netstat  -tunlp | grep dhcpd //查看DHCP端口

客户端

dhclient -d ens33 //重新获取DHCP地址

dhclient -r  ens33 //释放获取的DHCP地址

ifconfig //查看网卡信息 | ip a

DHCP服务端

less /var/lib/燃码dhcpd/dhcpd.leases //查看DHCP租约信息

Linux下如何安装DHCP服务和使用

DHCP基于客户/服务器模式。当DHCP客户端启动时,它会自动与DHCP服务器通信,由DHCP服务器为DHCP客户端供给自动分配IP地址的服务运昌。 当然高等的DHCP,不光只是分配地址这么简单,今天我们的课程只是架设一个普通的DHCP的服务器, client端能获取到上网必须的网络配置信息 安装了DHCP服务软件的服务器称为DHCP服务器,而启用了DHCP功效的客户机称为DHCP客户端,DHCP服务器是以地址租约的方法为DHCP客户端供给服务的,它有以下两种方法: 限定租期 和 永久租用 学DHCP服务器,就一定要知道DHCP服务器的工作原理: DHCPDISCOVER(DHCP发明) DHCPOFFER(DHCP供给) DHCPREQUEST(DHCP请求) DHCPACK(DHCP确认) 这个4个步骤,是client获取IP地址必经的步骤 DHCP供给的时候,服务器已经给client分配了IP地址,第二部分分给client的IP地址是临时的,client得到这个IP地址后,会发出DHCP请求,请求租用这个地址,服务器收到请求后,就会正式把这个旁纳扒地址分配给client,继而向client发送DHCP确认。 这个四步主要是应对同一网络多个DHCP服务器 后台过程:dhcpd 脚本:/etc/rc.d/init.d/dhcpd 使用端口:67 所需RPM包:dhcp 相关RPM包: dhcp-devel-3.0.5-7.el5.i386.rpm dhcpv6-0.10-33.el5.i386.rpm dhcpv6_client-0.10-33.el5.i386.rpm 配置文件:/etc/dhcpd.conf 日志:/var/log/xferlog 再提示一点吧,网络启动方法也叫bootpc,这样获取的IP地址是不会受服务器的租期111ttt.com的,它永远有效 好了,我们先安装DHCP服务器 一、下载或从光盘上找到DHCP服务安装包。 二、安装(dhcp*代表其安装包名称): # rpm -ivh dhcp* 三、配置DHCP文件: 复制/usr/share/doc/dhcp*/dhcpd.conf.sample 到/etc目录下,更名为:dhcpd.conf # cp /usr/share/doc/dhcp*/dhcpd.conf.sample /etc/dhcpd.conf 当然,也可以先vi /etc/dhcpd.conf,然后在末行模式运行以下命令: r /usr/share/doc/dhcp*/dhcpd.conf.sample 这样这个dhcpd.conf.sample文件的内容就导进来了。 打开dhcpd.conf,要修改的几个地方: subnet 后面接的是你所定义的网段,要与本机的IP地址同网段, 每一语句以分号“;”结尾,不要忘记。 例如:我的IP是“192.168.2.11”,下面是我的配置文件: ddns-update-style interim; ignore client-updates; subnet 192.168.2.0 netmask 255.255.255.0 { option routers 192.168.2.1; option subnet-mask 255.255.255.0; option nis-domain “domain.org”; option domain-name “domain.org”; option domain-name-servers 192.168.2.1; option time-offset; range dynamic-bootp 192.168.2..168.2.254 default-lease-time 21600; max-lease-time 43200; filename “/pxelinux.0”; next-server 192.168.2.11; host ns { next-server marvin.redhat.com; hardware ethernet 12:34:56:78:AB:CD; fixed-address 207.175.42.254; } } 四、详细注解: ddns-update-style interim; #定义所支持的茄链DNS动态更新类型(必选),一般我们设置成关闭, #interim和none都是关闭的意思 allow/ignore client-updates; #允许/疏忽客户机更新DNS记载 allow/deny unknown-clients; #是否动态分配IP给未知的使用者 allow/deny bootp; #是否响应激活查询 allow/deny booting; #是否响应使用者查询 subnet 192.168.2.0 netmask 255.255.255.0 { #设置子网声明 # — default gateway option routers 192.168.2.1; #设置缺省网关为192.168.2.1 option subnet-mask 255.255.255.0; #设置客户端的子网掩码 option nis-domain “domain.org”; #为客户设置NIS域 option domain-name “domain.org”; #为客户设置域名 option domain-name-servers 192.168.2.1; #为客户设置域名服务器 option time-offset; # Eastern Standard Time #为客户端指定格林威治时间偏移时间,单位秒, # 该选项可以在全局配置、局部配置均可使用 # option ntp-servers 192.168.2.1; #NTP是时间服务器 # option netbios-name-servers 192.168.2.1; 设置wins服务器 # — Selects point-to-point node (default is hybrid). Don’t change this unless # — you understand Netbios very well # option netbios-node-type 2; #设置netbios节点类型 我不清楚这个netbios节点是什么东西 range dynamic-bootp 192.168.2.28 192.168.2.254; #设置动态的地址池 default-lease-time 21600; #设置缺省的地址租期 max-lease-time 43200; #设置客户端最长的地址租期 # we want the nameserver to appear at a fixed address filename “/pxelinux.0”; #开始启动文件的名称,应用于无盘安装,可以是tftp的相对或绝对路径 next-server 192.168.2.11; #This is the name of the server they should get it from #tftp服务器,可以和dhcp服务器不在同一机器上,一般是PXE网络使用此参数 #设置主机声明 host ns { next-server marvin.redhat.com; #设置由于定义服务器从引导文件中装入的主机名,用于无盘站 hardware ethernet 12:34:56:78:AB:CD; #指定dhcp客户的mac地址 fixed-address 207.175.42.254; #给指定的mac地址分配ip } } 五、配置好dhcpd.conf文件后就可以启动dhcp服务了: # service dhcpd restart 这时可以用“netstat -nlutp”命令查看dhcp服务是否有启动。 六、其它相关文件: 1、这个文件/var/lib/dhcpd/dhcpd.leases,可以看到被租出去的IP地址和相关信息。 2、这个文件/etc/sysconfig/dhcpd是指定DHCP服务器111ttt.com的网卡,如果只有一个网卡,一般不用设置 DHCPDARGS=eth0 或者是eth1 ,如果全部111ttt.com就不用管。 3、这个文件/etc/sysconfig/dhcrelay就是设置DHCP中继的文件,大家打开瞧一下吧。 interfaces 就是来自这个端口的dhcpdiscover(请求)都会转发到后面的DHCPSERVERS服务器。 设置了DHCP中继,需要启动中继服务:service dhcrelay start 七、在linux客户机下面,你可以手动配置你的dhcp: 观察你的网络配置文件,如果你没有设置为自动启动联网,则要修改你的网络配置文件。

DHCP基于客户/服务器模式。当DHCP客户端启动时,它会自动与DHCP服务器通信,由DHCP服务器为DHCP客户端供给自动分配IP地址的服务。

  当然高等的DHCP,不光只是分配地址这么简单,今天我们的课程只是架设一个普通的DHCP的服务器, client端能获取到上网必须的网络配置信息

  安装了DHCP服务软件的服务器称为DHCP服务器,而启用了DHCP功效的客户机称为DHCP客户端,DHCP服务器是以地址租约的方法为DHCP客户端供给服务的,它有以下两种方法:

  限定租期 和 永久租用

  学DHCP服务器,就一定要知道DHCP服务器的工作原理:

  DHCPDISCOVER(DHCP发明)

  燃差DHCPOFFER(DHCP供给)皮搏皮

  DHCPREQUEST(DHCP请求)

  DHCPACK(DHCP确认)

  这个4个步骤,是client获取IP地址必经的步骤

  DHCP供给的时候,服务器已经给client分配了IP地址,第二部分分给client的IP地址是临时的,client得到这个IP地址后,会发出DHCP请求,请求银拍租用这个地址,服务器收到请求后,就会正式把这个地址分配给client,继而向client发送DHCP确认。

  这个四步主要是应对同一网络多个DHCP服务器

  后台过程:dhcpd

  脚本:/etc/rc.d/init.d/dhcpd

  使用端口:67

  所需RPM包:dhcp

  相关RPM包:

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

  dhcpv6-0.10-33.el5.i386.rpm

  dhcpv6_client-0.10-33.el5.i386.rpm

  配置文件:/etc/dhcpd.conf

  日志:/var/log/xferlog

  再提示一点吧,网络启动方法也叫bootpc,这样获取的IP地址是不会受服务器的租期111ttt.com的,它永远有效

  好了,我们先安装DHCP服务器

  一、下载或从光盘上找到DHCP服务安装包。

  二、安装(dhcp*代表其安装包名称):

  # rpm -ivh dhcp*

  三、配置DHCP文件:

  复制/usr/share/doc/dhcp*/dhcpd.conf.sample 到/etc目录下,更名为:dhcpd.conf

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

  当然,也可以先vi /etc/dhcpd.conf,然后在末行模式运行以下命令:

  r /usr/share/doc/dhcp*/dhcpd.conf.sample

  这样这个dhcpd.conf.sample文件的内容就导进来了。

  打开dhcpd.conf,要修改的几个地方:

  subnet 后面接的是你所定义的网段,要与本机的IP地址同网段,

  每一语句以分号“;”结尾,不要忘记。

  例如:我的IP是“192.168.2.11”,下面是我的配置文件:

  ddns-update-style interim;

  ignore client-updates;

  subnet 192.168.2.0 netmask 255.255.255.0 {

  option routers 192.168.2.1;

  option subnet-mask 255.255.255.0;

  option nis-domain “domain.org”;

  option domain-name “domain.org”;

  option domain-name-servers 192.168.2.1;

  option time-offset;

  range dynamic-bootp 192.168.2..168.2.254

  default-lease-time 21600;

  max-lease-time 43200;

  filename “/pxelinux.0”;

  next-server 192.168.2.11;

  host ns {

  next-server marvin.redhat.com;

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

  fixed-address 207.175.42.254;

  }

  }

  四、详细注解:

  ddns-update-style interim; #定义所支持的DNS动态更新类型(必选),一般我们设置成关闭,

  #interim和none都是关闭的意思

  allow/ignore client-updates; #允许/疏忽客户机更新DNS记载

  allow/deny unknown-clients; #是否动态分配IP给未知的使用者

  allow/deny bootp; #是否响应激活查询

  allow/deny booting; #是否响应使用者查询

  subnet 192.168.2.0 netmask 255.255.255.0 { #设置子网声明

  # — default gateway

  option routers 192.168.2.1; #设置缺省网关为192.168.2.1

  option subnet-mask 255.255.255.0; #设置客户端的子网掩码

  option nis-domain “domain.org”; #为客户设置NIS域

  option domain-name “domain.org”; #为客户设置域名

  option domain-name-servers 192.168.2.1; #为客户设置域名服务器

  option time-offset; # Eastern Standard Time #为客户端指定格林威治时间偏移时间,单位秒,

  # 该选项可以在全局配置、局部配置均可使用

  # option ntp-servers 192.168.2.1; #NTP是时间服务器

  # option netbios-name-servers 192.168.2.1; 设置wins服务器

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

  # — you understand Netbios very well

  # option netbios-node-type 2; #设置netbios节点类型 我不清楚这个netbios节点是什么东西

  range dynamic-bootp 192.168.2.28 192.168.2.254; #设置动态的地址池

  default-lease-time 21600; #设置缺省的地址租期

  max-lease-time 43200; #设置客户端最长的地址租期

  # we want the nameserver to appear at a fixed address

  filename “/pxelinux.0”; #开始启动文件的名称,应用于无盘安装,可以是tftp的相对或绝对路径

next-server 192.168.2.11; #This is the name of the server they should get it from

  #tftp服务器,可以和dhcp服务器不在同一机器上,一般是PXE网络使用此参数

  #设置主机声明

  host ns {

  next-server marvin.redhat.com; #设置由于定义服务器从引导文件中装入的主机名,用于无盘站

  hardware ethernet 12:34:56:78:AB:CD; #指定dhcp客户的mac地址

  fixed-address 207.175.42.254; #给指定的mac地址分配ip

  }

  }

  五、配置好dhcpd.conf文件后就可以启动dhcp服务了:

  # service dhcpd restart

  这时可以用“netstat -nlutp”命令查看dhcp服务是否有启动。

  六、其它相关文件:

  1、这个文件/var/lib/dhcpd/dhcpd.leases,可以看到被租出去的IP地址和相关信息。

  2、这个文件/etc/sysconfig/dhcpd是指定DHCP服务器111ttt.com的网卡,如果只有一个网卡,一般不用设置

  DHCPDARGS=eth0 或者是eth1 ,如果全部111ttt.com就不用管。

  3、这个文件/etc/sysconfig/dhcrelay就是设置DHCP中继的文件,大家打开瞧一下吧。

  interfaces 就是来自这个端口的dhcpdiscover(请求)都会转发到后面的DHCPSERVERS服务器。

  设置了DHCP中继,需要启动中继服务:service dhcrelay start

  七、在linux客户机下面,你可以手动配置你的dhcp:

  观察你的网络配置文件,如果你没有设置为自动启动联网,则要修改你的网络配置文件。

  # vi /etc/sysconfig/network

  添加“NETWORKING=yes”(让引导的时候启动联网)

  或者使用

  # @echo “NETWORKING=yes”> /etc/sysconfig/network

  然后再修改你的网卡配置文件

  /etc/sysconfig/network-scriptes/ifcfg-eth0 文件应该包括这几行:

  DEVICE=eth0

  BOOTPROTO=dhcp

  ONBOOT=yes

关于linux的dhcp服务的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。


数据运维技术 » 掌握Linux DHCP服务:快速搭建与配置教程 (linux的dhcp服务)