为什么我的 Ubuntu DHCP isc-DHCP-server 服务在重新启动时失败?

为什么我的 Ubuntu DHCP isc-DHCP-server 服务在重新启动时失败?

我尝试在 Ubuntu 14.04 机器上使用 isc-dhcp-server 作为我的 DHCP 服务器,而不是路由器提供的 DHCP 服务。我的设置如下。

我已将一切设置好,当我关闭路由器的 DHCP 时,我很高兴一切都正常:连接到路由器的机器被分配了我在 dhcpd.conf 文件中定义的范围内的 IP 地址。然而,我发现路由器显示 Ubuntu 机器的公共 IP 地址而不是其 /etc/network/interfaces 中定义的 10.0.0.2 地址,这有点奇怪。事实上,分配的 IP 地址甚至不是私有地址!它以 169 开头,而不是 10、192 或 172。IP 地址有效;我可以毫无问题地通过 SSH 连接。然而,当我重新启动路由器和 DHCP 服务器时,整个过程都失败了。

重新启动后,我在路由器界面上再也看不到 Ubuntu 机器的 IP 地址了。毫不奇怪,DHCP 也不起作用:连接到路由器的机器没有获得 IP 地址。当我在路由器上重新启用 DHCP 时,Ubuntu DHCP 服务器按预期获得了 10.0.0.2 IP 地址。当我按下 SHH 进入时,我发现 isc-dhcp-server 没有运行。我当然可以启动它,然后整个循环重复。(FWIW:我以前在尝试重新启动 isc-dhcp-server 时看到过一条错误消息,说我没有为 Ubuntu DHCP 服务器获得的那个奇怪的公共 IP 地址定义子网。但我无法在这篇文章中重现它)

我突然意识到启动过程中 eth0 出现了问题。有什么建议吗?

拓扑

我的 Ubuntu 机器连接到一个路由器,而该路由器又连接到另一个路由器,即互联网网关。

/etc/dhcpd/dhcpd.conf

ddns-update-style none;

# option definitions common to all supported networks...
option domain-name "SomeName";
option domain-name-servers 8.8.8.8, 8.8.4.4;

default-lease-time 600;
max-lease-time 7200;
authoritative;
log-facility local7;

subnet 10.0.0.0 netmask 255.255.255.0 {
   option subnet-mask 255.255.255.0;
   option domain-name-servers 8.8.8.8, 8.8.4.4;
   option routers 10.0.0.1;
   pool {
      range 10.0.0.60 10.0.0.70;
   }
}

/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
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
   address 10.0.0.2
   netmask 255.255.255.0
   network 10.0.0.0
   broadcast 10.0.0.255
   gateway 10.0.0.1

# The secondary network interface
#auto eth1
#iface eth1 inet dhcp

# WiFi use: -> connmanctl

# Ethernet/RNDIS gadget (g_ether)
# Used by: /opt/scripts/boot/autoconfigure_usb0.sh
iface usb0 inet static
    address 192.168.7.2
    netmask 255.255.255.252
    network 192.168.7.0
    gateway 192.168.7.1

/etc/default/isc-dhcp 服务器

DHCPD_PID=/run/dhcp-server/dhcpd.pid

INTERFACES="eth0"

相关内容