Newsgroup: it.comp.os.linux.iniziare
Titolo: BOOT da rete

Sto tentando di avviare un computer attraverso la rete. Il processo si
blocca dicendo:
CLIENT MAC ADDR: 00 30 1B 3C 48 21   GUID:
FFFFFFFF-FFFF-FFFF-FFFF-FFFFFFFFFFFF
CLIENT IP: 192.168.0.11  MASK: 255.255.255.0 DHCP IP: 127.0.0.1
PXE-E55: ProxyDHCP service did not reply to request on port 4011.
PXE-M0F: Exiting PXE ROM
DISK BOOT FAILURE, INSERT SYSTEM DISK AND PRESS ENTER
Il pc riesce a trovare l'IP e la maschera di rete ma penso che il
valore sbagliato sia il DHCP IP: 127.0.0.1. Nel dhcpd.conf ho
esplicitamente settato che l'interfaccia è la eth0 quindi non
dovrebbero venir mandati gli IP della scheda di loopback (lo =
127.0.0.1). Non ho trovato da nessuna parte come settare questo server
proxydhcp anche se molte pagine su internet fanno riferimento ad esso.
Nessun parametro del dhcpd.cond fa riferimento a 127.0.0.1....non so
più cosa fare...
Rigrazio tutti quelli che risponderanno a questo messaggio!
                      Marco M.

 DISK BOOT FAILURE, INSERT SYSTEM DISK AND PRESS ENTER
il server tftp e' up and running?
hai messo l'opzione filename in dhcpd.conf?
posta il contenuto del file di config.

...

ecco il mio dhcpd.conf
# DHCP configuration file for DHCP ISC 3.0
ddns-update-style none;
allow booting;
allow bootp;
not authoritative;
DHCPD_INTERFACE= "eth0";
# Definition of PXE-specific options
# Code 1: Multicast IP address of boot file server
# Code 2: UDP port that client should monitor for MTFTP responses
# Code 3: UDP port that MTFTP servers are using to listen for MTFTP requests
# Code 4: Number of seconds a client must listen for activity before trying
#         to start a new MTFTP transfer
# Code 5: Number of seconds a client must listen before trying to restart
#         a MTFTP transfer
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;
#Define options for pxelinux
option space pxelinux;
option pxelinux.magic      code 208 = string;
option pxelinux.configfile code 209 = text;
option pxelinux.pathprefix code 210 = text;
option pxelinux.reboottime code 211 = unsigned integer 32;
site-option-space "pxelinux";
# These lines should be customized to your setup
#option pxelinux.configfile "configs/common";
#option pxelinux.pathprefix "/pxelinux/files/";
#filename "/pxelinux/pxelinux.bin";
 
option pxelinux.magic f1:00:74:7e;
option pxelinux.reboottime 30;
subnet 192.168.0.0 netmask 255.255.255.0 {
  class "PXE" {
    match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
    option vendor-class-identifier "PXEClient";
    vendor-option-space PXE;
    # At least one of the vendor-specific PXE options must be set in
    # order for the client boot ROMs to realize that we are a PXE-compliant
    # server.  We set the MCAST IP address to 0.0.0.0 to tell the boot ROM
    # that we can't provide multicast TFTP (address 0.0.0.0 means no
    # address).
    option PXE.mtftp-ip 0.0.0.0;
    # This is the name of the file the boot ROMs should download.
    filename "pxelinux.0";
    # This is the name of the server they should get it from.
    next-server 192.168.0.3;
  }
  pool {
    max-lease-time 86400;
    default-lease-time 86400;
    range 192.168.0.2 192.168.0.254;
    deny unknown clients;
  }
  host node1 {
    hardware ethernet 00:30:1b:3c:48:21;
    fixed-address 192.168.0.10;
    option routers 192.168.0.1;
    option root-path "/export/root/nodo1";
  } 
}

...

Ho fatto qualche altra prova...
root@Marte:~# telnet localhost 69
Trying 127.0.0.1...
telnet: connect to address 
127.0.0.1
: Connection refused
root@Marte:~# grep tftp /etc/services
tftp             69/tcp    #Trivial File Transfer
tftp             69/udp    #Trivial File Transfer
subntbcst_tftp  247/tcp    #subntbcst_tftp
subntbcst_tftp  247/udp    #subntbcst_tftp
root@Marte:~# grep tftp /etc/inetd.conf
tftp  dgram   udp     wait    root    /usr/sbin/tcpd in.tftpd
/tftpboot
root@Marte:~# cat /usr/sbin/in.tftpd 
INTFTPD_PATH="/export/root/"
INTFTPD_OPTS="-l -v -s ${INTFTPD_PATH}"
root@Marte:~# cat /etc/bootptab
global.prof:\
        :ip=
