[Linux] DHCP

0

Witam, od 3 lat jadę na jednym i tym samym configu DHCP, i akurat po tej modernizacji, jak zainstalowałem na nowo debiana 4.0 rc1 po wymianie dysku (poprzednio miałem dokładnie to samo, z tej samej CD) i chciałem ustawić DHCP to nastąpił właśnie ten błąd. Przedstawie tutaj konkretnymi informacjami o co chodzi.

Moje 2 interfejsy sieciowe

eth0 Link encap:Ethernet HWaddr 004409:9E
inet addr:85.237.177.163 Bcast:85.237.177.255 Mask:255.255.255.0
inet6 addr: Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:9825426 errors:0 dropped:0 overruns:0 frame:0
TX packets:3681501 errors:0 dropped:0 overruns:2 carrier:0
collisions:0 txqueuelen:1000
RX bytes:664575036 (633.7 MiB) TX bytes:1676514128 (1.5 GiB)
Interrupt:10 Base address:0xe400

eth1 Link encap:Ethernet HWaddr 000426:6F
inet addr:192.168.1.1 Bcast:192.168.255.255 Mask:255.255.0.0
inet6 addr: Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:5342963 errors:0 dropped:0 overruns:0 frame:0
TX packets:5028335 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:3114070228 (2.9 GiB) TX bytes:353150979 (336.7 MiB)
Interrupt:12 Base address:0x4000

lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:3775 errors:0 dropped:0 overruns:0 frame:0
TX packets:3775 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:2126431 (2.0 MiB) TX bytes:2126431 (2.0 MiB)

Debian:/home/r00t#

jak widać, eth0 to wyjście na świat, ma zewnętrzny adres, natomiast eth1 odpowiada za podsieć. No więc idąc tą samą ścieżką co po każdej czymś spowodowanej instalacji debiana robie dokładnie to samo, czyli stawiam maskarade z gotowych plików które przygotowałem wcześniej i DHCP, i w tym miejscu pojawia się błąd.

Debian:/home/r00t# cat /etc/network/interfaces

  1. This file describes the network interfaces available on your system
  2. and how to activate them. For more information, see interfaces(5).

The loopback network interface

auto lo
iface lo inet loopback

The primary network interface

auto eth0
allow-hotplug eth0
iface eth0 inet dhcp

auto eth1
iface eth1 inet static
address 192.168.1.1
netmask 255.255.0.0

Na takich parametrach mam postawione oba interfejsy, ten zewnętrzny (eth0) pobiera dane z serwera dhcp ISP'a.

No więc ustawiam jak zawsze subnet w konfigu dhcp dla sieci wewnętrznej:

Debian:/home/r00t# cat /etc/dhcpd.conf

subnet 192.168.0.0

netmask 255.255.0.0 {
option domain-name "tt.no-ip.org";
option domain-name-servers 85.237.160.2;
option broadcast-address 192.168.255.255;
option routers 192.168.1.1;
range 192.168.1.2 192.168.1.20;
}

Próbuje postawić dhcp

Debian:/home/r00t# /etc/init.d/dhcp start
Starting DHCP server: dhcpd failed to start - check syslog for diagnostics.
Debian:/home/r00t#

... w syslogu natomiast:

Nov 10 1005 Debian dhcpd: No subnet declaration for eth0 (85.237.177.163).
Nov 10 1005 Debian dhcpd: Please write a subnet declaration in your dhcpd.conf file for the
Nov 10 1005 Debian dhcpd: network segment to which interface eth0 is attached.
Nov 10 1005 Debian dhcpd: exiting.

ktoś ma pomysł o co chodzi :X ? Bo niezbyt wiem czemu on chce subnet dla sieci zewnętrznej na interfejsie wyjściowym... [???]

Do dnia dzisiejszego (właściwie wczorajszego) wszystko działało na dokładnie tych samych plikach, po prostu kopiowałem w odpowiednie miejsca i zero problemu, jednorazowa robota a później szablonowo.

Nie jestem pewny czemu wcześniej tego nie było, ale tym razem odpowiedź jest raczej banalna

dhcp eth1

czyli ustalam na jakim interfejsie ma nasłuchiwać, nie wiem czemu wcześniej o to nie pytał, ale teraz działa.

Opowiadam sam sobie w razie jeżeli ktoś kiedyś trafi na podobny problem i akurat będzie czytał ten post.

czyli

r00t@Debian:~$ cat /etc/default/dhcp

  1. Defaults for dhcp initscript
  2. sourced by /etc/init.d/dhcp
  3. installed at /etc/default/dhcp by the maintainer scripts

This is a POSIX shell fragment

  1. On what interfaces should the DHCP server (dhcpd) serve DHCP requests?
  2.   Separate multiple interfaces with spaces, e.g. "eth0 eth1".
    

INTERFACES="eth1"

powodzenia

0

No faktycznie trafiłem na ten problem i zgłupiałem.
Ale po podaniu na jakim interfejsie ma nasłuchiwać serwer wystartował prawidłowo :-)

Wielkie Dzięki [soczek]

1 użytkowników online, w tym zalogowanych: 0, gości: 1