DHCPD ignora la mia dichiarazione di sottorete


11

eth0, la mia interfaccia interna, ha un indirizzo statico di 10.0.0.1. Ho anche un'interfaccia p4p1, che funge da interfaccia esterna. Se è importante, la mia interfaccia esterna non è fisicamente connessa ed iptablesè disattivata / ancora in fase di scrittura.

/etc/sysconfig/dhcpd:

DHCPDARGS=eth0

clausola di sottorete da /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;
  }
}

Quindi, perché visualizzo ancora il messaggio di errore "Nessuna dichiarazione di sottorete" all'avvio?

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. **

AGGIORNAMENTO 4/1 1900h

Prima degli esperimenti di stasera:

[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

Ho cambiato gli indirizzi IP della mia rete interna 192.168.100.0/24con le modifiche corrispondenti a /etc/dhcpd.confper nessun cambiamento nel comportamento.

[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 Ehi! Nessun gateway lì! Questo è facile da risolvere con un GATEWAY=192.168.0.1in ifcfg-eth0e ifcfg-p4p1file. service network restarte...

[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

Quindi, ho un gateway, ma service dhcpd startfallisce con lo stesso errore.

Altre note:

  • p4p1 non è fisicamente connesso.
  • service dhcpd configtestdice Syntax: OK. Quindi, quasi certamente non si tratta di un tutore fuori posto.

1
Per RHEL / CentOS 7 con systemd: è possibile effettuare una copia di /lib/systemd/system/dhcpd.serviceper /etc/systemd/system/e specificare l'interfaccia nella Exec riga: ExecStart=/usr/sbin/dhcpd -f -cf /etc/dhcp/dhcpd.conf -user dhcpd -group dhcpd --no-pid eth0
ILMostro_7

Risposte:


14

Okay, posso ottenere un "D'oh!" dalla congregazione!

In RHEL6 e derivati, il file di configurazione dhcpd ora si trova in /etc/dhcp/dhcpd.confno /etc/dhcpd.conf. Spostato il file e tutto va bene.


Ora funziona bene o stai affrontando qualche problema?
Rahul Patil,

3
Funziona bene, ora. E quel livido sulla mia fronte è da dove mi stavo battendo la testa sulla scrivania ...
Dafydd,

Fastidioso, vero? Ho appena avuto un po 'di questo.
ewwhite,

Quando ho cercato "centos install dhcpd" il risultato centos.org, che è il primo, è per centos 5 e si riferisce a /etc/dhcpd.conf. Ha senso che potrebbero esserci piccole ma significative modifiche alla progettazione di CentOS 6+, come questa!
bgStack15

7

La maschera di sottorete specificata dhcpd.confdeve corrispondere alla maschera di sottorete dell'interfaccia.

Correre:

/sbin/ifconfig eth0

È stata specificata la subnet mask come 255.255.255.0, molto probabilmente è errata. Cambia il tuo dhcpd.confper abbinare la tua interfaccia.

L'interfaccia su cui è in ascolto il server DHCP deve avere un IP statico della stessa sottorete che si sta utilizzando nella configurazione DHCP.


ifconfig riporta la maschera di rete come 255.255.255.0, che corrisponde all'impostazione NETMASK = 255.255.255.0 che ho inserito in ifcfg-eth0.
Dafydd,

qual è il tuo IP server e router, pubblica l'output di/sbin/route -n
Rahul Patil

Ho aggiornato la domanda principale con le informazioni.
Dafydd,

@dafydd Ora funziona bene o stai affrontando qualsiasi problema
Rahul Patil
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.