192.168.0.10
:\
        :sm=
255.255.255.0
:\
        :ds=
192.168.0.3
:\
        :gw=
192.168.0.1
:\
        :ht=ethernet:\
        :bf=linux:
nodo1:hd=/root/nodo1:tc=global.prof:ha=00301b3c4821:ip=
192.168.0.11
:
Spero che questi output vi possano aiutare a scovare il problema(ma
perchè tftpd non risponde??? è attivo nell'inetd.conf!!!)
Grazie ancora!!!
              Marco M.

               Marco M.
Scusa se mi intrometto: hai controllato di non avere un firewall attivo
sulla macchina su cui gira il tftp server? Se lo hai, sei sicuro che
lasci passare i pacchetti del tftp / dhcp?
-- 
I've seen things you people wouldn't believe. Attack ships on fire off the 
shoulder of Orion. I watched c-beams... glitter in the dark near Tanhauser Gate.
All those... moments will be lost... in time, like tears... in rain. 
Time... to die
-------------------------------------------------------------------------------------------
Io ne ho viste cose che voi umani non potete immaginarvi. Navi da combattimento 
in fiamme al largo dei bastioni di Orione e ho visto i raggi B balenare nel 
buio vicino alle porte di Tannoiser e tutti quei momenti andranno perduti nel 
tempo come lacrime nella pioggia... è tempo di morire...
Roy Batty (Rutger Hauer), Blade Runner

 telnet: connect to address 
127.0.0.1
: Connection refused
mi pare giusto, tftp usa udp, non tcp, e in /etc/services me lo elenca
solo come udp. 
prova a collegartici con un client tftp, sia su localhost
che su una macchina remota:
$ tftp localhost
tftp> get /pxelinux.0
Received 11963 bytes in 0.0 seconds

 Received 11963 bytes in 0.0 seconds
$ tftp localhost (oppure 192.xxx.xxx.xxx)
tftp> get /tftpboot/pxelinux.0
funziona sia in locale che in remoto!
leggendo su 
http://www.linux-mag.com/2002-10/netbooting_01.html
 ho
scoperto che bisogna togliere BOOTP in quanto č stato inglobato in
DHCP. Ora in mio dhcpd.conf č cosě:
# For ISC DHCPD 3.0, you may need to uncomment the following line
#ddns-update-style none;
group {
  # Common options for all network-boot clients
  # IP address of TFTP/NFS server
  next-server 192.168.0.3;
  # The name of the file to be downloaded by the ROM
  filename "/tftpboot/pxelinux.0";
  # A default server directory to be used as / by the clients
  #option root-path "/clients/shared/root";
  # IP addresses of DNS servers
  #option domain-name-servers XX.XX.XX.XX, YY.YY.YY.YY;
  # IP addresses of routers
  option routers 192.168.0.1;
  # An entry for one specific client
  host nodo1 {
    # Ethernet address of the client machine
    hardware ethernet 00:30:1B:3C:48:21;
    # IP address to assign
    fixed-address 192.168.0.10;
    # Override root-path option for this machine
    # Our initial configuration will use separate
    # root directories for each client.
    option root-path "/export/root/nodo1";
  }
  # An entry for one specific client
  host nodo2 {
    # Ethernet address of the client machine
    hardware ethernet 00:02:3F:16:B9:18;
    # IP address to assign
    fixed-address 192.168.0.11;
    # Override root-path option for this machine
    # Our initial configuration will use separate
    # root directories for each client.
    option root-path "/export/root/nodo2";
  }
  # Entries for other clients go here:
  # host another-client {
  #     etc, etc, etc
  # }
}
Ed esce il seguente errore:
PXE-E53 no boot filename received
Seeeeeeeeeempre piů difficile...
Ciao! e THX a tapeworm per tutto il tempo che mi sta dedicando...

 PXE-E53 no boot filename received
prova a mettere l'opzione filename dentro alla sezione relativa al nodo:
host nodo2 {
   hardware ethernet 00:02:3F:16:B9:18;
   fixed-address 192.168.0.11;
   filename "/tftpboot/pxelinux.0";
   option root-path "/export/root/nodo2";
}

> prova a mettere l'opzione filename dentro alla sezione relativa al nodo:
Si grazie avevo giŕ provato, cmq al posto di group ho definito una
sottorete dove č presente anche il computer server e tutto funzia!!!
THX 1G ankora!!
bye
                    Marco M.