====== Introduction ====== [[http://www.zeroconf.org/|Zeroconf]] is a set of tools used to create a local network in the absence of DHCP and DNS servers. Using [[http://www.multicastdns.org/|multicast DNS]], [[http://files.zeroconf.org/rfc3927.txt|IPv4 Link-Local Addressing]], and [[http://www.dns-sd.org/|DNS Service discovery (dns-sd)]] a local network can be ''full'' featured with out the need for a Wide Area Network (WAN). There is a good video of zeroconf from a google talk: [[http://www.youtube.com/watch?v=pdbTyxYmF84&NR=1|November 2, 2005 Dr. Stuart]] This design page is to design and discuss the feasibility of zeroconf-gPXE. ====== Design Elements ====== Details ===== Link Local Addressing ===== Maybe a good failsafe behavior? IPv6 based booting will be based on this as well. This would just the IPv4 equivalent. ===== Multicast DNS ===== Proposed PXE definition pxe PXE Configuration Kevin Landreth Protocol description: None Primary Transport Protocol: None Defined TXT keys: Mixed Still need to work out keys. Basic premise is to store DHCP PXE client options in DNS ===== DNS service discovery ===== ====== Use cases ====== Put any use cases here ===== Extending DNS support ===== In general, it might be handy to utilize mDNS in a few cases. In some environments, DNS servers either aren't available or unnecessary. If it is an isolated network, then DNS servers aren't always reachable or don't have resource records for the boot servers (which could vary per location). On local, test, development, or lab environments it isn't always ideal or worth the trouble to setup a DNS server and/or integrate it with DHCP. Honestly, what is the need for a registered domain for an 8 node lab? Utilizing multicast DNS should be a compile time option for **.local** suffixed requests. The default behavior can be debated later =) ===== Ad hoc deployment network ===== this could be particularly useful for those times you have to deploy 10+ machines quickly. Sure DHCP/DNS could do it, but what if it was an appliance of sorts? ====== Design Concerns ====== Any reasons to **not** implement this? ===== Security ===== There is little to no way to prevent hijacking. Is this even a concern?