[РЕШЕНО]Бездисковая загрузка. TFTP open timeout.
samu3l 5 Августа, 2009 - 10:03
Здравствуйте.
Пытаюсь загрузиться на бездисковой машине с сервера по сети. Сервер настраивал по этому руководству. На клиенте стоит интеловская сетевая карта с поддержкой PXE.
При загрузке клиент получает по DHCP указанный в dhcpd.conf IP-адрес, но при попытке зайти по TFTP пишет через некоторое время следующее:
PXE-E32: TFTP open timeout. PXE-E32: TFTP open timeout. PXE-M0F: Exiting LANDesk Service Agent.
Пробовал заходить по TFTP с других машин на сервер:
tftp> get /tftpboot/pxelinux.0 Error code 1: File not found
Файл pxelinux.0 и каталог в котором он находится имеют права доступа 777.
Содержимое файла /etc/conf.d/in.tftpd
INTFTPD_PATH="/tftpboot"
INTFTPD_OPTS="-l -v -s ${INTFTPD_PATH}"Подскажите пожалуйста что можно сделать чтобы можно было получить по TFTP данный файл.
ВСЕМ БОЛЬШОЕ СПАСИБО! Особенно MVG.
Дело было в биосе и карточке (каким то чудом FreeBSD грузилась и так).
»
- Для комментирования войдите или зарегистрируйтесь

