我已经为此苦思冥想了很长时间。网上有很多关于这个问题和类似问题的讨论,但似乎没有一个解决方案对我有用。
我有一台 Debian 服务器,它有两个以太网网络接口。其中一个连接到互联网,另一个连接到我的 LAN。
LAN网络为10.11.100.0(网络掩码255.255.255.0)。
我们有一些使用网络 10.4.1.0(网络掩码 255.255.255.0)的自定义硬件,我们无法更改这一点。但我们需要 10.11.100.0 上的所有主机能够连接到 10.4.1.0 上的设备。因此,我为 LAN 网络接口添加了一个别名,以便 Debian 服务器充当 10.11.100.0 和 10.4.1.0 之间的网关。
但随后 dhcp 服务器停止工作。
日志显示:
No subnet declaration for eth1:0 (no IPv4 addresses).
** Ignoring requests on eth1:0. If this is not what
you want, please write a subnet declaration
in your dhcpd.conf file for the network segment
to which interface eth1:1 is attached. **
No subnet declaration for eth1:1 (no IPv4 addresses).
** Ignoring requests on eth1:1. If this is not what
you want, please write a subnet declaration
in your dhcpd.conf file for the network segment
to which interface eth1:1 is attached. **
我之前有另一台服务器,也运行 Debian,但使用的是较旧的 dhcp3 服务器,它运行起来没有任何问题。我在 dhcpd.conf 等中尝试了所有我能想到的方法,并且还与旧服务器中的工作配置进行了比较。
dhcp 服务器只需要处理 10.11.100.0 上的设备。
有什么提示吗?
以下是所有相关的配置文件:
/etc/default/isc-dhcp 服务器
INTERFACES="eth1"
/etc/网络/接口
(我省略了连接到互联网的 eth0,因为它没有问题。)
auto eth1:0
iface eth1:0 inet static
address 10.11.100.202
netmask 255.255.255.0
auto eth1:1
iface eth1:1 inet static
address 10.4.1.248
netmask 255.255.255.0
/etc/dhcp/dhcpd.conf
ddns-update-style none;
option domain-name "???.com";
option domain-name-servers ?.?.?.?;
default-lease-time 86400;
max-lease-time 604800;
authorative;
subnet 10.11.100.0 netmask 255.255.255.0 {
option subnet-mask 255.255.255.0;
pool {
range 10.11.100.50 10.11.100.99;
}
option routers 10.11.100.102;
}
我尝试添加共享网络等,但无法使其工作。无论如何我都会收到相同的错误消息...
答案1
10.4.1.0/24
为您的网络 创建一个空声明。
subnet 10.4.1.0 netmask 255.255.255.0 {
}
不要使用已弃用的别名来表示多个地址。你不需要它,它只会造成混乱。像这样设置你的接口文件。如果你使用.ip addr
和来查看,这将产生相同的有效配置。ip route
auto eth1
iface eth1 inet static
address 10.11.100.202
netmask 255.255.255.0
iface eth1 inet static
address 10.4.1.248
netmask 255.255.255.0