DHCPD ignoruje moją deklarację podsieci


11

eth0, mój wewnętrzny interfejs ma adres statyczny 10.0.0.1. Mam również interfejs p4p1, który działa jako mój interfejs zewnętrzny. Jeśli ma to znaczenie, mój interfejs zewnętrzny nie jest fizycznie podłączony i iptablesjest wyłączony / jest nadal zapisywany.

/etc/sysconfig/dhcpd:

DHCPDARGS=eth0

klauzula podsieci od /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;
  }
}

Dlaczego więc nadal pojawia się komunikat o błędzie „Brak deklaracji podsieci” podczas uruchamiania?

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

AKTUALIZACJA 4/1 1900 godz

Przed dzisiejszymi eksperymentami:

[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

Zmieniłem adresy IP mojej wewnętrznej sieci 192.168.100.0/24z dopasowanymi zmianami /etc/dhcpd.confna bez zmiany zachowania.

[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

No cześć! Nie ma tam bramy! To jest łatwe do ustalenia z GATEWAY=192.168.0.1w ifcfg-eth0i ifcfg-p4p1plików. service network restarti...

[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

Mam więc bramę, ale service dhcpd startkończy się niepowodzeniem z tym samym błędem.

Inne notatki:

  • p4p1 nie jest fizycznie połączony.
  • service dhcpd configtestmówi Syntax: OK. Tak więc prawie na pewno nie jest to przypadek niewłaściwie umieszczonego aparatu ortodontycznego.

1
Dla RHEL / CentOS 7 z systemd: możesz wykonać kopię /lib/systemd/system/dhcpd.servicedo /etc/systemd/system/i określić interfejs w wierszu Exec : ExecStart=/usr/sbin/dhcpd -f -cf /etc/dhcp/dhcpd.conf -user dhcpd -group dhcpd --no-pid eth0
ILMostro_7 24.10.2015

Odpowiedzi:


14

Okej, czy mogę dostać „D'oh!” ze zboru!

W RHEL6 i pochodnych plik konfiguracyjny dhcpd znajduje się teraz pod /etc/dhcp/dhcpd.conf, a nie /etc/dhcpd.conf. Przeniesiłem plik i wszystko jest w porządku.


Teraz działa dobrze lub masz jakiś problem?
Rahul Patil

3
Teraz działa dobrze. A ten siniak na moim czole pochodzi z miejsca, w którym
waliłem

Irytujące, prawda? Właśnie mnie to ugryzło.
ewwhite

Kiedy szukałem „centos install dhcpd”, wynik centos.org, który jest pierwszym, dotyczy centos 5 i odnosi się do /etc/dhcpd.conf. Ma sens, że mogą istnieć małe, ale znaczące zmiany w sposobie projektowania CentOS 6+, tak jak to!
bgStack15

7

Podana maska ​​podsieci dhcpd.confmusi pasować do maski podsieci interfejsu.

Biegać:

/sbin/ifconfig eth0

Podano maskę podsieci, ponieważ 255.255.255.0jest to najprawdopodobniej źle. Zmień, dhcpd.confaby pasował do interfejsu.

Interfejs, w którym nasłuchuje serwer DHCP, musi mieć statyczny adres IP tej samej podsieci, której używasz w konfiguracji DHCP.


ifconfig zgłasza maskę sieci jako 255.255.255.0, co odpowiada ustawieniu NETMASK = 255.255.255.0, które wstawiłem w ifcfg-eth0.
dafydd

jaki jest adres IP twojego serwera i routera, po wyjściu/sbin/route -n
Rahul Patil

Zaktualizowałem główne pytanie o informacje.
dafydd

@dafydd Teraz działa dobrze lub masz do czynienia z jakimkolwiek problemem
Rahul Patil
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.