Date: Tue, 17 Apr 2007 21:37:06 +0100 From: kelvin woods <kelvin@zednaught.net> To: freebsd-questions@freebsd.org Cc: Ido Admon <rhingael@mscc.huji.ac.il> Subject: Re: Execute command upon interface initialization? Message-ID: <20070417203706.GA73612@zednaught.net> In-Reply-To: <44slazklgi.fsf@be-well.ilk.org> References: <20070417145352.M39800@mscc.huji.ac.il> <20070417161636.GA29490@slackbox.xs4all.nl> <44slazklgi.fsf@be-well.ilk.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Apr 17, 2007 at 12:35:41PM -0400, Lowell Gilbert wrote: > Roland Smith <rsmith@xs4all.nl> writes: > > > On Tue, Apr 17, 2007 at 06:02:25PM +0300, Ido Admon wrote: > >> Hello list, > >> I couldn't find any way to execute an arbitrary command upon network > >> interface initialization. My situations is that I have and ethernet card > >> that takes DHCP from a cables provider (not a fixed IP address) and I > >> need to update a DynDNS hostname everytime it does (everytime the IP > >> changes). > >> I couldn't find a way to execute shell commands using the rc system or > >> dhclient, what did I miss? > > > > dhclient-script(8)? Maybe devd(8) will work as well. Just in case you don't manage to find the appropriate text... You'll need to create (in this instance) an /etc/dhclient-exit-hooks script. An excerpt from mine is below, you'll need to create your own "update_ddns" function to update your DynDNS entry. if test "$reason" = "RENEW" || test "$reason" = "BOUND"; then # The old lease has been renewed or the interface is being re-bound. if test "$old_ip_address" != "$new_ip_address"; then # IP address has changed -- update DDNS entry. update_ddns fi fi Hope it helps. > > devd won't work as well, because the timing is a bit off (even if you > only get new addresses at boot time, which isn't guaranteed. > > dhclient-script already has a capability ("hooks") for running scripts > at the appropriate times. If you check the mailing list archive, I > know I have previously posted the script I used to use for exactly the > same purpose. > _______________________________________________ > freebsd-questions@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-questions > To unsubscribe, send any mail to "freebsd-questions-unsubscribe@freebsd.org" -- kelvin
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070417203706.GA73612>