配置DHCP
先给server和client加一个VMnet1(仅主机模式)
同时因为我们自己要配dhcp,所以要把vmnet1的dhcp关掉
配置DHCP服务流程
1. 先配置一个固定的ip地址
[root@server ~20:08:57]# nmcli connectionNAME UUID TYPE DEVICE Wired connection10b3cd631-c756-3179-be17-1566c419a902 ethernet ens33 ens32 41804fd8-9a16-47cb-96fb-5d627b9b8ab6 ethernet ens32[root@server ~21:07:33]# nmcli connection delete Wired\ connection\ 1Connection'Wired connection 1'(0b3cd631-c756-3179-be17-1566c419a902)successfully deleted.[root@server ~21:07:41]# nmcli connectionNAME UUID TYPE DEVICE ens32 41804fd8-9a16-47cb-96fb-5d627b9b8ab6 ethernet ens32[root@server ~21:07:47]# nmcli connection add type ethernet ifname ens33 con-name ens33 ipv4.method manual ipv4.addresses 10.1.1.10/24Connection'ens33'(66ae2751-4903-467f-9da2-4b13ade3e29f)successfully added.[root@server ~21:08:09]# ip -br alo UNKNOWN127.0.0.1/8 ::1/128 ens32 UP10.1.8.128/2410.1.8.10/24 fe80::20c:29ff:febc:b536/64 ens33 UP10.1.1.10/24 fe80::8f35:1b44:7601:ed1a/64| 参数 | 含义 |
|---|---|
nmcli | NetworkManager 的命令行管理工具,用于配置网络连接 |
connection add | 核心子命令,功能是新增一个网络连接配置 |
type ethernet | 指定连接类型为以太网(有线网络) |
ifname ens33 | 指定绑定的网卡设备名称为ens33(虚拟机常用网卡名) |
con-name ens33 | 设置连接配置的名称为ens33(可自定义,建议与网卡名一致方便管理) |
ipv4.method manual | 指定 IPv4 地址获取方式为手动配置(静态 IP),与之对应的是auto(DHCP 自动获取) |
ipv4.addresses 10.1.1.10/24 | 设置静态 IPv4 地址和子网掩码:- IP 地址:10.1.1.10- 子网掩码:/24等价于255.255.255.0 |
2. 安装软件包
[root@server ~19:29:23]# yum install -y dhcp3. 查看下载的dhcp里包含那些文件
[root@server ~19:30:29]# rpm -qc dhcp/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.leases4. 可以看到dhcp.conf文件里只有一些备注,因为还没有开始配置dhcp,相当于只是下载了一个外壳,还没有开始配置
[root@server ~19:30:49]# cat /etc/dhcp/dhcpd.conf## DHCP Server Configuration file.# see /usr/share/doc/dhcp*/dhcpd.conf.example# see dhcpd.conf(5) man page#5. 复制dhcp.conf
[root@server ~ 09:24:48]# /bin/cp /usr/share/doc/dhcp*/dhcpd.conf.example /etc/dhcp/dhcpd.conf| 部分 | 作用 |
|---|---|
/bin/cp | 指定使用cp命令的绝对路径(避免环境变量问题),核心功能是复制文件 |
/usr/share/doc/dhcp*/dhcpd.conf.example | 源文件:DHCP 安装后自带的示例配置文件dhcp*是通配符,匹配dhcp开头的目录(如dhcp-4.2.5),适配不同版本的 DHCP 包 |
/etc/dhcp/dhcpd.conf | 目标文件:DHCP 服务(dhcpd)的核心配置文件,服务启动时会读取这个路径 |
6. 配置服务器,例如修改服务器配置文件
[root@server ~19:31:08]# vim /etc/dhcp/dhcpd.conf:set nu gg光标定位到行首,然后d46G,删除前1-46行 :11,28d 删除11-28行 :15,$d删除15-最后行 :%s/10.5.5/10.1.1/g,查看替换 最终效果如下: subnet10.1.1.0 netmask255.255.255.0{range10.1.1.10110.1.1.130;#option domain-name-servers 223.5.5.5,223.6.6.6;option domain-name"migaomei.cloud";#option routers 10.1.1.2;option broadcast-address10.1.1.255;default-lease-time600;max-lease-time7200;}7. 启用服务并设置开机自启动
[root@server ~ 09:20:24]# systemctl enable dhcpd --now8. 设置防火墙
[root@server ~ 09:42:16]# systemctl disable firewalld --now9. 客户端验证
[root@client ~ 09:01:35]# nmcli cNAME UUID TYPE DEVICE ens32 41804fd8-9a16-47cb-96fb-5d627b9b8ab6 ethernet ens32 Wired connection1ae57b862-5db5-365d-82f9-888f5cb10b80 ethernet ens33[root@client ~ 09:05:35]# ip -br alo UNKNOWN127.0.0.1/8 ::1/128 ens32 UP10.1.8.11/24 fe80::20c:29ff:fe1a:e4b0/64 ens33 UP10.1.1.101/24 fe80::c516:99d:ff41:72d3/6410. 根据mac地址绑定IP
例如00:0c:29:1a:e4:ba 绑定为10.1.1.11
先看一下硬件mac地址:
[root@client ~ 09:05:42]# ip link show1: lo:<LOOPBACK,UP,LOWER_UP>mtu65536qdisc noqueue state UNKNOWN mode DEFAULT group default qlen1000link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:002: ens32:<BROADCAST,MULTICAST,UP,LOWER_UP>mtu1500qdisc pfifo_fast state UP mode DEFAULT group default qlen1000link/ether 00:0c:29:1a:e4:b0 brd ff:ff:ff:ff:ff:ff3: ens33:<BROADCAST,MULTICAST,UP,LOWER_UP>mtu1500qdisc pfifo_fast state UP mode DEFAULT group default qlen1000link/ether 00:0c:29:1a:e4:ba brd ff:ff:ff:ff:ff:ffDHCP 服务配置文件中的主机绑定条目,作用是为指定 MAC 地址的主机分配固定的 IP 地址
[root@server ~ 09:25:55]# vim /etc/dhcp/dhcpd.confsubnet10.1.1.0 netmask255.255.255.0{range10.1.1.10110.1.1.130;#option domain-name-servers 223.5.5.5,223.6.6.6;option domain-name"migaomei.cloud";#option routers 10.1.1.2;option broadcast-address10.1.1.255;default-lease-time600;max-lease-time7200;}hostfantasia{hardware ethernet 00:0c:29:1a:e4:ba;fixed-address10.1.1.11;}| 参数 | 作用 | 注意事项 |
|---|---|---|
host fantasia | 定义主机条目名称,仅用于配置文件可读性,可自定义 | 名称不能重复 |
hardware ethernet | 指定主机的物理 MAC 地址 | 格式为xx:xx:xx:xx:xx:xx,区分大小写 |
fixed-address | 指定为该主机分配的固定 IP 地址 | 必须在 DHCP 服务的地址池范围内,且未被占用 |
[root@server ~ 09:20:19]# systemctl restart dhcpd激活Wired connection 1 的网络连接配置文件**:**
[root@client ~ 09:19:39]# nmcli connection up Wired\ connection\ 1 #这条命令的作用是激活名为 Wired connection 1 的网络连接配置文件Connection successfully activated(D-Bus active path: /org/freedesktop/NetworkManager/ActiveConnection/9)客户端验证:
[root@client ~ 09:22:06]# ip -br alo UNKNOWN127.0.0.1/8 ::1/128 ens32 UP10.1.8.11/24 fe80::20c:29ff:fe1a:e4b0/64 ens33 UP10.1.1.11/24 fe80::c516:99d:ff41:72d3/64UNKNOWN 127.0.0.1/8 ::1/128ens32 UP 10.1.8.11/24 fe80::20c:29ff:fe1a:e4b0/64
ens33 UP 10.1.1.11/24 fe80::c516:99d:ff41:72d3/64