DHCPD ignoriert meine Subnetzdeklaration

11

eth0, meine interne Schnittstelle, hat eine statische Adresse von 10.0.0.1. Ich habe auch eine Schnittstelle p4p1, die als meine externe Schnittstelle fungiert. Wenn es darauf ankommt, ist meine externe Schnittstelle nicht physisch verbunden und iptableswird ausgeschaltet / noch geschrieben.

/etc/sysconfig/dhcpd::

DHCPDARGS=eth0

Subnetzklausel von /etc/dhcpd.conf:

subnet 10.0.0.0 netmask 255.255.255.0 {
  option routers 10.0.0.1;
  option domain-name-servers 10.0.0.1;
  option ntp-servers 10.0.0.1;
  default-lease-time 86400; # 1 day 
  max-lease-time 604800;    # 7 days
  use-host-decl-names on;
  ddns-updates on;

  use-host-decl-names on;
  allow unknown-clients;
  ignore client-updates;

  option domain-name "localdomain";
  ddns-domainname "localdomain";
  next-server 10.0.0.1;
  filename "pxelinux.0";

  group # known hosts
  {
    host host1.localdomain  {hardware ethernet [REDACTED]; fixed-address host1.localdomain;}
    host host2.localdomain  {hardware ethernet [REDACTED]; fixed-address host2.localdomain;}
  {

  pool
  {
    one-lease-per-client true;
    ping-check true;
    range 10.0.0.51 10.0.0.60;
  }
}

Warum wird beim Start immer noch die Fehlermeldung "Keine Subnetzdeklaration" angezeigt?

No subnet declaration for eth0 (10.0.0.1).
** Ignoring requests on eth0.  If this is not what
   you want, please write a subnet declaration
   in your dhcpd.conf file for the network segment
   to which interface eth0 is attached. **

UPDATE 4/1 1900h

Vor den heutigen Experimenten:

[root@father ~]# ip addr show dev eth0
3: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 90:e2:ba:2d:92:4d brd ff:ff:ff:ff:ff:ff
    inet 10.0.0.1/24 brd 10.0.0.255 scope global eth0
    inet6 fe80::92e2:baff:fe2d:924d/64 scope link 
       valid_lft forever preferred_lft forever

Ich habe meine internen Netzwerk-IP-Adressen 192.168.100.0/24mit übereinstimmenden Änderungen auf geändert, /etc/dhcpd.confohne dass sich das Verhalten geändert hat.

[root@father ~]# ip addr show dev eth0
3: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
    link/ether 90:e2:ba:2d:92:4d brd ff:ff:ff:ff:ff:ff
    inet 192.168.100.1/24 brd 192.168.100.255 scope global eth0
    inet6 fe80::92e2:baff:fe2d:924d/64 scope link 
       valid_lft forever preferred_lft forever

[root@father ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.100.0   0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.0.0     0.0.0.0         255.255.255.0   U     0      0        0 p4p1
169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 p4p1
169.254.0.0     0.0.0.0         255.255.0.0     U     1003   0        0 eth0

Oh hallo! Kein Gateway da! Das ist einfach mit einem GATEWAY=192.168.0.1in den ifcfg-eth0und ifcfg-p4p1Dateien zu beheben . service network restartund...

[root@father ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.100.0   0.0.0.0         255.255.255.0   U     0      0        0 eth0
192.168.0.0     0.0.0.0         255.255.255.0   U     0      0        0 p4p1
169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 p4p1
169.254.0.0     0.0.0.0         255.255.0.0     U     1003   0        0 eth0
0.0.0.0         192.168.0.1     0.0.0.0         UG    0      0        0 p4p1

Ich habe also ein Gateway, das jedoch service dhcpd startmit demselben Fehler fehlschlägt.

Weitere Hinweise:

  • p4p1 ist nicht physisch verbunden.
  • service dhcpd configtestsagt Syntax: OK. Dies ist also mit ziemlicher Sicherheit kein Fall einer verlegten Zahnspange.
dafydd
quelle
1
Für RHEL / CentOS 7 mit systemd: Sie können eine Kopie machen /lib/systemd/system/dhcpd.servicezu /etc/systemd/system/und geben Sie die Schnittstelle in der Exec Linie: ExecStart=/usr/sbin/dhcpd -f -cf /etc/dhcp/dhcpd.conf -user dhcpd -group dhcpd --no-pid eth0
ILMostro_7

Antworten:

14

Okay, kann ich ein "D'oh!" aus der Gemeinde!

In RHEL6 und Derivaten befindet sich die dhcpd-Konfigurationsdatei jetzt unter /etc/dhcp/dhcpd.conf, nicht /etc/dhcpd.conf. Die Datei wurde verschoben und alles ist gut.

dafydd
quelle
Jetzt funktioniert es gut oder Sie haben Probleme?
Rahul Patil
3
Es funktioniert jetzt gut. Und dieser blaue Fleck auf meiner Stirn ist von dort, wo ich meinen Kopf auf meinen Schreibtisch geschlagen habe ...
dafydd
Ärgerlich, oder? Ich habe gerade etwas davon bekommen.
ewwhite
Als ich nach "centos install dhcpd" gesucht habe, ist das Ergebnis von centos.org, das das erste ist, für centos 5 und verweist auf /etc/dhcpd.conf. Es ist sinnvoll, dass sich das Design von CentOS 6+ wie folgt geringfügig, aber erheblich ändert!
bgStack15
7

Die Subnetzmaske, die Sie angegeben haben, dhcpd.confmuss mit Ihrer Schnittstellen-Subnetzmaske übereinstimmen.

Lauf:

/sbin/ifconfig eth0

Sie haben die Subnetzmaske als angegeben 255.255.255.0, dies ist höchstwahrscheinlich falsch. Ändern Sie Ihre dhcpd.conf, um sie an Ihre Benutzeroberfläche anzupassen.

Die Schnittstelle, an der der DHCP-Server empfangsbereit ist, muss über eine statische IP-Adresse des gleichen Subnetzes verfügen, das Sie in Ihrer DHCP-Konfiguration verwenden.

Rahul Patil
quelle
ifconfig meldet die Netzmaske als 255.255.255.0, was der Einstellung NETMASK = 255.255.255.0 entspricht, die ich in ifcfg-eth0 eingegeben habe.
dafydd
Was ist Ihre Server-IP und Router, Post-Ausgabe von/sbin/route -n
Rahul Patil
Ich habe die Hauptfrage mit den Informationen aktualisiert.
dafydd
@dafydd Jetzt funktioniert es gut oder Sie stehen vor einem Problem
Rahul Patil