DHCPD ігноруючи мою декларацію підмережі


11

eth0, мій внутрішній інтерфейс, має статичну адресу 10.0.0.1. У мене також є інтерфейс p4p1, який виступає моїм зовнішнім інтерфейсом. Якщо це має значення, мій зовнішній інтерфейс фізично не підключений і iptablesвимикається / все ще записується.

/etc/sysconfig/dhcpd:

DHCPDARGS=eth0

пункт підмережі від /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;
  }
}

Отже, чому я все-таки отримую повідомлення про помилку "Без оголошення підмережі" при запуску?

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

ОНОВЛЕННЯ 4/1 1900 год

До сьогоднішніх експериментів:

[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

Я переключив IP-адреси внутрішньої мережі на 192.168.100.0/24відповідні зміни, щоб /etc/dhcpd.confне змінити поведінку.

[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

Ой, гей! Жодного шлюзу немає! Це легко виправити за GATEWAY=192.168.0.1в ifcfg-eth0і ifcfg-p4p1файлів. service network restartі ...

[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

Отже, у мене є шлюз, але service dhcpd startвиходить з тієї самої помилки.

Інші примітки:

  • p4p1 фізично не пов'язаний.
  • service dhcpd configtestкаже Syntax: OK. Отже, це майже напевно не стосується неправильної дужки.

1
Для RHEL / CentOS 7 з systemd: ви можете зробити копію , /lib/systemd/system/dhcpd.serviceщоб /etc/systemd/system/і вказати інтерфейс в Exec лінії: ExecStart=/usr/sbin/dhcpd -f -cf /etc/dhcp/dhcpd.conf -user dhcpd -group dhcpd --no-pid eth0
ILMostro_7

Відповіді:


14

Гаразд, чи можу я отримати "D'oh!" від згромадження!

У RHEL6 та похідних файл конфігураційного файлу dhcpd зараз знаходиться у /etc/dhcp/dhcpd.conf, не /etc/dhcpd.conf. Перенесли файл і все добре.


Зараз це працює добре, або ви стикаєтесь з будь-якими проблемами?
Рахул Патіл

3
Зараз добре працює. І той синець на лобі - це те, де я
бив

Дратівливо, правда? Мене це просто покусало.
ewwhite

Коли я шукав "centos install dhcpd", результат centos.org, який є першим, призначений для centos 5 і посилається на /etc/dhcpd.conf. Має сенс, що у дизайні CentOS 6+ можуть бути невеликі, але суттєві зміни, як це!
bgStack15

7

Маска підмережі, яку ви вказали, dhcpd.confповинна відповідати масці підмережі інтерфейсу.

Виконати:

/sbin/ifconfig eth0

Ви вказали маску підмережі як 255.255.255.0, це, швидше за все, неправильно. Змініть свій, dhcpd.confщоб відповідати вашому інтерфейсу.

Інтерфейс, на якому прослуховується сервер DHCP, повинен мати статичний IP тієї самої підмережі, яку ви використовуєте у своїй конфігурації DHCP.


ifconfig повідомляє мережну маску як 255.255.255.0, що відповідає параметру NETMASK = 255.255.255.0, який я вкладаю ifcfg-eth0.
dafydd

що таке ваш IP-сервер та маршрутизатор, пост-вихід/sbin/route -n
Rahul Patil

Я оновив головне питання з інформацією.
dafydd

@dafydd Зараз це працює нормально, або ви стикаєтесь з будь-якими проблемами
Рахул Патіл
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.