配置一个 dhcp 服务器,为同一子网上具有多个接口的两个不同范围提供服务

配置一个 dhcp 服务器,为同一子网上具有多个接口的两个不同范围提供服务

好的,我现在在 Debian Wheezy 服务器上遇到了一个相当复杂的问题

我在一台服务器上有三个接口:eth0、eth1 和 wlan0,eth0 将充当 eth1 和 wlan0 的网关,我在服务器上有一个 isc-dhcp 服务器。我在 192.168.0.0 上有一个 C 类 IP 范围(服务范围为 192.168.0.1 到 192.168.0.254)eth0 在 192.168.0.1 上 wlan0 在 192.168.0.63 上 wlan0 充当接入点

每个都需要提供 60 个 IP 地址 eth0 从 192.168.0.2 到 192.168.0.62 wlan0 从 192.168.0.66 到 192.168.0.126

我正在尝试做的是一种快速识别以太网或无线设备的方法

因此我使用以下四个配置文件运行 dhcp 服务器:

/etc/dhcp/dhcpd.conf

ddns-update-style none;

option domain-name "me.fr";
option domain-name-servers 192.168.0.1;

default-lease-time -1;
max-lease-time -1;

authoritative;

log-facility local7;

#ethernet
subnet 192.168.0.0 netmask 255.255.255.192
{
         option routers 192.168.0.1;
         option subnet-mask 255.255.255.0;
         option broadcast-address 192.168.0.255;
         option domain-name-servers 192.168.0.1;
         option domain-name "me.fr";
         default-lease-time 600;
         max-lease-time 7200;
         range 192.168.0.2 192.168.0.62;
}

#wifi
subnet 192.168.0.63 netmask 255.255.255.192
{
         option routers 192.168.0.1;
         option subnet-mask 255.255.255.0;
         option broadcast-address 192.168.0.255;
         option domain-name-servers 192.168.0.1;
         option domain-name "me.fr";
         default-lease-time 600;
         max-lease-time 7200;
         range 192.168.0.66 192.168.0.126;
}

/etc/default/isc-dhcp 服务器

INTERFACES="eth1 wlan0"

/etc/hostapd/hostapd.conf

interface=wlan0
ssid=HAL
hw_mode=g
wpa=2
wpa_passphrase=oderojafoda2u9k
wpa_key_mgmt=WPA-PSK

/etc/网络/接口

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo eth0 eth1
iface lo inet loopback

# The primary network interface
allow-hotplug eth0
iface eth0 inet dhcp

allow-hotplug eth1
iface eth1 inet static
        address 192.168.0.1
        netmask 255.255.255.0

iface wlan0 inet static
        address 192.168.0.65
        netmask 255.255.255.0

但 DHCP 服务器启动时出现以下错误:

Mar 16 20:27:24 HAL dhcpd: Multiple interfaces match the same subnet: eth1 wlan0
Mar 16 20:27:24 HAL dhcpd: Multiple interfaces match the same shared network: eth1 wlan0

但即使结果是“Ok”并且服务器实际上已经启动,它也只会在第二个范围内为我提供 IP,知道我做错了什么吗?

附言:这里有一个快速/简单的图表来说明我正在尝试做的事情:

这里

谢谢

答案1

您定义了错误的网络掩码,这就是 dhcp 服务器无法启动的原因

iface eth1 inet static
    address 192.168.0.1
    netmask 255.255.255.0

iface wlan0 inet static
    address 192.168.0.65
    netmask 255.255.255.0

第二个网络的网络掩码应为 192。

您可以只将参数接口添加到子网声明中,因此每个子网都为单独的接口定义:

subnet 192.168.0.0 netmask 255.255.255.192
{
     interface eth0;
     <other staff>
}

subnet 192.168.0.63 netmask 255.255.255.192
{
     interface wlan0;
     <other staff>
}

相关内容