Linux搭建DHCP服务

当局域网中有大量的主机时,如果逐个为每一台主机手动设置IP地址、默认网关、DNS服务器等网络参数,显然是一个费力而且容易出错的办法。那就就需要使用部署一台——DHCP服务器。

DHCP的典型应用模式:
在网络中搭建一台DHCP服务器,负责集中分配各种网络地址参数(IP地址、子网掩码、广播地址、默认网关地址、DNS服务器地址);其他主机作为DHCP客户机,将网卡配置为自动获取IP地址,即可与DHCP服务器进行通信,完整自动配置的过程。

关于如何在Windows中如何搭建DHCP服务可以参考博文:Windows server 2016 搭建DHCP服务

今天我们在Linux系统中搭建DHCP服务器

配置DHCP服务器

1.安装DHCP服务器软件

首先确定本机的IP地址,

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33 
//这是网卡的配置文件

其中个选项的含义,如图:
Linux搭建DHCP服务
为了方便起见,我们使用yum的方式安装DHCP服务

[root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# rm -rf *
[root@localhost yum.repos.d]# vim a.repo
[a]
baseurl=file:///mnt
gpgcheck=0
[root@localhost ~]# mount /dev/cdrom /mnt
[root@localhost ~]# yum clean all
//清空yum缓存
[root@localhost ~]# yum -y install dhcp
//安装dhcp服务
2.建立dhcp服务的主配置文件
[root@localhost ~]# vim /etc/dhcp/dhcpd.conf 
//这是dhcp默认的主配置文件(默认是空的)
[root@localhost ~]# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
//将dhcp服务的模板复制过来,充当dhcp服务的主配置文件

1)dhcp服务的主配置文件的构成,如图:
Linux搭建DHCP服务
2)确定dhcp服务的全局配置
Linux搭建DHCP服务

[root@localhost ~]# vim /etc/dhcp/dhcpd.conf 
          ………………             //省略部分内容
subnet 192.168.1.0 netmask 255.255.255.0 {
//声明网段,子网掩码
  range 192.168.1.10 192.168.1.100;
    //分配的地址范围
  option domain-name-servers 192.168.1.1;
    //DNS服务器地址
  option domain-name "internal.example.org";
  option routers 192.168.1.1;
    //网关地址
  option broadcast-address 192.168.1.255;
    //广播地址
  default-lease-time 60000;
    //默认租约时间(单位是秒)
  max-lease-time 720000;
    //最大租约时间(单位是秒)
}
          ………………             //省略部分内容
host fantasia {
  hardware ethernet 00:0C:29:DC:C9:08;
  //客户机的MAC地址
  fixed-address 192.168.1.88;
    //分配给客户机的IP地址
}
3.启动DHCP服务
[root@localhost ~]# systemctl start dhcpd
//启动DHCP服务
[root@localhost ~]# netstat -anput | grep 67
udp        0      0 0.0.0.0:67              0.0.0.0:*                           3592/dhcpd  
//查看监听端口是UDP协议67端口

验证试验效果

Windows 客户端(分配的固定的IP地址)
Linux搭建DHCP服务

Windows主机可以使用以下命令:

ipconfig /renew:可以为主机重新获取新的IP地址;
ipconfig /release: 释放IP地址;
tracert IP地址:可以测试从当前主机到目的主机经过的网络节点;
route print:查看路由表。

Linux客户端
只需将网卡信息中“BOOTPROTO=dhcp”即可:

[root@localhost ~]# ifconfig  ens33
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.1.10  netmask 255.255.255.0  broadcast 192.168.1.255
        inet6 fe80::da26:8c07:1d19:3e1e  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:2b:56:b5  txqueuelen 1000  (Ethernet)
        RX packets 138  bytes 16340 (15.9 KiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 114  bytes 16307 (15.9 KiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

Linux客户端可以使用以下命令:

dhclient -d ens33:可以为主机重新获取新的IP地址;
dhclient -r ens33:释放IP地址;
hostnamectl  -set hostname:主机名”可以永久使用主机名(使用“bash”命令立即生效);
route add default gw IP地址:添加默认网关;
route del default gw IP地址:删除默认网关;
traceroute IP地址:可以测试从当前主机到目的主机经过的网络节点;
通过查看“/etc/resolv.conf”了解本机的默认DNS地址,对该文件的修改保存退出后会立即生效,不用重启系统(这是获取IP地址的linux主机自动获取的DNS服务器地址)

Linux操作主机默认最多三个DNS服务器地址(第三个以后会被忽略)优先使用第一个DNS地址。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值