nixp.ru v3.0

30 декабря 2024,
понедельник,
17:46:05 MSK

anonymous написал 17 мая 2004 года в 14:07 (2633 просмотра) Ведет себя неопределенно; открыл 1814 темы в форуме, оставил 5575 комментариев на сайте.

Привет, помогите чайнику, а то нервным стану скоро :)

поставил я себе linux Suse 9.1 с ядром 2.6.

Цель для которой ставится DHCP бездисковая загрузка линукса на компьютере подключенном к DHCP серверу через Cross over кабель.

У меня две сетевые карты eth0 к которой подключен DHCP клиент и eth1 к которой подключен ADSL модем.

Это выдал IFCONFIG

eth0 Link encap:Ethernet HWaddr 00:50:BF:D6:77:FA inet addr:192.168.1.1 Bcast:192.168.1.255 Mask:255.255.255.0 inet6 addr: fe80::250:bfff:fed6:77fa/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:91 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 b) TX bytes:12121 (11.8 Kb) Interrupt:10 Base address:0×6f00

eth1 Link encap:Ethernet HWaddr 00:10:DC:A3:E0:1F inet6 addr: fe80::210:dcff:fea3:e01f/64 Scope:Link UP BROADCAST NOTRAILERS RUNNING MULTICAST MTU:1500 Metric:1 RX packets:4275 errors:0 dropped:0 overruns:0 frame:0 TX packets:4429 errors:0 dropped:0 overruns:0 carrier:0 collisions:16 txqueuelen:1000 RX bytes:1198493 (1.1 Mb) TX bytes:1141317 (1.0 Mb) Interrupt:11 Base address:0xd000

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:3916 errors:0 dropped:0 overruns:0 frame:0 TX packets:3916 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:243240 (237.5 Kb) TX bytes:243240 (237.5 Kb)

ppp0 Link encap:Point-to-Point Protocol inet addr:80.128.246.66 P-t-P:217.5.98.14 Mask:255.255.255.255 UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1492 Metric:1 RX packets:4145 errors:0 dropped:0 overruns:0 frame:0 TX packets:4243 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:3 RX bytes:1099297 (1.0 Mb) TX bytes:1008199 (984.5 Kb)

Так выглядит конФИГ для DHCP сервера

ddns-update-style ad-hoc;

shared-network «Home» {

option subnet-mask 255.255.255.0;

subnet 192.168.1.0 netmask 255.255.255.0 {

range 192.168.1.0 192.168.1.254;

}

#diskless computer

host Monster {

hardware ethernet 00:40:63:C9:6C:1B;

fixed-address 192.168.1.12;

filename bootlinux;

}

}

А вот результат запуска скрипта dhcpd

No subnet declaration for eth-id-00:50:bf (0.0.0.0). ** Ignoring requests on eth-id-00:50:bf. If this is not what you want, please write a subnet declaration in your dhcpd.conf file for the network segment to which interface eth-id-00:50:bf is attached. **

Not configured to listen on any interfaces!

в sysconfig eth0 прописанн как DHCP интерфейсное устройство.

Я уже в интерене штук надцать нашел всяких примеров конфигов и все кончают с таким воплем.

Спасибо за любые подсказки

fly4life

Попробуй такой конфиг:

subnet 192.168.1.0 netmask 255.255.255.0 {

option routers 192.168.1.1;

option subnet-mask 255.255.255.0;

range 192.168.1.2 192.168.1.15;

#diskless computer

host Monster {

hardware ethernet 00:40:63:C9:6C:1B;

fixed-address 192.168.1.12;

}

}

anonymous
fly4life
QUOTE

Попробывал, результат тот же к сожелению.

