DHCP介绍与实际应用
DHCP工作原理
dhcp动态主机配置协议
UDP协议:端口67:客户端。68:服务器端
用于为TCP/IP网络中的计算机自动分配TCP/IP参数的协议
优点
减少管理员的工作量
避免输入错误的可能
避免ip地址冲突
当更改IP地址段时,不需要重新配置每个用户的IP地址
提高了IP地址的利用率
方便客户端的配置
dhcp的分配方式
自动分配:分配到一个IP地址后永久使用(固定IP)
手动分配:由DHCP服务器管理员专门指定IP地址
动态分配:使用完后释放该IP,供其 他客户机使用(有租期)
dhcp分配IP地址的过程
客户机请求IP地址
当一个DHCP客户机启动时,客户机还没有IP地址,所以客户机要通过DHCP获取一个合法的地址
此时DHCP客户机以广播方式发送DHCP Discover发现信息来寻找DHCP服务器
服务器响应
DHCP服务器接收到来自客户机请求IP地址的信息时,在自己的IP地址池中查找是否有合法的IP地址提供给客户机
如果有,DHCP服务器将此IP地址做上标记,加入到DHCP Offer的消息中,然后广播一则DHCP Offer消息
客户机选择地址
DHCP客户机从接收到的第一个DHCP Offer消息中提取IP地址,发出IP地址的DHCP服务器将该地址保留,这样该地址就不能再分配给另一个DHCP客户机
服务器确定租约
DHCP服务器接收到DHCP Request消息后,以DHCP ACK消息的形式向客户机广播成功确认,该消息包含有IP地址的有效租约和其它可配置的信息
当客户机收到DHCP ACK消息时,配置IP地址,完成TCP/IP的初始化
重新登录
DHCP客户机每次重新登录网络时,不需要再发送DHCP Discover信息,而是直接发送包含前一次所分配的IP地址的DHCP Request请求信息
更新租约
当DHCP服务器向客户机出租的IP地址租期达到50%时,就需要更新租约(续约)
客户机直接向提供租约的服务器发送DHCP Request包,要求更新现有的地址租约。
应用
安装dhcp
yum -y install dhcp
查看是否安装
rpm -qa | grep dhcp
编辑dhcp配置文件
vi /etc/dhcp/dhcpd.conf #编辑配置文件
systemctl start dhcpd #启动服务
netstat -anpu | grep dhcpd #查看
完成后用客户机进行操作
将客户机上的网卡禁用后启用
查看地址下发情况
less /var/lib/dhcpd/dhcpd.leases
dhcp在三层交换机上的应用
拓扑图
设备::1个三层交换机、2个二层交换机、4个PC
目的:通过三层交换机为不同VLAN的主机分配不同网段的ip地址VLAN10 分配192.168.10.0/24网段的地址,VLAN20分配192.168.20.0/24 网段的地址
LSW1配置
< Huawei>undo terminal monitor
< Huawei>system-view
[Huawei]sysname L3-SW1
[L3-SW1]user-interface console 0
[L3-SW1-ui-console0]idle-timeout 0 0
[L3-SW1-ui-console0]q
[L3-SW1]vlan batch 10 20
[L3-SW1]int g0/0/1
[L3-SW1-GigabitEthernet0/0/1]port link-type trunk
[L3-SW1-GigabitEthernet0/0/1]port trunk allow-pass vlan all
[L3-SW1-GigabitEthernet0/0/1]int g0/0/2
[L3-SW1-GigabitEthernet0/0/2]port link-type trunk
[L3-SW1-GigabitEthernet0/0/2]port trunk allow-pass vlan all
[L3-SW1-GigabitEthernet0/0/2]q
LSW2配置
< Huawei>undo terminal monitor
Huawei]sysname L2-SW2
[L2-SW2]user-interface console 0
[L2-SW2-ui-console0]idle-timeout 0 0
[L2-SW2-ui-console0]vlan bat 10 20
[L2-SW2]int e0/0/1
[L2-SW2-Ethernet0/0/1]port link-type access
[L2-SW2-Ethernet0/0/1]port default vlan 10
[L2-SW2-Ethernet0/0/1]int e0/0/2
[L2-SW2-Ethernet0/0/2]port link-type access
[L2-SW2-Ethernet0/0/2]port default vlan 20
[L2-SW2-Ethernet0/0/2]int g0/0/1
[L2-SW2-GigabitEthernet0/0/1]port link-type trunk
[L2-SW2-GigabitEthernet0/0/1]port trunk allow-pass vlan all
LSW3配置
< Huawei>undo ter monitor
[Huawei]sysname L2 -SW3
[L2 -SW3]user-interface console 0
[L2 -SW3-ui-console0]idle-timeout 0 0
[L2 -SW3-ui-console0]vlan bat 10 20
[L2 -SW3]int e0/0/1
[L2 -SW3-Ethernet0/0/1]port link-type access
[L2 -SW3-Ethernet0/0/1]port default vlan 10
[L2 -SW3-Ethernet0/0/1]int e0/0/2
[L2 -SW3-Ethernet0/0/2]port link-type access
[L2 -SW3-Ethernet0/0/2]port default vlan 20
[L2 -SW3-Ethernet0/0/2]int g0/0/1
[L2 -SW3-GigabitEthernet0/0/1]port link-type trunk
[L2 -SW3-GigabitEthernet0/0/1]port trunk allow-pass vlan all
[L2 -SW3-GigabitEthernet0/0/1]
配置dhcp
LSW1
[L3-SW1]dhcp enable
[L3-SW1]ip pool dhcp 1
[L3-SW1-ip-pool-dhcp1]network 192.168.10.0 mask 24
[L3-SW1-ip-pool-dhcp1]gateway-list 192.168.10.1
[L3-SW1-ip-pool-dhcp1]dns-list 2.2.2.2 4.4.4.4
[L3-SW1-ip-pool-dhcp1]lease day 7
[L3-SW1-ip-pool-dhcp1]q
[L3-SW1]int vlan 10
[L3-SW1-Vlanif10]ip add 192.168.10.1 24
[L3-SW1-Vlanif10]dhcp select global
[L3-SW1-Vlanif10]q
[L3-SW1]ip pool dhcp2
[L3-SW1-ip-pool-dhcp2]network 192.168.20.0 mask 24
[L3-SW1-ip-pool-dhcp2]gateway-list 192.168.20.1
[L3-SW1-ip-pool-dhcp2]dns-list 2.2.2.2 1.1.1.1
[L3-SW1-ip-pool-dhcp2]lease day 8
[L3-SW1-ip-pool-dhcp2]q
[L3-SW1]int Vlanif 20
[L3-SW1-Vlanif20]ip add 192.168.20.1 24
[L3-SW1-Vlanif20]dhcp select global
[L3-SW1-Vlanif20]q
PC端测试
查看效果
dhcp服务中继(不同网段)
拓扑图
设备:1个三层交换机、1个路由器、2个二层交换机、4个PC机
目的:配置由R1为客户端分配不同VLAN的不同ip地址,三层交换机在中间起着中继的角色VLAN10 分配192.168.10.0/24网段的地址,VLAN20分为192.168.20.0/24 网段的地址
配置LSW1
< Huawei>undo terminal monitor
< Huawei>system-view
[Huawei]sysname L3-SW1
[L3-SW1]user-interface console 0
[L3-SW1-ui-console0]idle-timeout 0 0
[L3-SW1-ui-console0]q
[L3-SW1]vlan batch 10 20 30
[L3-SW1]int g0/0/1
[L3-SW1-GigabitEthernet0/0/1]port link-type trunk
[L3-SW1-GigabitEthernet0/0/1]port trunk allow-pass vlan all
[L3-SW1-GigabitEthernet0/0/1]int g0/0/2
[L3-SW1-GigabitEthernet0/0/2]port link-type trunk
[L3-SW1-GigabitEthernet0/0/2]port trunk allow-pass vlan all
[L3-SW1-GigabitEthernet0/0/2]q
[L3-SW1]int g0/0/3
[L3-SW1-GigabitEthernet0/0/3]port link-type access
[L3-SW1-GigabitEthernet0/0/3]port default vlan 30
[L3-SW1-GigabitEthernet0/0/3]q
[L3-SW1]int Vlanif 30
[L3-SW1-Vlanif30]ip add 10.1.1.10 24
[L3-SW1-Vlanif30]q
配置LSW2
< Huawei>undo terminal monitor
Huawei]sysname L2-SW2
[L2-SW2]user-interface console 0
[L2-SW2-ui-console0]idle-timeout 0 0
[L2-SW2-ui-console0]vlan bat 10 20
[L2-SW2]int e0/0/1
[L2-SW2-Ethernet0/0/1]port link-type access
[L2-SW2-Ethernet0/0/1]port default vlan 10
[L2-SW2-Ethernet0/0/1]int e0/0/2
[L2-SW2-Ethernet0/0/2]port link-type access
[L2-SW2-Ethernet0/0/2]port default vlan 20
[L2-SW2-Ethernet0/0/2]int g0/0/1
[L2-SW2-GigabitEthernet0/0/1]port link-type trunk
[L2-SW2-GigabitEthernet0/0/1]port trunk allow-pass vlan all
配置LSW3
< Huawei>undo terminal monitor
[Huawei]sysname L2 -SW3
[L2 -SW3]user-interface console 0
[L2 -SW3-ui-console0]idle-timeout 0 0
[L2 -SW3-ui-console0]vlan bat 10 20
[L2 -SW3]int e0/0/1
[L2 -SW3-Ethernet0/0/1]port link-type access
[L2 -SW3-Ethernet0/0/1]port default vlan 10
[L2 -SW3-Ethernet0/0/1]int e0/0/2
[L2 -SW3-Ethernet0/0/2]port link-type access
[L2 -SW3-Ethernet0/0/2]port default vlan 20
[L2 -SW3-Ethernet0/0/2]int g0/0/1
[L2 -SW3-GigabitEthernet0/0/1]port link-type trunk
[L2 -SW3-GigabitEthernet0/0/1]port trunk allow-pass vlan all
dhcp配置LSW1
[L3-SW1]dhcp enable
[L3-SW1]int vlan 10
[L3-SW1-Vlanif10]ip add 192.168.10.1 24
[L3-SW1-Vlanif10]dhcp select global
[L3-SW1-Vlanif10]dhcp select relay
[L3-SW1-Vlanif10]dhcp relay server-ip 10.1.1.1
[L3-SW1-Vlanif10]q
[L3-SW1]int Vlanif 20
[L3-SW1-Vlanif20]ip add 192.168.20.1 24
[L3-SW1-Vlanif20]dhcp select global
[L3-SW1-Vlanif20]dhcp select relay
[L3-SW1-Vlanif20]dhcp relay server-ip 10.1.1.1
[L3-SW1-Vlanif20]q
dhcp配置R1
[R1]dhcp enable
[R1]ip pool dhcp1
[R1-ip-pool-dhcp1]network 192.168.10.0 mask 24
[R1-ip-pool-dhcp1]gateway-list 192.168.10.1
[R1-ip-pool-dhcp1]dns-list 2.2.2.2 114.114.114.114
[R1-ip-pool-dhcp1]lease day 7
[R1-ip-pool-dhcp1]ip pool dhcp2
[R1-ip-pool-dhcp2]network 192.168.20.0 mask 24
[R1-ip-pool-dhcp2]gateway-list 192.168.20.1
[R1-ip-pool-dhcp2]dns-list 4.4.4.4 6.6.6.6
[R1-ip-pool-dhcp2]lease day 6
[R1-ip-pool-dhcp2]q
[R1]ip route-static 192.168.10.0 24 10.1.1.10
[R1]ip route-static 192.168.20.0 24 10.1.1.10
[R1]int g0/0/0
[R1-GigabitEthernet0/0/0]dhcp select global