В конфигурации
В конфигурации /etc/conf.d/in.tftpd вы указали корень tftp сервера как /tftpboot.
В этом случае необходимо исключить /tftpboot из пути при запросе на получение файлов.
То есть попробуйте сделать так:
В файле конфигурации dhcp сервера /etc/dhcpd.conf, в секции конфигурации клиена, нужно указать имя загрузчика тоже как
/pxelinux.0Эта секция должна выглядить примерно так:
host thin-1 { hardware ethernet 00:60:67:74:98:b7; option tftp-server-name "fserver"; filename "/pxelinux.0"; fixed-address 192.168.0.160; }Только имя носта, MAC адрес, имя tftp сервера и ip адрес клиента укажите свои.
Файл загружается.
Спасибо!
На обычные машины файл загружается, а на бездисковой ситуация осталась прежней. В /etc/dhcp/dhcpd.conf все так и было за исключением "/" перед pxelinux.0.
Теперь /etc/dhcp/dhcpd.conf выглядит так:
ddns-update-style none; option routers 192.168.100.1; #option domain-name-servers 192.168.100.1; next-server 192.168.100.1; option space PXE; option PXE.mtftp-ip code 1 = ip-address; option PXE.mtftp-cport code 2 = unsigned integer 16; option PXE.mtftp-sport code 3 = unsigned integer 16; option PXE.mtftp-tmout code 4 = unsigned integer 8; option PXE.mtftp-delay code 5 = unsigned integer 8; option PXE.discovery-control code 6 = unsigned integer 8; option PXE.discovery-mcast-addr code 7 = ip-address; subnet 192.168.100.0 netmask 255.255.255.0 { class "pxeclient" { match if substring(option vendor-class-identifier, 0, 9) = "PXEClient"; vendor-option-space PXE; option PXE.mtftp-ip 0.0.0.0; } host node01 { hardware ethernet 00:60:94:A3:F4:30; fixed-address 192.168.100.11; filename "/pxelinux.0"; option tftp-server-name "fserv"; } }Судя по содержимому вашего
Судя по содержимому вашего /etc/dhcp/dhcpd.conf, у вас отсутствует DNS сервер, и клиент не может получить ip адрес tftp сервера по его имени.
Соответственно, измените
так, чтобы вместо
fservбыл указан ip адрес вашего tftp сервера.Пока безрезультатно
Изменил "fserv" на "192.168.100.1"
Перезапустил dhcpd - результат тот же.
С удовольствием покажу другие конфиги, только скажите какие.
Бездисковой загрузкой не
Бездисковой загрузкой не пользовался, а вот tftp использую часто. И пока ни разу не указывал параметр filename таким образом.
Обычно считал, что файл лежит в корневой директории tftp. Попробуйте убрать "/".
Нащяльника, мая сервира паставиль, фрибизьдя инсталя сделаль, апачи сабраль, пыхапе патключиль, сапускаю, а ано - ажамбех пашамбе эшельбе шайтанама!
Попробуйте добавить в секцию
Попробуйте добавить в секцию описания каждого хоста директиву next-server:
host node01 { hardware ethernet 00:60:94:A3:F4:30; fixed-address 192.168.100.11; filename "/pxelinux.0"; option tftp-server-name 192.168.100.1; next-server 192.168.100.1; }Сейчас попробовал почитать man dhcpd.conf и обнаружил, что параметр tftp-server-name в нем не описан. Странно, я точно помню, что именно им указывал имя tftp сервера, с которого брать файлы. Бездисковой загрузкой пользуюсь уже около 4-х лет. Возможно за это время этот параметр успел устареть, хотя ругани в логах на него нет. В качестве tftp сервера я использую atftp.
Что видно в логах? Фиксируется ли запрос на получение pxelinux.0? Посмотрите на обмен пакетами между машинами при помощи tcpdump.
PS. С tftp-server-name все в порядке, она описана в man dhcp-options.
next-server добавил
У меня установлен tftp-hpa, попробую установить atftp.
Вот что говорит tcpdump:
Скажите, что отвечает ваш
Скажите, что отвечает ваш сервер на команду
И покажите еще раз вывод tcpdump, только добавьте еще ключ -n.
Покажите MAC адрес вашего сервера.
Цитата: Скажите, что отвечает
Не понятно. У вас hostname
Не понятно. У вас hostname прописан, а в выводе tcpdump сервер резолвится как localhost. Ваш сервер в tcpdump должен резолвится как fserv.vstu.edu.ru. Проверьте внимательно настройки сети.
Покажите вывод tcpdump, только добавьте еще ключ -n.
fserv ~ # tcpdump -n tcpdump:
Может быть мне нужно в /etc/conf.d/dhcpd прописать какие-то опции?
Вот мой dhcpd.conf # Global
Вот мой dhcpd.conf
# Global options authoritative; default-lease-time 1800; max-lease-time 7200; option domain-name "domain.ru"; use-host-decl-names on; ddns-update-style interim; include "/etc/bind/rndc.key"; zone domain.ru. { primary 127.0.0.1; key "rndc-key"; } zone 0.168.192.in-addr.arpa. { primary 127.0.0.1; key "rndc-key"; } subnet 192.168.0.0 netmask 255.255.255.0 { range 192.168.0.20 192.168.0.30; option subnet-mask 255.255.255.0; option broadcast-address 192.168.0.255; option routers 192.168.0.1; option domain-name-servers 192.168.0.2; option tftp-server-name "andrey"; next-server 192.168.0.2; filename "/pxes/pxelinux.0"; } host thin-1 { hardware ethernet 00:60:67:74:98:b7; option tftp-server-name "fserver"; filename "/pxes/pxelinux.0"; fixed-address 192.168.0.160; }Только сделайте поправку на то, что у вас нет dns сервера. Возможно, здесь есть кое какие корявости, но он точно работает.
В моем случае он видимо будет
В моем случае он видимо будет выглядеть так
# Global options authoritative; default-lease-time 1800; max-lease-time 7200; # option domain-name "domain.ru"; # use-host-decl-names on; # ddns-update-style interim; ddns-update-style none; # include "/etc/bind/rndc.key"; subnet 192.168.100.0 netmask 255.255.255.0 { range 192.168.0.11 192.168.100.100; option subnet-mask 255.255.255.0; option broadcast-address 192.168.100.255; option routers 192.168.100.1; # option domain-name-servers 192.168.100.2; # option tftp-server-name "andrey"; next-server 192.168.100.1; filename "/pxelinux.0"; }Поправьте пожалуйста, если что не так.
Iptables запущен? Если да, то
Iptables запущен?
Если да, то есть правила, специфичные для бездисковых систем?
Кстати интересно было бы глянуть на вывод
Нащяльника, мая сервира паставиль, фрибизьдя инсталя сделаль, апачи сабраль, пыхапе патключиль, сапускаю, а ано - ажамбех пашамбе эшельбе шайтанама!
# tcpdump -n -nn
# tcpdump -n -nn -vvv 15:39:53.499438 00:1b:fc:a3:19:69 > 33:33:00:00:00:16, ethertype IPv6 (0x86dd), length 90: 0x0000: 6000 0000 0024 0001 fe80 0000 0000 0000 `....$.......... 0x0010: 021b fcff fea3 1969 ff02 0000 0000 0000 .......i........ 0x0020: 0000 0000 0000 0016 3a00 0502 0000 0100 ........:....... 0x0030: 8f00 3fd5 0000 ..?... 15:40:01.614337 IP (tos 0x0, ttl 20, id 0, offset 0, flags [none], proto UDP (17), length 576) 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request [|bootp] 15:40:01.616861 arp who-has 192.168.100.11 tell 192.168.100.1 15:40:02.000497 IP (tos 0x10, ttl 128, id 0, offset 0, flags [none], proto UDP (17), length 328) 192.168.100.1.67 > 192.168.100.11.68: BOOTP/DHCP, Reply, length 300, xid 0x94a3f430, Flags [none] (0x0000) Your-IP 192.168.100.11 Server-IP 192.168.100.1 [|bootp] 15:40:02.002335 IP (tos 0x0, ttl 20, id 1, offset 0, flags [none], proto UDP (17), length 576) 0.0.0.0.68 > 255.255.255.255.67: BOOTP/DHCP, Request [|bootp] 15:40:02.003040 IP (tos 0x10, ttl 128, id 0, offset 0, flags [none], proto UDP (17), length 328) 192.168.100.1.67 > 192.168.100.11.68: BOOTP/DHCP, Reply, length 300, xid 0x94a3f430, Flags [none] (0x0000) Your-IP 192.168.100.11 Server-IP 192.168.100.1 [|bootp] 15:40:02.616025 arp who-has 192.168.100.11 tell 192.168.100.1 15:40:02.616244 arp reply 192.168.100.11 is-at 00:60:94:a3:f4:30 15:40:02.616252 IP (tos 0x0, ttl 64, id 0, offset 0, flags [DF], proto ICMP (1), length 48) 192.168.100.1 > 192.168.100.11: ICMP echo request, id 155, seq 0, length 28 15:40:09.489177 arp who-has 192.168.100.1 tell 192.168.100.11 15:40:09.489194 arp reply 192.168.100.1 is-at 00:1b:fc:a3:19:69 15:40:09.489381 IP (tos 0x0, ttl 20, id 2, offset 0, flags [none], proto UDP (17), length 61) 192.168.100.11.2070 > 192.168.100.1.69: 33 RRQ "/pxelinux.0" octet blksiz 15:40:09.507838 IP (tos 0x0, ttl 64, id 45657, offset 0, flags [DF], proto UDP (17), length 43) 192.168.100.1.4909 > 192.168.100.11.2070: [bad udp cksum ce4e!] UDP, length 15 15:40:10.508938 IP (tos 0x0, ttl 64, id 45658, offset 0, flags [DF], proto UDP (17), length 43) 192.168.100.1.4909 > 192.168.100.11.2070: [bad udp cksum ce4e!] UDP, length 15 15:40:12.511026 IP (tos 0x0, ttl 64, id 45659, offset 0, flags [DF], proto UDP (17), length 43) 192.168.100.1.4909 > 192.168.100.11.2070: [bad udp cksum ce4e!] UDP, length 15 15:40:16.515114 IP (tos 0x0, ttl 64, id 45660, offset 0, flags [DF], proto UDP (17), length 43) 192.168.100.1.4909 > 192.168.100.11.2070: [bad udp cksum ce4e!] UDP, length 15 15:40:17.392646 IP (tos 0x0, ttl 20, id 3, offset 0, flags [none], proto UDP (17), length 61) 192.168.100.11.2071 > 192.168.100.1.69: 33 RRQ "/pxelinux.0" octet blksiz 15:40:17.393307 IP (tos 0x0, ttl 64, id 48025, offset 0, flags [DF], proto UDP (17), length 43) 192.168.100.1.4910 > 192.168.100.11.2071: [bad udp cksum cc4e!]Установил atftp, указал в
Установил atftp, указал в /etc/conf.d/atftp
TFTPD_ROOT="/tftpboot"- ничего не изменилось, видимо дело не в tftp-сервере.а карточки у вас поддерживают
а карточки у вас поддерживают удаленную загрузку?
P.S.: Linux - это красная таблетка :-) Windows - синяя...
Да
такие глюки у меня от того
такие глюки у меня от того что он не может найти tftp. Забыл указать next-server. Проверьте правильность и уберите имя