web-dev-qa-db-ja.com

DHCPサーバーが起動しません。 「どのインターフェイスでもリッスンするように構成されていません!」設定されていても

サーバーにisc-dhcpをセットアップしました。私も正しいインターフェイスを設定しました。ただし、dhcpサーバーは起動しません。 syslogにNot configured to listen on any interfaces!と表示されます。そして、dhcpd -t /etc/dhcp/dhcpd.confを試みると、次のエラーが発生します:/etc/dhcp/dhcpd.conf: interface name too long (is 20

これが私のdhcpd.confです:

ddns-update-style none;

option domain-name "thpi";
option domain-name-servers 208.67.222.222, 208.67.220.220;

default-lease-time 86400;
max-lease-time 604800;

authoritative;

# Use this to send dhcp log messages to a different log file (you also
# have to hack syslog.conf to complete the redirection).
log-facility local7;


subnet 10.0.0.0 netmask 255.255.255.0 {
    ## dhcp start  and end IP range ##
    range 10.0.0.20 10.0.0.90;
    option subnet-mask 255.255.255.0;     ## subnet
    option broadcast-address 10.0.0.255; ## broadcast
    option routers 10.0.0.1; ## router IP


    Host pc1 {
        hardware ethernet 60:a4:4c:3d:76:fa;
        fixed-address 10.0.0.100;
    }

    Host lap1 {
        hardware ethernet 6c:71:d9:1e:f3:4f;
        fixed-address 10.0.0.150;
    }

    Host thnote {
        hardware ethernet d0:22:be:d3:be:e1;
        fixed-address 10.0.0.200;
    }
}

/etc/default/isc-dhcp-serverファイル:

# Defaults for isc-dhcp-server initscript
# sourced by /etc/init.d/isc-dhcp-server
# installed at /etc/default/isc-dhcp-server by the maintainer scripts

#
# This is a POSIX Shell fragment
#

# Path to dhcpd's config file (default: /etc/dhcp/dhcpd.conf).
#DHCPD_CONF=/etc/dhcp/dhcpd.conf

# Path to dhcpd's PID file (default: /var/run/dhcpd.pid).
#DHCPD_PID=/var/run/dhcpd.pid

# Additional options to start dhcpd with.
#       Don't use options -cf or -pf here; use DHCPD_CONF/ DHCPD_PID instead
#OPTIONS=""

# On what interfaces should the DHCP server (dhcpd) serve DHCP requests?
#       Separate multiple interfaces with spaces, e.g. "eth0 eth1".
INTERFACES="eth0:0"

インターフェイスファイル:

auto lo

iface lo inet loopback

auto eth0
iface eth0 inet static
address 192.168.1.10
netmask 255.255.255.0
network 192.168.1.0
broadcast 192.168.1.255
gateway 192.168.1.1

auto eth0:0
iface eth0:0 inet static
name Lan
address 10.0.0.1
netmask 255.255.255.0
network 10.0.0.0

allow-hotplug wlan0
iface wlan0 inet manual
wpa-roam /etc/wpa_supplicant/wpa_supplicant.conf
iface default inet dhcp

何が問題なのでしょうか?

3
THpubs

/etc/default/isc-dhcp-serverファイルには

INTERFACES="eth0"
5
Ron Zeitouny

インターフェイスにIPアドレスを割り当てた後、同じ問題が発生し、解決しました

好む、

ifconfig eth0 192.168.1.100
3
tsenapathy

http://www.braindisconnect.com/wiki/index.php?title=Linux_DHCP_Server

このメッセージは、dhcpd.confファイルまたは構成とは関係ありません。エラーは、dhcpdが/etc/dhcp/dhcpd.confをインターフェースとして解釈しているためです。 20は「/etc/dhcp/dhcpd.conf」の文字数であり、ファイルの内容ではありません。

-cfを構文に追加して、構成ファイルが実際にテストされるようにするか、dhcpd -tを使用します。

0
Tom

この問題もありましたが、上記のすべてにもかかわらず、NICが直接接続されているサブネットのスコープを宣言する必要がありました。これにより、エラーなしでサービスを開始できました。

0
modernSheds

私もこの問題を抱えていました。ネットワークインターフェイスの準備が整う前にDhcpdが起動していました。これを/etc/init/isc-dhcp-server.confファイルに追加できます(IPv4の場合)。

ファイルの下部近くに次のような行が表示されます(「exec」が探しているものです)。

exec dhcpd -user dhcpd -group dhcpd -f -q -4 -pf /run/dhcp-server/dhcpd.pid -cf $CONFIG_FILE $INTERFACES

これを上の行に追加します

sleep 30

これにより、dhcpdサーバーの起動が遅れます。残りの起動プロセスが遅くなることはありません。

そのファイルの下部は次のようになります。

respawn
script
        if [ -f /etc/ltsp/dhcpd.conf ]; then
            CONFIG_FILE=/etc/ltsp/dhcpd.conf
        else
            CONFIG_FILE=/etc/dhcp/dhcpd.conf
        fi

        . /etc/default/isc-dhcp-server

        # Allow dhcp server to write lease and pid file as 'dhcpd' user
        mkdir -p /var/run/dhcp-server
        chown dhcpd:dhcpd /var/run/dhcp-server

        # The leases files need to be root:root even when dropping privileges
        [ -e /var/lib/dhcp/dhcpd.leases ] || touch /var/lib/dhcp/dhcpd.leases
        chown root:root /var/lib/dhcp /var/lib/dhcp/dhcpd.leases
        if [ -e /var/lib/dhcp/dhcpd.leases~ ]; then
            chown root:root /var/lib/dhcp/dhcpd.leases~
        fi

        sleep 30

        exec dhcpd -user dhcpd -group dhcpd -f -q -4 -pf /run/dhcp-server/dhcpd.pid -cf $CONFIG_FILE $INTERFACES
    end script
0
user500048

ネットワーキングを開始するには2つの方法があります

  1. / etc/network/interfaces経由

  2. networkManager経由

    1. 早く始める
    2. 遅く始める

DHCPDは1)の後、2)の前に開始しようとします

Dhcpdがネットワークを検出できない場合は、方法1)を試してください

0
user1459342