Я искал в интернете, везде такие же чайники как я задают этот вопрос и нигде нормального ответа. Мне кажется, что я что-то не так делаю и ответ совсем простой. И дело не в конфиге, а в моих кривых руках. :(

fly4life

Каким образом запускаешь DHCPd? Может скрипт не тот конфиг вызывает?

Genie

Загрузка по сети требует установки

dhcpd — для получения ip-адреса и настроек для загрузки

tftpd — для загрузки образов.

Вместе они составляют bootpd — демона сетевой загрузки

итак, что у меня было в ALT Master 2.2

/etc/dhcpd.conf:

ddns-update-style ad-hoc;
option routers 192.168.0.1;
option domain-name-servers 192.168.0.1;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.0.255;
option domain-name "localnet";
subnet 192.168.0.0 netmask 255.255.255.0 {
  range 192.168.0.2 192.168.0.254;
}
group xterminals {
  filename "pxelinux.bin";
  option root-path "/var/diskless/terminal";
  option dhcp-client-identifier "PXEClient";
  host terminal {
    hardware ethernet 00:90:27:b0:e2:aa;
    fixed-address 192.168.0.2;
  }
}

tftpd запускался в xinetd вот так:

/etc/xinetd.d/tftp:

# default: off
# description: The tftp server serves files using the trivial file transfer \
#      protocol.  The tftp protocol is often used to boot diskless \
#      workstations, download configuration files to network-aware printers, \
#      and to start the installation process for some operating systems.
service tftp
{
      disable            = no
      socket_type      = dgram
      wait            = yes
      user            = root
      server            = /usr/sbin/in.tftpd
      server_args      = -u tftp -s /var/lib/tftpboot
#      max_load      = 90.0
      cps            = 20 5
}

в папочке /var/lib/tftpboot было вот что:

$ ls -aFlR
.:
итого 32
drwxr-xr-x    5 root     root         4096 2004-05-17 21:49 ./
drwxr-xr-x   48 root     root         4096 2004-05-17 21:40 ../
drwxr-xr-x    2 root     root         4096 2004-05-17 21:49 memtest/
-rw-r--r--    1 root     root        10820 2002-11-29 22:18 pxelinux.bin
drwxr-xr-x    2 root     root         4096 2004-05-17 21:36 pxelinux.cfg/
drwxr-xr-x    2 root     root         4096 2004-05-17 21:49 tsc/
./memtest:
итого 88
drwxr-xr-x    2 root     root         4096 2004-05-17 21:49 ./
drwxr-xr-x    5 root     root         4096 2004-05-17 21:49 ../
-rw-r--r--    1 root     root        76880 2002-11-29 16:46 memtest86
./pxelinux.cfg:
итого 12
drwxr-xr-x    2 root     root         4096 2004-05-17 21:36 ./
drwxr-xr-x    5 root     root         4096 2004-05-17 21:49 ../
-rw-r--r--    1 root     root          714 2003-12-05 01:07 C0A80002
./tsc:
итого 2816
drwxr-xr-x    2 root     root         4096 2004-05-17 21:49 ./
drwxr-xr-x    5 root     root         4096 2004-05-17 21:49 ../
-rw-r--r--    1 root     root       769548 2003-12-05 00:40 bzImage-tsc
-rw-r--r--    1 root     root      2095742 2003-12-05 01:05 root.gz

файлик со странным именем — C0A80002 — это для платы с таким MAC-адресом.

$ cat pxelinux.cfg/C0A80002
default tsc
label memtest86
      kernel memtest/memtest86
label tsc
      kernel tsc/bzImage-tsc
      append vga=5 initrd=tsc/root.gz root=/dev/ram0 ramdisk_size=8192
timeout 50
prompt 1

Собственно этого достаточно, для того, чтобы всё работало.

anonymous

тьфу нафиг, в /etc/sysconfig/dhcpd интерфес был прописан как eth-00-04-63-01-02-03 и так далее. Наверное драйвер в 2.6 ядре теперь так обзывает все девайсы которые находит.

От этого путаница получилась. DHCP демон нуждался в старом названии типа eth0. Это потому, что у него переменная под имя девайса всего 16 байтиков длинной, все имя прописанное автоматом в syconfig-е не влезло потому и нифуя не работало.

Спасибо за полный ответ, буду дальше ковырятся с загрузкой. Хоть DHCP сервер заработал. :)

anonymous

да, у меня, видимо та же проблема, но копаю я первые дни, сложно разбираться =)

как сменить интерфейс на eth0 в /etc/sysconfig/dhcpd? помогите, пожалуйста!

propeller

Строка в /etc/dhcpd.conf:

DHCPD_INTERFACE=«ethx»;