Skip to content

Instantly share code, notes, and snippets.

@DavidMah
Created August 23, 2013 19:56
Show Gist options
  • Save DavidMah/6323339 to your computer and use it in GitHub Desktop.
Save DavidMah/6323339 to your computer and use it in GitHub Desktop.
How Does Network Hardware Bootstrap?

How Does Network Hardware Bootstrap?

Cisco http://www.cisco.com/en/US/docs/ios/fundamentals/configuration/guide/cf_autoinstall.html#wp1148764

  • Connect the machine to the network and turn it on.
  • If you do not respond to the setup prompts, AutoInstall will begin automatically after a short period of time.
  • It sends out a DHCP request hunting for its ip address. Through DHCP, the machine receives an IP, a TFTP server IP (dhcp option 150), and a DNS server IP (dhcp option 6). The machine receives the TFTP server's IP address using ridiculous proprietary cisco DHCP option 150 (yes dhcpd will have to serve this. yes I mad).
  • The machine requests from the TFTP server a network-confg file, which describes a mapping of ips to hostnames. This file gets used as a backup to reverse dns.. and it probably will not get used.
  • The machine does a reverse dns lookup to get its hostname.
  • The machine requests from the TFTP server a name-confg file, which is that machine's own configuration file. Except in name-confg, replace name with whatever the hostname of the machine is. The machine loads the config file.
  • A sysadmin connects to the router and then manually saves the configuration to the startup-configuration file. The docs actually say that it must be this way. :(

Note: Cisco is the only vendor that doesn't support filename offerings through dhcp option 67 :(.

Arista http://www.aristanetworks.com/docs/Manuals/ConfigGuide.pdf

  • Connect the machine to the network and turn it on.
  • The machine enters Zero Touch Provisioning mode because no startup-config file exists.
  • The machine sends out a DHCP request hunting for its ip address.
  • Through DHCP, the machine receives an IP, a TFTP server IP (dhcp option 66), and a filename (dhcp option 67)
  • The machine connects to the TFTP server requesting that filename. It considers that file to be its startup-config file that it saves to nonvolatile memory.
  • The machine reboots, and since it now does have the startup-config file, it is good to go.

Note:

  • Arista hardware can also use HTTP or FTP.
  • Arista hardware can also accept a bootup script with arbitrary code instead of just a configuration file. It distinguishes this by hunting for #! at the beginning of the file.
  • Wow these features sure are wonderful and convenient cough cisco cough

Juniper http://www.juniper.net/techpubs/software/junos-security/junos-security11.1/junos-security-admin-guide/junos-security-admin-guide.pdf:115

  • Connect the machine to the network and turn it on.
  • The machine can't locate a valid configuration file in the CompactFlash card.
  • Through DHCP, the machine receives an IP, a TFTP server IP (dhcp option 66), and a filename (dhcp option 67).
  • The machine connects to the TFTP server requesting that filename. It considers that file to be its hostname.conf (replace hostname with the actual hostname) file.
  • The machine installs the file and commits the configuration. Note:
  • Juniper hardware can also use HTTP or FTP.
  • If the option 67 response is missing or the filename doesn't work, then the machine tries to get a network.conf file from the TFTP server that would theoretically specify its hostname. If that fails, then it uses reverse dns to lookup its hostname. If that fails, then it looks for a default configuration file router.conf (probably varies by type of hardware).

Dell ftp://ftp.dell.com/Manuals/all-products/esuprt_ser_stor_net/esuprt_powerconnect/powerconnect-6224_reference%20guide2_en-us.pdf:162

  • Connect the machine to the network and turn it on.
  • The machine doesn't find a startup-config file.
  • Through DHCP, the machine receives an IP, a TFTP server IP (dhcp option 66), and a filename (dhcp option 67).
  • The machine connects to the TFTP server requesting that filename. it considers that file to be its .cfg file.
  • A sysadmin connects to the router and then manually saves the configuration to the startup-configuration file. Just like cisco! Learning from the best :( Note:
  • Dell supports ridiculous cisco dhcp option 150.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment