TCLUG Archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Debian DHCP (was Re: [TCLUG:21970] Should DSL or Cable modem)



On Tue, Oct 03, 2000 at 10:23:51AM -0500, Adam Maloney wrote:
> No, if he tells the client to ask for a lease time of 3 weeks, the
> client sends that during the negotiation. The server can reject that
> lease time if it's too long with a NACK followed by another OFFER
> with a more plausible lease time.

Yep.  This is the correct way of doing it.  The client *MUST* request
an acceptable lease time, by protocol standards.  Remember, the
server, in most cases, will defer to allowing you to keep your IP if
you renew your license at refresh time.  The server will give the
client fair warning before it thinks the lease will expire.  If the
client's still there and submits an ACK, the server issues an extended
lease.  If not, the server drops the lease back into the pool of free
IP's.

As Adam said, it's bad if you continue to use an IP that the server
considers free; at some time the server will reassign the IP to
another machine and you WILL have IP collisions.  No one will be able
to keep a consistent connection.

For more info on how to correctly set up your dhcpcd, pump, or
dhcpclient, please refer to their respective man pages or read
NET3-HOWTO at http://www.linuxdoc.org.

For debian users, it's fairly easy to set up dhcp on a given
interface:

1. Install your preferred client
2. Configure the client for your preferred NIC ( not needed for debian
	systems using dhcpcd, if you're not using the init.d script )
3. Make sure the client daemon does NOT start from init.d
	scripts.
	
	bash# update-rc.d -f dhcpcd remove

4. Edit your /etc/network/interfaces file to have a line like
	the following.

	##############################################################
	# Added for eth0 (see interfaces(5))
	iface eth0 inet dhcp
	    #######################################################
	    # DHCP options

	    #<pump,dhcpcd>#
	    #hostname iwantthisone
	    #<pump>#
	    #leasehours leasetime
	    #<dhcpcd>#
	    #leasetime leasetime
	    #<dhcpcd>#
	    #vendor vendor
	    #<dhcpcd>#
	    #client client_id
	    
	    #######################################################
	    # Nice way to add interface specific scripts (ipchains,
	    # ipmasqadm, tunneling scripts, etc.)  Executes these as
	    # they come, though a neat way to do it is to use
	    # run-parts on a *.d directory
	    #
	    #{pre-up|up|down|post-down} command

	    pre-up run-parts /etc/interfaces/eth0_pre-up.d || true
	    up run-parts /etc/interfaces/eth0_up.d || true
	    down run-parts /etc/interfaces/eth0_down.d || true
	    post-down run-parts /etc/interfaces/eth0_post-down.d || true

	# end file snippit
	##############################################################

5. Execute "/etc/init.d/networking restart", or use "ifdown eth0; ifup
	eth0"

Violla...

-- 
  Chad "^chewie, gunnarr" Walstrom <chewie@wookimus.net>
              http://wookimus.net/chewie

PGP signature