summaryrefslogtreecommitdiff
path: root/busybox-networking-udhcp.kconfig
blob: 52c6bb9a486fa4f981e1e9ca03d2614dfac991b0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
#
# For a description of the syntax of this configuration file,
# see scripts/kbuild/config-language.txt.
#

config KEMBTK_BUSYB_UDHCPC6
       bool "udhcp client for DHCPv6 (udhcpc6)"
       help
         udhcpc6 is a DHCPv6 client

config KEMBTK_BUSYB_UDHCPD
	bool "udhcp server (udhcpd)"
	default y
	select KEMBTK_BUSYB_PLATFORM_LINUX
	help
	  udhcpd is a DHCP server geared primarily toward embedded systems,
	  while striving to be fully functional and RFC compliant.

config KEMBTK_BUSYB_DHCPRELAY
	bool "dhcprelay"
	default y
	depends on KEMBTK_BUSYB_UDHCPD
	help
	  dhcprelay listens for dhcp requests on one or more interfaces
	  and forwards these requests to a different interface or dhcp
	  server.

config KEMBTK_BUSYB_DUMPLEASES
	bool "Lease display utility (dumpleases)"
	default y
	depends on KEMBTK_BUSYB_UDHCPD
	help
	  dumpleases displays the leases written out by the udhcpd server.
	  Lease times are stored in the file by time remaining in lease, or
	  by the absolute time that it expires in seconds from epoch.

config KEMBTK_BUSYB_FEATURE_UDHCPD_WRITE_LEASES_EARLY
	bool "Rewrite the lease file at every new acknowledge"
	default y
	depends on KEMBTK_BUSYB_UDHCPD
	help
	  If selected, udhcpd will write a new file with leases every
	  time a new lease has been accepted, thus eliminating the need
	  to send SIGUSR1 for the initial writing or updating. Any timed
	  rewriting remains undisturbed.

config KEMBTK_BUSYB_FEATURE_UDHCPD_BASE_IP_ON_MAC
	bool "Select KEMBTK_BUSYB_IP address based on client MAC"
	depends on KEMBTK_BUSYB_UDHCPD
	help
	  If selected, udhcpd will base its selection of KEMBTK_BUSYB_IP address to offer
	  on the client's hardware address. Otherwise udhcpd uses the next
	  consecutive free address.

	  This reduces the frequency of KEMBTK_BUSYB_IP address changes for clients
	  which let their lease expire, and makes consecutive DHCPOFFERS
	  for the same client to (almost always) contain the same
	  KEMBTK_BUSYB_IP address.

config KEMBTK_BUSYB_DHCPD_LEASES_FILE
	string "Absolute path to lease file"
	default "/var/lib/misc/udhcpd.leases"
	depends on KEMBTK_BUSYB_UDHCPD
	help
	  udhcpd stores addresses in a lease file. This is the absolute path
	  of the file. Normally it is safe to leave it untouched.

config KEMBTK_BUSYB_UDHCPC
	bool "udhcp client (udhcpc)"
	default y
	select KEMBTK_BUSYB_PLATFORM_LINUX
	help
	  udhcpc is a DHCP client geared primarily toward embedded systems,
	  while striving to be fully functional and RFC compliant.

	  The udhcp client negotiates a lease with the DHCP server and
	  runs a script when a lease is obtained or lost.

config KEMBTK_BUSYB_FEATURE_UDHCPC_ARPING
	bool "Verify that the offered address is free, using KEMBTK_BUSYB_ARP ping"
	default y
	depends on KEMBTK_BUSYB_UDHCPC
	help
	  If selected, udhcpc will send KEMBTK_BUSYB_ARP probes and make sure
	  the offered address is really not in use by anyone. The client
	  will DHCPDECLINE the offer if the address is in use,
	  and restart the discover process.

config KEMBTK_BUSYB_FEATURE_UDHCP_PORT
	bool "Enable '-P port' option for udhcpd and udhcpc"
	depends on KEMBTK_BUSYB_UDHCPD || KEMBTK_BUSYB_UDHCPC
	help
	  At the cost of ~300 bytes, enables -P port option.
	  This feature is typically not needed.

config KEMBTK_BUSYB_UDHCP_DEBUG
	int "Maximum verbosity level for udhcp applets (0..9)"
	default 9
	range 0 9
	depends on KEMBTK_BUSYB_UDHCPD || KEMBTK_BUSYB_UDHCPC || KEMBTK_BUSYB_DHCPRELAY
	help
	  Verbosity can be increased with multiple -v options.
	  This option controls how high it can be cranked up.

	  Bigger values result in bigger code. Levels above 1
	  are very verbose and useful for debugging only.

config KEMBTK_BUSYB_FEATURE_UDHCP_RFC3397
	bool "Support for RFC3397 domain search (experimental)"
	default y
	depends on KEMBTK_BUSYB_UDHCPD || KEMBTK_BUSYB_UDHCPC
	help
	  If selected, both client and server will support passing of domain
	  search lists via option 119, specified in RFC 3397,
	  and SIP servers option 120, specified in RFC 3361.

config KEMBTK_BUSYB_FEATURE_UDHCP_8021Q
	bool "Support for 802.1Q VLAN parameters"
	default y
	depends on KEMBTK_BUSYB_UDHCPD || KEMBTK_BUSYB_UDHCPC
	help
	  If selected, both client and server will support passing of VLAN
	  KEMBTK_BUSYB_ID and priority via options 132 and 133 as per 802.1Q.

config KEMBTK_BUSYB_UDHCPC_DEFAULT_SCRIPT
	string "Absolute path to config script"
	default "/usr/share/udhcpc/default.script"
	depends on KEMBTK_BUSYB_UDHCPC
	help
	  This script is called after udhcpc receives an answer. See
	  examples/udhcp for a working example. Normally it is safe
	  to leave this untouched.

config KEMBTK_BUSYB_UDHCPC_SLACK_FOR_BUGGY_SERVERS
	int "DHCP options slack buffer size"
	default 80
	range 0 924
	depends on KEMBTK_BUSYB_UDHCPD || KEMBTK_BUSYB_UDHCPC
	help
	  Some buggy DHCP servers send DHCP offer packets with option
	  field larger than we expect (which might also be considered a
	  buffer overflow attempt). These packets are normally discarded.
	  If circumstances beyond your control force you to support such
	  servers, this may help. The upper limit (924) makes dhcpc accept
	  even 1500 byte packets (maximum-sized ethernet packets).

	  This option does not make dhcp[cd] emit non-standard
	  sized packets.

	  Known buggy DHCP servers:
	  3Com OfficeConnect Remote 812 ADSL Router:
	    seems to confuse maximum allowed UDP packet size with
	    maximum size of entire KEMBTK_BUSYB_IP packet, and sends packets which are
	    28 bytes too large.
	  Seednet (ISP) VDSL: sends packets 2 bytes too large.