DHCP-HELPER(8)

πŸ’– DHCP-HELPER(8) πŸ’–

okay bestie, welcome to the System Manager's Manual page for dhcp-helper β€” yes it's a section 8 one, that's the big-girl sysadmin section, we're in our root era ✨


🌸 NAME 🌸

dhcp-helper β€” a DHCP/BOOTP relay agent. that's it, that's the whole vibe πŸ’…


πŸ¦‹ SYNOPSIS πŸ¦‹

dhcp-helper [OPTION]...

✨ DESCRIPTION ✨

okay so dhcp-helper is a DHCP and BOOTP relay agent. picture this: it's sitting there listening for DHCP and BOOTP broadcasts on all the subnets that are directly connected to it, and then it relays those lil messages over to DHCP or BOOTP servers somewhere else entirely. it's giving middle-man, but make it helpful 🫢

and it doesn't stop there! it also relays the replies from those far-away servers back to hosts that are still only partially configured β€” like they're not fully dressed yet, they need help 😭

but here's the iconic part: once those hosts are fully configured, they can just talk directly to their servers themselves and they don't need a relay anymore. main character growth arc fr fr πŸ‘‘


πŸŽ€ OPTIONS πŸŽ€

the only thing you absolutely must give it is at least one DHCP server to relay to. no server, no service, no cap.

the simplest way to set up dhcp-helper on a router is literally just to hand it the interface pointing at the network that has the DHCP server, using a -b option. then all the other interfaces hanging off that machine will accept DHCP requests. slay.

but if your machine does not have an interface on the network with the DHCP server? no worries bestie, use a -s option instead. different tool, same dream πŸ’œ

  • -s <server> β€” tell it which DHCP or BOOTP server to relay to. you can write the server as a machine name or as a dotted-quad IP address. and yes, you can specify more than one server β€” the more the merrier πŸ’–
  • -b <interface> β€” relay to a DHCP or BOOTP server using broadcast via <interface>. this is the glow-up that means you don't even need to give a server address. and psst β€” <interface> gets automatically added to the list of interfaces that will not receive DHCP requests. automatic, we love her 🌸
  • -i <interface> β€” pick which local interfaces to listen on for DHCP/BOOTP broadcasts. if you give no -i flags at all, then all interfaces get used β€” except the ones you named with -e flags and the ones you named with -b flags. so it's everyone, minus the exclusions πŸ’…
  • -e <interface> β€” pick which local interfaces to exclude. bye girl, not you πŸ™ˆ
  • -p β€” use alternative ports (1067/1068) for the DHCP client and server. spicy port choices πŸ”₯
  • -v β€” report the software release version and copyright information. the receipts, basically πŸ‘‘
  • -d β€” debug mode. it will not change UID, not write a pid-file, and not go into the background. it just stays right there with you, fully present, very demure 🧚
  • -r <file> β€” give an alternate path for dhcp-helper to record its process-id in. normally it's /var/run/dhcp-helper.pid, but you can relocate that lil number if you want πŸ“
  • -u <username> β€” tell it which userid dhcp-helper will change to after startup. the daemon normally has to be started as root, but after startup it'll drop root priviledges by switching its id to another user. normally that user is "nobody" β€” but this switch lets you over-ride that πŸ’œ

πŸ’€ NOTES πŸ’€

bestie, listen. dhcp-helper requires a 2.2 or later Linux kernel. that's the requirement, periodt.

the "Linux packet filter" and "packet socket" facilities are not required β€” and honestly that's the chief advantage of this software over the ISC DHCP relay daemon. we're low-maintenance like that ✨


🫢 AUTHOR 🫢

this manual page was written by Simon Kelley <simon@thekelleys.org.uk>. thank you for your service, king πŸŽ€


and that's the whole page babes!! it came to you from the System Manager's Manual, and the page name is DHCP-HELPER(8) β€” that's the header, that's the footer, that's the whole aesthetic πŸ’– go relay something, you've got this πŸ¦‹βœ¨