Difference between revisions of "Nextelco:DHCP"
From its-wiki.no
(Created page with "= DHCP server = ISC DHCP? Return to Technology page.") |
|||
Line 1: | Line 1: | ||
= DHCP server = | = DHCP server = | ||
+ | For DHCP service implementation ''isc dhcp server'' has been used. These are the steps followed for its installation and configuration: | ||
+ | <ol> | ||
+ | <li>Install isc-dhcp-server</li> | ||
+ | # apt-get install isc-dhcp-server | ||
+ | <li>After the installation the server is not able to run automatically, these are the error messages thrown to syslog</li> | ||
+ | appserver dhcpd: Internet Systems Consortium DHCP Server 4.2.2 | ||
+ | appserver dhcpd: Copyright 2004-2011 Internet Systems Consortium. | ||
+ | appserver dhcpd: All rights reserved. | ||
+ | appserver dhcpd: For info, please visit https://www.isc.org/software/dhcp/ | ||
+ | appserver dhcpd: Internet Systems Consortium DHCP Server 4.2.2 | ||
+ | appserver dhcpd: Copyright 2004-2011 Internet Systems Consortium. | ||
+ | appserver dhcpd: All rights reserved. | ||
+ | appserver dhcpd: For info, please visit https://www.isc.org/software/dhcp/ | ||
+ | appserver dhcpd: Wrote 0 leases to leases file. | ||
+ | appserver dhcpd: | ||
+ | appserver dhcpd: No subnet declaration for eth1 (192.168.14.4). | ||
+ | appserver dhcpd: ** Ignoring requests on eth1. If this is not what | ||
+ | appserver dhcpd: you want, please write a subnet declaration | ||
+ | appserver dhcpd: in your dhcpd.conf file for the network segment | ||
+ | appserver dhcpd: to which interface eth1 is attached. ** | ||
+ | appserver dhcpd: | ||
+ | appserver dhcpd: | ||
+ | appserver dhcpd: Not configured to listen on any interfaces! | ||
+ | <li>Edit ''/etc/dhcp/dhcpd.conf'' file and set the following configuration</li> | ||
+ | # | ||
+ | # Sample configuration file for ISC dhcpd for Debian | ||
+ | # | ||
+ | # | ||
+ | |||
+ | # The ddns-updates-style parameter controls whether or not the server will | ||
+ | # attempt to do a DNS update when a lease is confirmed. We default to the | ||
+ | # behavior of the version 2 packages ('none', since DHCP v2 didn't | ||
+ | # have support for DDNS.) | ||
+ | ddns-update-style none; | ||
+ | |||
+ | # option definitions common to all supported networks... | ||
+ | option domain-name "basicinternet.no"; | ||
+ | #option domain-name-servers ns1.example.org, ns2.example.org; | ||
+ | option domain-name-servers 8.8.8.8, 8.8.4.4; | ||
+ | |||
+ | default-lease-time 600; | ||
+ | max-lease-time 7200; | ||
+ | |||
+ | # If this DHCP server is the official DHCP server for the local | ||
+ | # network, the authoritative directive should be uncommented. | ||
+ | #authoritative; | ||
+ | |||
+ | # Use this to send dhcp log messages to a different log file (you also | ||
+ | # have to hack syslog.conf to complete the redirection). | ||
+ | log-facility local7; | ||
+ | |||
+ | # No service will be given on this subnet, but declaring it helps the | ||
+ | # DHCP server to understand the network topology. | ||
+ | |||
+ | subnet 192.168.14.0 netmask 255.255.255.0 { | ||
+ | range 192.168.14.5 192.168.14.254; | ||
+ | option routers 192.168.14.1; | ||
+ | option domain-name-servers 193.156.97.36, 193.156.97.95; | ||
+ | option broadcast-address 192.168.14.255; | ||
+ | option domain-name "basicinternet.no"; | ||
+ | default-lease-time 600; | ||
+ | max-lease-time 7200; | ||
+ | } | ||
+ | |||
+ | #subnet 10.152.187.0 netmask 255.255.255.0 { | ||
+ | #} | ||
+ | |||
+ | # This is a very basic subnet declaration. | ||
+ | |||
+ | #subnet 10.254.239.0 netmask 255.255.255.224 { | ||
+ | # range 10.254.239.10 10.254.239.20; | ||
+ | # option routers rtr-239-0-1.example.org, rtr-239-0-2.example.org; | ||
+ | #} | ||
+ | |||
+ | # This declaration allows BOOTP clients to get dynamic addresses, | ||
+ | # which we don't really recommend. | ||
+ | |||
+ | #subnet 10.254.239.32 netmask 255.255.255.224 { | ||
+ | # range dynamic-bootp 10.254.239.40 10.254.239.60; | ||
+ | # option broadcast-address 10.254.239.31; | ||
+ | # option routers rtr-239-32-1.example.org; | ||
+ | #} | ||
+ | |||
+ | # A slightly different configuration for an internal subnet. | ||
+ | #subnet 10.5.5.0 netmask 255.255.255.224 { | ||
+ | # range 10.5.5.26 10.5.5.30; | ||
+ | # option domain-name-servers ns1.internal.example.org; | ||
+ | # option domain-name "internal.example.org"; | ||
+ | # option routers 10.5.5.1; | ||
+ | # option broadcast-address 10.5.5.31; | ||
+ | # default-lease-time 600; | ||
+ | # max-lease-time 7200; | ||
+ | #} | ||
+ | |||
+ | # Hosts which require special configuration options can be listed in | ||
+ | # host statements. If no address is specified, the address will be | ||
+ | # allocated dynamically (if possible), but the host-specific information | ||
+ | # will still come from the host declaration. | ||
+ | |||
+ | #host passacaglia { | ||
+ | # hardware ethernet 0:0:c0:5d:bd:95; | ||
+ | # filename "vmunix.passacaglia"; | ||
+ | # server-name "toccata.fugue.com"; | ||
+ | #} | ||
+ | |||
+ | # Fixed IP addresses can also be specified for hosts. These addresses | ||
+ | # should not also be listed as being available for dynamic assignment. | ||
+ | # Hosts for which fixed IP addresses have been specified can boot using | ||
+ | # BOOTP or DHCP. Hosts for which no fixed address is specified can only | ||
+ | # be booted with DHCP, unless there is an address range on the subnet | ||
+ | # to which a BOOTP client is connected which has the dynamic-bootp flag | ||
+ | # set. | ||
+ | #host fantasia { | ||
+ | # hardware ethernet 08:00:07:26:c0:a5; | ||
+ | # fixed-address fantasia.fugue.com; | ||
+ | #} | ||
+ | |||
+ | # You can declare a class of clients and then do address allocation | ||
+ | # based on that. The example below shows a case where all clients | ||
+ | # in a certain class get addresses on the 10.17.224/24 subnet, and all | ||
+ | # other clients get addresses on the 10.0.29/24 subnet. | ||
+ | |||
+ | #class "foo" { | ||
+ | # match if substring (option vendor-class-identifier, 0, 4) = "SUNW"; | ||
+ | #} | ||
+ | |||
+ | #shared-network 224-29 { | ||
+ | # subnet 10.17.224.0 netmask 255.255.255.0 { | ||
+ | # option routers rtr-224.example.org; | ||
+ | # } | ||
+ | # subnet 10.0.29.0 netmask 255.255.255.0 { | ||
+ | # option routers rtr-29.example.org; | ||
+ | # } | ||
+ | # pool { | ||
+ | # allow members of "foo"; | ||
+ | # range 10.17.224.10 10.17.224.250; | ||
+ | # } | ||
+ | # pool { | ||
+ | # deny members of "foo"; | ||
+ | # range 10.0.29.10 10.0.29.230; | ||
+ | # } | ||
+ | #} | ||
+ | <li>Finally, if we want to check which are the IP addresses the server has leased, we use the following command</li> | ||
+ | #more /var/lib/dhcp/dhcpd.leases | ||
+ | </ol> | ||
+ | |||
− | |||
Return to [[Nextelco:Technology|Technology]] page. | Return to [[Nextelco:Technology|Technology]] page. |
Revision as of 11:42, 5 June 2014
DHCP server
For DHCP service implementation isc dhcp server has been used. These are the steps followed for its installation and configuration:
- Install isc-dhcp-server
- After the installation the server is not able to run automatically, these are the error messages thrown to syslog
- Edit /etc/dhcp/dhcpd.conf file and set the following configuration
- Finally, if we want to check which are the IP addresses the server has leased, we use the following command
# apt-get install isc-dhcp-server
appserver dhcpd: Internet Systems Consortium DHCP Server 4.2.2 appserver dhcpd: Copyright 2004-2011 Internet Systems Consortium. appserver dhcpd: All rights reserved. appserver dhcpd: For info, please visit https://www.isc.org/software/dhcp/ appserver dhcpd: Internet Systems Consortium DHCP Server 4.2.2 appserver dhcpd: Copyright 2004-2011 Internet Systems Consortium. appserver dhcpd: All rights reserved. appserver dhcpd: For info, please visit https://www.isc.org/software/dhcp/ appserver dhcpd: Wrote 0 leases to leases file. appserver dhcpd: appserver dhcpd: No subnet declaration for eth1 (192.168.14.4). appserver dhcpd: ** Ignoring requests on eth1. If this is not what appserver dhcpd: you want, please write a subnet declaration appserver dhcpd: in your dhcpd.conf file for the network segment appserver dhcpd: to which interface eth1 is attached. ** appserver dhcpd: appserver dhcpd: appserver dhcpd: Not configured to listen on any interfaces!
# # Sample configuration file for ISC dhcpd for Debian # # # The ddns-updates-style parameter controls whether or not the server will # attempt to do a DNS update when a lease is confirmed. We default to the # behavior of the version 2 packages ('none', since DHCP v2 didn't # have support for DDNS.) ddns-update-style none; # option definitions common to all supported networks... option domain-name "basicinternet.no"; #option domain-name-servers ns1.example.org, ns2.example.org; option domain-name-servers 8.8.8.8, 8.8.4.4; default-lease-time 600; max-lease-time 7200; # If this DHCP server is the official DHCP server for the local # network, the authoritative directive should be uncommented. #authoritative; # Use this to send dhcp log messages to a different log file (you also # have to hack syslog.conf to complete the redirection). log-facility local7; # No service will be given on this subnet, but declaring it helps the # DHCP server to understand the network topology. subnet 192.168.14.0 netmask 255.255.255.0 { range 192.168.14.5 192.168.14.254; option routers 192.168.14.1; option domain-name-servers 193.156.97.36, 193.156.97.95; option broadcast-address 192.168.14.255; option domain-name "basicinternet.no"; default-lease-time 600; max-lease-time 7200; } #subnet 10.152.187.0 netmask 255.255.255.0 { #} # This is a very basic subnet declaration. #subnet 10.254.239.0 netmask 255.255.255.224 { # range 10.254.239.10 10.254.239.20; # option routers rtr-239-0-1.example.org, rtr-239-0-2.example.org; #} # This declaration allows BOOTP clients to get dynamic addresses, # which we don't really recommend. #subnet 10.254.239.32 netmask 255.255.255.224 { # range dynamic-bootp 10.254.239.40 10.254.239.60; # option broadcast-address 10.254.239.31; # option routers rtr-239-32-1.example.org; #} # A slightly different configuration for an internal subnet. #subnet 10.5.5.0 netmask 255.255.255.224 { # range 10.5.5.26 10.5.5.30; # option domain-name-servers ns1.internal.example.org; # option domain-name "internal.example.org"; # option routers 10.5.5.1; # option broadcast-address 10.5.5.31; # default-lease-time 600; # max-lease-time 7200; #} # Hosts which require special configuration options can be listed in # host statements. If no address is specified, the address will be # allocated dynamically (if possible), but the host-specific information # will still come from the host declaration. #host passacaglia { # hardware ethernet 0:0:c0:5d:bd:95; # filename "vmunix.passacaglia"; # server-name "toccata.fugue.com"; #} # Fixed IP addresses can also be specified for hosts. These addresses # should not also be listed as being available for dynamic assignment. # Hosts for which fixed IP addresses have been specified can boot using # BOOTP or DHCP. Hosts for which no fixed address is specified can only # be booted with DHCP, unless there is an address range on the subnet # to which a BOOTP client is connected which has the dynamic-bootp flag # set. #host fantasia { # hardware ethernet 08:00:07:26:c0:a5; # fixed-address fantasia.fugue.com; #} # You can declare a class of clients and then do address allocation # based on that. The example below shows a case where all clients # in a certain class get addresses on the 10.17.224/24 subnet, and all # other clients get addresses on the 10.0.29/24 subnet. #class "foo" { # match if substring (option vendor-class-identifier, 0, 4) = "SUNW"; #} #shared-network 224-29 { # subnet 10.17.224.0 netmask 255.255.255.0 { # option routers rtr-224.example.org; # } # subnet 10.0.29.0 netmask 255.255.255.0 { # option routers rtr-29.example.org; # } # pool { # allow members of "foo"; # range 10.17.224.10 10.17.224.250; # } # pool { # deny members of "foo"; # range 10.0.29.10 10.0.29.230; # } #}
#more /var/lib/dhcp/dhcpd.leases
Return to Technology page.