DHCPD mengabaikan deklarasi subnet saya

11

eth0, antarmuka internal saya, memiliki alamat statis 10.0.0.1. Saya juga memiliki antarmuka p4p1,, bertindak sebagai antarmuka eksternal saya. Jika itu penting, antarmuka eksternal saya tidak terhubung secara fisik dan iptablestidak aktif / masih sedang ditulis.

/etc/sysconfig/dhcpd:

DHCPDARGS=eth0

subnet klausa dari /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;
  }
}

Jadi, mengapa saya masih mendapatkan pesan kesalahan "Tidak ada pernyataan subnet" saat peluncuran?

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

Sebelum eksperimen malam ini:

[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

Saya mengganti alamat IP jaringan internal saya 192.168.100.0/24dengan mencocokkan perubahan /etc/dhcpd.conftanpa perubahan perilaku.

[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, hei! Tidak ada gerbang di sana! Itu mudah diperbaiki dengan GATEWAY=192.168.0.1in ifcfg-eth0dan ifcfg-p4p1file. service network restartdan...

[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

Jadi, saya punya gateway, tetapi service dhcpd startgagal dengan kesalahan yang sama.

Catatan lain:

  • p4p1 tidak terhubung secara fisik.
  • service dhcpd configtestkata Syntax: OK. Jadi, ini hampir pasti bukan penyangga yang salah tempat.
dafydd
sumber
1
Untuk RHEL / CentOS 7 dengan systemd: Anda dapat membuat salinan /lib/systemd/system/dhcpd.serviceke /etc/systemd/system/dan menentukan antarmuka di baris Exec : ExecStart=/usr/sbin/dhcpd -f -cf /etc/dhcp/dhcpd.conf -user dhcpd -group dhcpd --no-pid eth0
ILMostro_7

Jawaban:

14

Oke, bisakah saya mendapat "Doh!" dari sidang!

Dalam RHEL6 dan turunannya, file konfigurasi dhcpd sekarang terletak di /etc/dhcp/dhcpd.conf, bukan /etc/dhcpd.conf. Memindahkan file dan semuanya baik-baik saja.

dafydd
sumber
Sekarang berfungsi dengan baik atau Anda menghadapi masalah?
Rahul Patil
3
Sekarang berfungsi dengan baik. Dan memar di dahi saya adalah dari mana saya memukul kepala saya di atas meja saya ...
dafydd
Mengganggu, bukan? Saya hanya mendapat sedikit dengan ini.
ewwhite
Ketika saya mencari "centos install dhcpd" hasil centos.org, yang merupakan yang pertama, adalah centos 5 dan merujuk ke /etc/dhcpd.conf. Masuk akal bahwa mungkin ada perubahan kecil tapi signifikan pada bagaimana CentOS 6+ dirancang, seperti ini!
bgStack15
7

Subnet mask yang telah Anda tentukan dhcpd.confharus sesuai dengan subnet mask antarmuka Anda.

Lari:

/sbin/ifconfig eth0

Anda menetapkan subnet mask sebagai 255.255.255.0, ini kemungkinan besar salah. Ubah Anda dhcpd.confuntuk mencocokkan antarmuka Anda.

Antarmuka tempat server DHCP mendengarkan harus memiliki IP Statis dari subnet yang sama yang Anda gunakan dalam konfigurasi DHCP Anda.

Rahul Patil
sumber
ifconfig melaporkan netmask sebagai 255.255.255.0, yang cocok dengan pengaturan NETMASK = 255.255.255.0 yang saya masukkan ke ifcfg-eth0.
dafydd
apa IP server dan router Anda, poskan output dari/sbin/route -n
Rahul Patil
Saya telah memperbarui pertanyaan utama dengan informasi tersebut.
dafydd
@dafydd Sekarang berfungsi dengan baik atau Anda menghadapi masalah apa pun
Rahul Patil