如何判断linux DHCP服务器状态/关闭/开启命令
1. 查看是否设置开机启动
chkconfig --list | grep dhcpd
2. 查看端口是否打开
netstat -anulp | grep :67
3.查看服务状态
/etc/init.d/dhcpd status
【查看是否运行dhcp服务: ps aux | grep dhcp |grep -v grep 】
4:关闭 dhcpd
/etc/init.d/dhcpd stop
5:开启 hdcpd
/etc/init.d/dhcpd start
如何在 Ubuntu/Debian Linux 中设置 DHCP 服务
步骤 1:在 Ubuntu 中安装 DHCP 服务器
1、 运行下面的命令来安装 DHCP 服务器包,也就是 dhcp3-server。
$ sudo apt install isc-dhcp-server
2、 安装完成后,编辑 /etc/default/isc-dhcp-server 使用 INTERFACES 选项定义 DHCPD 响应 DHCP 请求所使用的接口。
比如,如果你想让 DHCPD 守护进程监听 eth0,按如下设置:
INTERFACES=\"eth0\"
同样记得为上面的接口配置静态地址。
步骤 2:在 Ubuntu 中配置 DHCP 服务器
1、 DHCP 配置的主文件是 /etc/dhcp/dhcpd.conf, 你必须填写会发送到客户端的所有网络信息。
并且 DHCP 配置中定义了两种不同的声明,它们是:
parameters - 指定如何执行任务、是否执行任务,还有指定要发送给 DHCP 客户端的网络配置选项。
declarations - 定义网络拓扑、指定客户端、为客户端提供地址,或将一组参数应用于一组声明。
2、 现在打开并修改主文件,定义 DHCP 服务器选项:
$ sudo vi /etc/dhcp/dhcpd.conf
在文件顶部设置以下全局参数,它们将应用于下面的所有声明(请指定适用于你情况的值):
option domain-name \"tecmint.lan\";
option domain-name-servers ns1.tecmint.lan, ns2.tecmint.lan;
default-lease-time 3600; max-lease-time 7200;
authoritative;
3、 现在定义一个子网,这里我们为 192.168.10.0/24 局域网设置 DHCP (请使用适用你情况的参数):
subnet 192.168.10.0 netmask 255.255.255.0
{
option routers 192.168.10.1;
option subnet-mask 255.255.255.0;
option domain-search \"tecmint.lan\";
option domain-name-servers 192.168.10.1;
range 192.168.10.10 192.168.10.100;
range 192.168.10.110 192.168.10.200;
}
步骤 3:在 DHCP 客户端上配置静态地址
1、 要给特定的客户机分配一个固定的(静态)的 IP,你需要显式将这台机器的 MAC 地址以及静态分配的地址添加到下面这部分。
host centos-node
{
hardware ethernet 00:f0:m4:6y:89:0g;
fixed-address 192.168.10.105;
}
host fedora-node
{
hardware ethernet 00:4g:8h:13:8h:3a;
fixed-address 192.168.10.106;
}
保存并关闭文件。
2、 接下来,启动 DHCP 服务,并让它下次开机自启动,如下所示:
------------ SystemD ------------
$ sudo systemctl start isc-dhcp-server.service
$ sudo systemctl enable isc-dhcp-server.service
------------ SysVinit ------------
$ sudo service isc-dhcp-server.service start
$ sudo service isc-dhcp-server.service enable
3、 接下来不要忘记允许 DHCP 服务(DHCP 守护进程监听 67 UDP 端口)的防火墙权限:
$ sudo ufw allow 67/udp
$ sudo ufw reload $ sudo ufw show
步骤 4:配置 DHCP 客户端
1、 此时,你可以将客户端计算机配置为自动从 DHCP 服务器接收 IP 地址。
登录到客户端并编辑以太网接口的配置文件(注意接口名称/号码):
$ sudo vi /etc/network/interfaces
定义如下选项:
auto eth0 iface eth0 inet dhcp
保存文件并退出。重启网络服务(或重启系统):
------------ SystemD ------------
$ sudo systemctl restart networking
------------ SysVinit ------------
$ sudo service networking restart
另外你也可以使用 GUI 来在进行设置,如截图所示(在 Fedora 25 桌面中)设置将方式设为自动(DHCP)。
此时,如果所有设置完成了,你的客户端应该可以自动从 DHCP 服务器接收 IP 地址了。
就是这样了!在本篇教程中,我们向你展示了如何在 Ubuntu/Debian 设置 DHCP 服务器。在反馈栏中分享你的想法。如果你正在使用基于 Fedora 的发行版,请阅读如何在 CentOS/RHEL 中设置 DHCP 服务器。
我用linux系统搭建了个dhcp服务器,启动失败。配置文件如下:
配置文件没有问题。
可以按以下的方法检查:
Linux系统DHCP服务器配置方法
1.安装DHCP服务器软件包.
2.
配置Dhcpd.conf文件,路径为/etc/dhcpd.conf
如果没有此文件就新建一个,修改配置文件内容如下所示:
ddns-update-style
interim;
ignore
client-updates;
option
domain-name
\"jiawei.com\";
option
domain-name-servers
192.168.1.1,202.96.128.68;
shared-network
mynet
{
subnet
192.168.0.0
netmask
255.255.255.0
{
option
routers
192.168.0.1;
option
subnet-mask
255.255.255.0;
range
192.168.0.128
192.168.0.254;
default-lease-time
21600;
max-lease-time
43200;
host
ns
{
next-server
marvin.redhat.com;
hardware
ethernet
12:34:56:78:AB:CD;
fixed-address
192.168.0.129;
}
}
3.
设置网卡的IP地址和DHCP服务器的地址为同一网段.
这点很重要。
4.
启动DHCP服务,如启动成功则说明配置正确,命令为:service
dhcpd
start
service
dhcpd
configtest
可以检查配置脚本。
5.
设置DHCP服务的启动级别,命令为:
chkconfig
--level
35
dhcpd
on
6.
设置客户端为自动获取IP即可。
linux里dhcp中继怎么配置,具体命令?
1. 安装DHCP:rpm –ivh dhcp-2.0pl5-8.i386.rpm
2. 配置服务器:
l 为服务器自身设置静态IP地址。编辑/etc/sysconfig/network-scripts目录下脚本文件ifcfg-eth0,内容形式如下:
DEVICE=”eth0”
IPADDR=”192.168.xx.10”
NETMASK=“255.255.255.0”
ONBOOT =”yes”
BOOTPROTO=”none”
l 编辑/etc/sysconfig/network文件,内容如下:
NETWORKING=yes
HOSTNAME=”dhcpserver.ncie.org”
GATEWAY=”192.168.xx.254”
GATEWAYDEV=”eth0”
l 启动TCP/IP网络:service network restart
l 为广播地址设置主机名称为dhcp。在/etc/hosts文件中加入如下一行:
255.255.255.255 dhcp
l 把广播地址加入路由表:route add –host dhcp dev eth0
l 编辑/etc/dhcpd.conf文件,内容如下:
subnet 192.168.xx.0 netmask 255.255.255.0
default-lease-time 86400;
max-lease-time 259200;
option routers 192.168.xx.254;
option subnet-mask 255.255.255.0;
option domain-name “ncie.org”;
option domain-name-servers 192.168.0.1;
{
range 192.168.xx.101 192.168.xx.200;
}
l 建立租约数据库文件:touch /var/lib/dhcp/dhcpd.leases
l 启动dhcp服务器:service dhcpd start
l 检测dhcp服务器是否启动正常: netstat -utl
3. 配置客户端:
l 登录到局域网中的一台Linux客户机,检测客户机上是否安装有DHCP客户端软件dhcpcd,如果没有则安装该软件包。
l 配置客户机使用DHCP获取网络参数。编辑/etc/sysconfig/network-scripts下的ifcfg-eth0文件,内容形式如下:
DEVICE=”eth0”
ONBOOT=”yes”
BOOTPROTO=”dhcp”
l 启动网络接口eth0: ifup eth0
l 利用ifconfig命令查看一下客户机的网络接口启动状况,确认网络接口已经被启动。
任务二 配置DHCP中继代理
实验要求:
配置DHCP服务器和中继代理,使子网A内的DHCP服务器能够同时为子网A和子网B提供DHCP服务。为子网A内的客户机分配的网络参数同上,为子网B内的主机分配的网络参数如下:
l IP地址段:192.168.10.101-192.168.10.200
l 子网掩码:255.255.255.0
l 网关地址:192.168.10.254
l 域名服务器:192.168.0.5
l 子网所属域的名称:ncie.org
l 默认租约有效期:1天
l 最大租约有效期:3天
实验步骤:
l 配置DHCP中继代理
1. 登录到子网A和子网B的路由器,安装DHCP服务器端软件包。
2. 启动DHCP中继代理: dhcprelay –I eth2 192.168.xx.10(其中eth2连接B子网,192.168.xx.10是子网A内的DHCP服务器的IP地址。在实验中视具体情况而定。)
3. 用netstat命令检测中继代理是否成功启动,以及监听的网络接口是否是连接子网B的网络接口:netstat –utl|grep bootps
l 配置DHCP服务器
1. 编辑DHCP服务器/etc目录下的dhcpd.conf文件,内容形式如下:
share-network ncie.org{
default-lease-time 86400;
max-lease-time 259200;
option domain-name “ncie.org”
subnet 192.168.xx.0 netmask 255.255.255.0{
option routers 192.168.xx.254;
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.0.1
range 192.168.xx.101 192.168.xx.200;
}
subnet 192.168.10.0 netmask 255.255.255.0{
option routers 192.168.10.254;
option subnet-mask 255.255.255.0;
option domain-name-servers 192.168.0.5
range 192.168.10.100 192.168.10.200;
}
}
2. 重新启动DHCP服务: service dhcpd restart
l 客户端配置与检测
1. 配置子网B内的客户机使用DHCP服务器获取网络参数,步骤和配置子网A的客户机相同。
2. 查看网络B内的客户机上/etc/dhcpcd目录下的dhcpcd-eth0.info文件,检测所作的配置。
linux每次系统启动时也启动DHCPD,要执行什么命令?
Linux启动时执行命令
1. Linux 启动顺序:
(1)BIOS自检
(2)运行系统内核并检测硬件
(3)运行系统的第一个进程init
(4)init读取系统引导配置文件:
/etc/inittab中的信息进行初始化
/etc/rc.d/rc.sysinit------系统初始化脚本
/etc/rc.d/rcX.d/[KS]*------根据运行级别配置服务
/etc/rc.d/rc.local---------执行本地特殊配置
其它---------不同运行级别的特殊服务
Linux启动运行init程序来启动相关程序初始化,与启动相关的一个概念是运行级,
运行级是操作系统当前运行的级别,在不同运行级别上可以定义属于该运行级的启
动程序,系统的运行级别可以在/etc/inittab文件指定,与运行级相关运行程序通
过从源/etc/rc.d/init.d下链接到目的/etc/rcX.d,这里X为系统的默认运行级别,
因此,默认的启动脚本放在/etc/rc.d/init.d下。
有人建议在.login中执行相应命令,或在.bashrc(用tcsh shell,在.tcshrc)里
写命令。这是不行的,.login是在用户登录时执行,用户可能在本地无需登录,或
者在远程多个用户登录,多次登录;而.tcshrc是在shell启动时执行,登录后用户
一般会多次打开shell,这样该命令或程序就会被多次执行。
2. 缺省的运行级,Linux用到的级别如下:
# 0 - 停机(千万不要把initdefault 设置为0 )
# 1 - 单用户模式
# 2 - 多用户,但是没有 NFS
# 3 - 完全多用户模式
# 4 - 没有用到
# 5 - X11
# 6 - 重新启动 (千万不要把initdefault 设置为6 )
对各个运行级的详细解释:
0 为停机,机器关闭。
1 为单用户模式,就像Win9x 下的安全模式类似。
2 为多用户模式,但是没有NFS 支持。
3 为完整的多用户模式,是标准的运行级。
4 一般不用,在一些特殊情况下可以用它来做一些事情。
例如在笔记本电脑的电池用尽时,可以切换到这个模式来做一些设置。
5 就是 X11 ,进到 X Window 系统了。
6 为重启,运行 init 6 机器就会重启。
3. 如何让系统在启动是运行指定程序,根据启动顺序中的第四步,有两种方式。
一种方式是根据运行级别配置服务。
一种方式是执行本地特殊配置。
举例,任务在启动是运行命令cvslockd:
方式一:
(1)建立自启动脚本/etc/rc.d/init.d/cvslockd,内容为:
#!/bin/bash
/usr/local/bin/cvslockd
设置文件的属性为可执行:
#chmod +x /etc/rc.d/init.d/cvslockd
(2)查看计算机运行级别,在文件/etc/inittab里看到id:5:initdefault:,
则此系统运行级别为5。
(3)到/etc/rc5.d目录下,把你要执行的可执行文件做一个软连接,而且在
命名的时候要以大写S字母开头,S之后的数字大小代表执行顺序的先后,
数字越大越后执行。
#ln -s /etc/rc.d/init.d/cvslockd /etc/rc5.d/S100cvslockd
#ln -s /etc/rc.d/init.d/cvslockd /etc/rc0.d/K20cvslockd
方式二:
在/etc/rc.d/rc.local 添加 exec /usr/local/bin/cvslockd
该方式是在最后启动cvslockd。
还有一个论坛,也有关于这个的讨论: