依赖环境
dnf install dhcp-server
创建网桥 bridge2
nmcli connection delete bridge2
nmcli connection add type bridge con-name bridge2 ifname bridge2 ipv4.addresses 192.168.138.1/24 ipv4.gateway 192.168.138.1 autoconnect yes ipv4.method shared
nmcli connection reload
# vim /etc/sysconfig/network-scripts ifcfg-bridge2
STP=yes
BRIDGING_OPTS=priority=32768
TYPE=Bridge
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=shared
IPADDR=192.168.138.1
PREFIX=24
GATEWAY=192.168.138.1
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=bridge2
UUID=645ad06d-5886-48eb-bed1-700ff6165799
DEVICE=bridge2
ONBOOT=yes
配置 ifcfg-eth1
nmcli connection delete eth1
nmcli connection add type ethernet con-name eth1 ifname eth1 master bridge2 autoconnect yes
TYPE=Ethernet
NAME=eth1
UUID=96c7b152-f591-4b3b-8a2e-af9bf2dd9f9c
DEVICE=eth1
ONBOOT=yes
BRIDGE=bridge2
创建热点 ifcfg-ap
nmcli device wifi hotspot ifname wlan0 password 12345678 ssid HelloWorld con-name ap
```bash
ifcfg-ap 内容
ESSID=HelloWorld MODE=Ap KEY_MGMT=WPA-PSK WPA_ALLOW_WPA2=yes CIPHER_PAIRWISE=CCMP CIPHER_GROUP=CCMP MAC_ADDRESS_RANDOMIZATION=default TYPE=Wireless PROXY_METHOD=none BROWSER_ONLY=no BOOTPROTO=shared DEFROUTE=yes IPV4_FAILURE_FATAL=no IPV6INIT=no IPV6_DEFROUTE=yes IPV6_FAILURE_FATAL=no IPV6_ADDR_GEN_MODE=stable-privacy NAME=ap UUID=0d929e2a-ff7a-44a2-a309-bc6f97434b7b DEVICE=wlan0 ONBOOT=no
keys-ap 内容
WPA_PSK=12345678
5. 创建网桥节点 ifcfg-wlan0
```bash
nmcli connection add type wifi mode ap ssid wifi名称 con-name wlan0 ifname wlan0 master bridge2 autoconnect yes
# 生成内容如下
ESSID=HelloWorld
MODE=Ap
MAC_ADDRESS_RANDOMIZATION=default
TYPE=Wireless
NAME=wlan0
UUID=7a9449a8-f889-4e11-bd04-d45aa063b677
DEVICE=wlan0
ONBOOT=yes
BRIDGE=bridge2
ESSID=HelloWorld
MODE=Ap
MAC_ADDRESS_RANDOMIZATION=default
TYPE=Wireless
NAME=wlan0
UUID=7a9449a8-f889-4e11-bd04-d45aa063b677
DEVICE=wlan0
ONBOOT=yes
BRIDGE=bridge2
# 添加以下内容,内容来自 ifcfg-ap
KEY_MGMT=WPA-PSK
WPA_ALLOW_WPA2=yes
CIPHER_PAIRWISE=CCMP
CIPHER_GROUP=CCMP
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=shared
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
创建 keys-wlan0 文件
WPA_PSK=12345678
配置DHCP服务器 ```bash
1. vim /etc/dhcp/dhcpd.conf (编辑文档,添加以下内容,按自己定义的网关进行配置)
subnet 192.168.138.0 netmask 255.255.255.0 { range 192.168.138.100 192.168.138.250; option domain-name-servers 192.168.138.1, 223.5.5.5; option domain-name “alidns.com”; option routers 192.168.138.1; option broadcast-address 192.168.138.255; default-lease-time 600; max-lease-time 7200; }
2. 拷贝一份 dhcpd.service 配置文件
cp /usr/lib/systemd/system/dhcpd.service /etc/systemd/system/
3. 编辑文件内容为如下:
[Unit] Description=DHCPv4 Server Daemon Documentation=man:dhcpd(8) man:dhcpd.conf(5) Wants=network-online.target After=network-online.target After=time-sync.target
[Service] Type=notify EnvironmentFile=-/etc/sysconfig/dhcpd ExecStart=/usr/sbin/dhcpd -f -cf /etc/dhcp/dhcpd.conf -user dhcpd -group dhcpd —no-pid bridge2 StandardError=null SuccessExitStatus=143 TimeoutSec=10 Restart=on-failure RestartSec=5
[Install] WantedBy=multi-user.target
8. 启动dhcp服务
```bash
# 设置开机自启
systemctl enable dhcpd
# 启动 dhcp
systemctl start dhcpd
# 启用伪装IP
firewall-cmd --add-masquerade --permanent