Linux|Linux网络服务之DHCP篇
目录
一、了解DHCP服务
1.1DHCP定义
1.2DHCP好处
1.3DHCP的分配方式
二、DHCP工作过程
三、使用 DHCP动态配置主机地址
3.1DHCP服务优点
3.2可分配的地址信息主要包括
四、DHCP中继原理与配置
4.1DHCP配置文件中的参数
4.2步骤讲解
1.关闭防火墙和selinux
2.安装服务并查看相关配置文件
3.拷贝并修改 /etc/dhcp/dhcpd.conf 配置文件
4.更改网卡连接模式为仅主机
5.修改网卡
6.修改配置文件
7.验证区域与全局优先级
8.dhcp中继配置
五、总结
一、了解DHCP服务
1.1DHCP定义 DHCP(动态主机配置协议)是一个局域网的网络协议。指的是由服务器控制一段IP地址范围,客户机登录服务器时就可以自动获得服务器分配的IP地址和子网掩码。默认情况下,DHCP作为Windows Server的一个服务组件不会被系统自动安装,还需要管理员手动安装并进行必要的配置。
DHCP采用C/S架构,C-client(客户机),S-server(服务器),客户机/服务器架构
DHCP服务对应传输层UDP协议,因为是C/S架构,所以客户机端口号是67,服务器端口号是68
1.2DHCP好处
- 减少管理员的工作量
- 避免输入错误的可能
- 避免IP地址冲突
- 当更改lP地址段时,不需要重新配置每个用户的IP地址
- 提高了IP地址的利用率
- 方便客户端的配置
- 自动分配:分配到一个IP地址后永久使用
- 手动分配:由DHCP服务器管理员专门指定IP地址
- 动态分配:使用完后释放该IP,供其它客户机使用
二、DHCP工作过程
文章图片
客户机从DHCP服务器获得IP地址的过程称为DHCP的租约过程分为四个步骤:
- 客户机请求P地址
●当一个DHCP客户机启动时,客户机还没有IP地址,所以客户机要通过DHCP获取一个合法的地址 ●此时DHCP客户机以广播方式发送DHCP Discover发现信息来寻找DHCP服务器;
- 服务器响应
●DHCP服务器接收到来自客户机请求lP地址的信息时,在自己的IP地址池中查找是否有合法的IP地址提供给客户机
●如果有,DHCP服务器将此IP地址做上标记,加入到DHCP Offer的消息中,然后广播一则DHCP Offer消息
- 客户机选择IP地址
●客户机选择第一台DHCP服务器回复的ip地址,并且要广播发送DHCP request,通告给局域网中所有的DHCP服务器,它选择了哪个IP和哪个DHCP(发送DHCP request的原因有两层,第一层是通告所有DHCP,让未被选中的服务器,把未使用的地址收回,第二层是通告给被选中的服务器,这个IP地址客户机要使用了)
- 服务器确定租约
●DHCP服务器接收到DHCP Request消息后,以DHCP ACK消息的形式向客户机广播成功确认,该消息包含有IP地址的有效租约和其他可配置的信息 ●当客户机收到DHCP ACK消息时,配置IP地址,完成TCP/IP的初始化‘
- 重新登陆:DHCP客户机每次重新登录网络时,不需要再发送DHCP Discover信息,而是直接发送包含前一次所分配的IP地址的DHCP Request请求信息
- 更新租约:
●当DHCP服务器向客户机出租的IP地址租期达到50%时,就需要更新租约; ●客户机直接向提供租约的服务器发送DHCP Request包,要求更新现有的地址租约。
●减轻管理和维护成本、提高网络配置效率
3.2可分配的地址信息主要包括 ●网卡的IP地址、子网掩码
●对应的网络地址、广播地址
●默认网关地址 ●DNS服务器地址
四、DHCP中继原理与配置 4.1DHCP配置文件中的参数
#设置全局配置参数4.2步骤讲解 1.关闭防火墙和selinux
defau7t-lease-time 21600; #默认租约为6小时,单位为秒I
max-lease-time 43200; #最大租约为12小时,单位为秒
option domain-name "benet.com"; #指定默认域名
option domain-name-servers 202.106.0.20,202.106.148.1; #指定DNS服务器地址
ddns-update-style none; #禁用DNS动态更新
#subnet网段声明(作用于整个子网段,部分配置参数优先级高于全局配置参数)
subnet 192.168.100.0 netmask 255.255.255.o {#声明要分配的网段地址
range 192.168.100.128 192.168.100.200; #设置地址池
option routers 192.168.100.1; #指定默认网关地址
#host主机声明(给单机分配固定的IP地址)
host hgstname{#指定需要分配固定IP地址的客户机名称
hardware ethernet 00:c0:c3:22:46:81; #指定该主机的MAC地址
fixed-address 192.168.4.100; #指定保留给该主机的IP地址
[root@localhost ~]# systemctl stop firewalld.service
[root@localhost ~]# setenforce 0
文章图片
2.安装服务并查看相关配置文件
[root@localhost ~]# yum install -y dhcp#安装DHCP服务
[root@localhost ~]# rpm -qc dhcp#查看相关配置文件
/etc/dhcp/dhcpd.conf#我们只需要对/etc/dhcp/dhcpd.conf 此文档进行配置
/etc/dhcp/dhcpd6.conf
/etc/openldap/schema/dhcp.schema
/etc/sysconfig/dhcpd
/var/lib/dhcpd/dhcpd.leases
/var/lib/dhcpd/dhcpd6.leases
[root@localhost ~]# vim /etc/dhcp/dhcpd.conf
#空的
# DHCP Server Configuration file.
#see /usr/share/doc/dhcp*/dhcpd.conf.example#可以将此文档拷贝过来
#see dhcpd.conf(5) man page
#
文章图片
文章图片
3.拷贝并修改 /etc/dhcp/dhcpd.conf 配置文件
[root@localhost ~]# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf
cp:是否覆盖"/etc/dhcp/dhcpd.conf"? yes#拷贝上述文档并覆盖,4.2.5代表版本
[root@localhost ~]# cd /etc/dhcp/#切换至dhcpd.conf所在目录
[root@localhost dhcp]# vim dhcpd.conf#进入编辑器查看配置文件,此时不为空了
文章图片
文章图片
4.更改网卡连接模式为仅主机
文章图片
更改完成后Xshell就断开了,需要进虚拟机的终端去更改配置
5.修改网卡
[root@localhost dhcp]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
#修改网卡ip地址及网关,然后保存退出
[root@localhost dhcp]# systemctl restart network#重启网络服务
root@localhost dhcp]# ifconfig#查看一下ip地址是不是配好了
文章图片
文章图片
文章图片
6.修改配置文件
[root@localhost ~]# cd /etc/dhcp/#切换至dhcpd.conf所在目录
[root@localhost dhcp]# vim dhcpd.conf#修改配置文件
末行模式下:set nu显示行号
#第8行 修改默认的全局DNS地址
option domain-name-servers 8.8.8.8;
#直接修改27行
subnet 192.168.100.0netmask 255.255.255.0 {
range 192.168.100.128192.168.100.200;
option routers 192.168.100.1;
option domain-name-servers 114.114.114.114;
}
subnet 192.168.10.0netmask 255.255.255.0{
range 192.168.10.128192.168.10.200;
option routers 192.168.10.1;
}
subnet 192.168.20.0netmask 255.255.255.0{
range 192.168.20.128192.168.20.200;
option routers 192.168.20.1;
}
[root@localhost dhcp]# systemctl start dhcpd#启动dhcp服务
[root@localhost dhcp]# systemctl status dhcpd#查看是否成功启动
[root@localhost dhcp]# netstat -anup| grep "dhcp"#查看网络状态,过滤出dhcp端口
文章图片
文章图片
文章图片
文章图片
文章图片
文章图片
文章图片
7.验证区域与全局优先级
#windows设置虚拟网卡为仅主机模式
#虚拟网络编辑器里也设置成仅主机模式,一定要把使用本地DHCP选项勾掉
#改一下windows虚拟机的网卡配置
#在windows系统的cmd里测试是否能ping通dhcp服务器,然后释放并重启一下网络
ping 192.168.100.100ping 一下dhcp服务器,看是否可以ping通
ipconfig查看网卡信息
ipconfig /release释放地址
ipconfig /renew重新获取地址
ipconfig /all可以看到详情信息,
文章图片
文章图片
文章图片
文章图片
文章图片
文章图片
8.dhcp中继配置
1)准备好需要的设备
文章图片
2)设置一下服务器
文章图片
文章图片
文章图片
3)连接好设备
文章图片
4)配置二层交换机SW1
undo terminal mo5)配置三层交换机
sys
[Huawei]sys SW1
[SW1]user-interface console 0
[SW1-ui-console0]idle-timeout 0 0
[SW1-ui-console0]q
[SW1]vlan batch 10 20 100
[SW1]int e0/0/2
[SW1-Ethernet0/0/2]port link-type access
[SW1-Ethernet0/0/2]port default vlan 10
[SW1-Ethernet0/0/2]int e0/0/3
[SW1-Ethernet0/0/3]port link-type access
[SW1-Ethernet0/0/3]port default vlan 20
[SW1-Ethernet0/0/3]int e0/0/4
[SW1-Ethernet0/0/4]port link-type access
[SW1-Ethernet0/0/4]port default vlan 100
[SW1-Ethernet0/0/4]int e0/0/1
[SW1-Ethernet0/0/1]port link-type trunk
[SW1-Ethernet0/0/1]port trunk allow-pass vlan all
undo terminal monitor6)测试,现在服务器中ping测试一下
sys
[Huawei]sys SW2
[SW2]user-interface console 0
[SW2-ui-console0]idle-timeout 0 0
[SW2-ui-console0]q
[SW2]int g0/0/1
[SW2-GigabitEthernet0/0/1]port link-type trunk
[SW2-GigabitEthernet0/0/1]port trunk allow-pass vlan all
#开启dhcp功能
[SW2]dhcp enable
#配中继
[SW2]vlan batch 10 20 100
[SW2]int vlan 10
[SW2-Vlanif10]ip add 192.168.10.1 24
[SW2-Vlanif10]dhcp select relay
[SW2-Vlanif10]dhcp relay server-ip 192.168.100.100
[SW2-Vlanif10]int vlan 20
[SW2-Vlanif20]ip add 192.168.20.1 24
[SW2-Vlanif20]dhcp select relay
[SW2-Vlanif20]dhcp relay server-ip 192.168.100.100
[SW2-Vlanif20]int vlan 100
[SW2-Vlanif100]ip add 192.168.100.1 24
[SW2-Vlanif100]dhcp select relay
[SW2-Vlanif100]dhcp relay server-ip 192.168.100.100
文章图片
7)PC测试
文章图片
文章图片
文章图片
文章图片
五、总结 在设置虚拟网络编辑器的时候一定要将最下面哪个使用本地DHCP的选项勾选掉,博主做的时候忘记没有勾选,地址就出不来。在配置文件里配置DHCP池的时候,每一段结尾必须加“;”
【Linux|Linux网络服务之DHCP篇】
推荐阅读
- PMSJ寻平面设计师之现代(Hyundai)
- 太平之莲
- 闲杂“细雨”
- 七年之痒之后
- 深入理解Go之generate
- 由浅入深理解AOP
- 期刊|期刊 | 国内核心期刊之(北大核心)
- 生活随笔|好天气下的意外之喜
- 感恩之旅第75天
- python学习之|python学习之 实现QQ自动发送消息