<code>2017-3-24</code>
<code>更新了 DNS 選項部分内容</code>
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
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
<code>##############################################################################</code>
<code>#</code>
<code># DNS 選項</code>
<code># 不加載本地的 /etc/hosts 檔案</code>
<code>#no-hosts</code>
<code># 添加讀取額外的 hosts 檔案路徑,可以多次指定。如果指定為目錄,則讀取目錄中的所有檔案。</code>
<code>#addn-hosts=/etc/dnsmasq.hosts.d</code>
<code># 讀取目錄中的所有檔案,檔案更新将自動讀取</code>
<code>#hostsdir=/etc/dnsmasq.hosts.d</code>
<code># 例如,/etc/hosts中的os01将擴充成os01.example.com</code>
<code>#expand-hosts</code>
<code> </code>
<code># 緩存時間設定,一般不需要設定</code>
<code># 本地 hosts 檔案的緩存時間,通常不要求快取區域,這樣更改hosts檔案後就即時生效。</code>
<code>#local-ttl=3600</code>
<code># 同 local-ttl 僅影響 DHCP 租約</code>
<code>#dhcp-ttl=<time></code>
<code># 對于上遊傳回的值沒有ttl時,dnsmasq給一個預設的ttl,一般不需要設定,</code>
<code>#neg-ttl=<time></code>
<code># 指定傳回給用戶端的ttl時間,一般不需要設定</code>
<code>#max-ttl=<time></code>
<code># 設定在緩存中的條目的最大 TTL。</code>
<code>#max-cache-ttl=<time></code>
<code># 不需要設定,除非你知道你在做什麼。</code>
<code>#min-cache-ttl=<time></code>
<code># 一般不需要設定</code>
<code>#auth-ttl=<time></code>
<code># 記錄dns查詢日志,如果指定 log-queries=extra 那麼在每行開始處都有額外的日志資訊。</code>
<code>#log-queries</code>
<code># 設定日志記錄器,'-' 為 stderr,也可以是檔案路徑。預設為:DAEMON,調試時使用 LOCAL0。</code>
<code>#log-facility=<facility></code>
<code>#log-facility=/var/log/dnsmasq/dnsmasq.log</code>
<code># 異步log,緩解阻塞,提高性能。預設為5,最大100。</code>
<code>#log-async[=<lines>]</code>
<code>#log-async=50</code>
<code># 指定使用者群組</code>
<code>#user=nobody</code>
<code>#group=nobody</code>
<code># 指定DNS的端口,預設53,設定 port=0 将完全禁用 DNS 功能,僅使用 DHCP/TFTP</code>
<code>#port=53</code>
<code># 指定 EDNS.0 UDP 包的最大尺寸,預設為 RFC5625 推薦的 edns-packet-max=4096</code>
<code>#edns-packet-max=<size></code>
<code># 指定向上遊查詢的 UDP 端口,預設是随機端口,指定後降低安全性、加快速度、減少資源消耗。</code>
<code># 設定為 '0' 由作業系統配置設定。</code>
<code>#query-port=53535</code>
<code># 指定向上遊查詢的 UDP 端口範圍,友善防火牆設定。</code>
<code>#min-port=<port></code>
<code>#max-port=<port></code>
<code># 指定接口,指定後同時附加 lo 接口,可以使用'*'通配符。</code>
<code># 不能使用接口别名(例如:"eth1:0"),請用 listen-address 選項替代。</code>
<code>#interface=wlp2s0</code>
<code># 指定排除的接口,排除優先級高,可以使用'*'通配符</code>
<code>#except-interface=</code>
<code># 僅接受同一子網的 DNS 請求。</code>
<code># 僅在未指定 interface、except-interface、listen-address 或者 auth-server 時有效。</code>
<code>#local-service</code>
<code># 指定不提供 DHCP 或 TFTP 服務的接口,僅提供 DNS 服務。</code>
<code>#no-dhcp-interface=enp3s0</code>
<code># 指定IP位址,可以多次指定。</code>
<code># interface 選項和 listen-address 選項可以同時使用。</code>
<code># 下面兩行與指定 interface 選項的作用類似。</code>
<code>listen-address=192.168.10.17</code>
<code>#listen-address=127.0.0.1</code>
<code># 通常情況下即使設定了 interface 選項(例如:interface=wlp2s0 )</code>
<code># 将仍然綁定到通配符位址(例如:*:53 )。</code>
<code># 開啟此項将僅監聽指定的接口。</code>
<code># 适用于在同一主機的不同接口或 IP 位址上運作多個 dns 伺服器。</code>
<code>bind-interfaces</code>
<code># 對于新添加的接口不進行綁定。僅 Linux 系統支援,其他系統等同于 bind-interfaces 選項。</code>
<code>#bind-dynamic</code>
<code># 如果 hosts 中的主機有多個 IP 位址,僅傳回對應子網的 IP 位址。</code>
<code>localise-queries</code>
<code># 如果反向查找的是私有位址例如192.168.X.X,僅從 hosts 檔案查找,不再轉發到上遊伺服器</code>
<code>#bogus-priv</code>
<code># 對于任何被解析到此 IP 的域名,将響應 NXDOMAIN 使其解析失效,可以多次指定</code>
<code># 通常用于對于通路不存在的域名,禁止其跳轉到營運商的廣告站點。</code>
<code>#bogus-nxdomain=64.94.110.11</code>
<code># 忽略包含指定位址的 A 記錄查詢的回複。</code>
<code># 例如上遊有台 dns 伺服器僞造 www.baidu.com 的 IP 為 1.1.1.1 并且響應速度非常快。</code>
<code># 指定 ignore-address=1.1.1.1 可以忽略它的響應資訊,</code>
<code># 進而等待 www.baidu.com 正确的查詢結果。</code>
<code>#ignore-address=<ipaddr></code>
<code>filterwin2k</code>
<code># 指定 resolv-file 檔案路徑,預設/etc/resolv.conf</code>
<code>#resolv-file=/etc/resolv.conf</code>
<code># 不讀取 resolv-file 來确定上遊伺服器</code>
<code>#no-resolv</code>
<code># 在編譯時需要啟用 DBus 支援。</code>
<code>#enable-dbus[=<service-name>]</code>
<code># 嚴格按照resolv.conf中的順序進行查找</code>
<code>#strict-order</code>
<code># 向所有上有伺服器發送查詢,而不是一個。</code>
<code>all-servers</code>
<code># 啟用轉發循環檢測</code>
<code>#dns-loop-detect</code>
<code># 這項安全設定是拒絕解析包含私有 IP 位址的域名,</code>
<code># 這些IP位址包括如下私有位址範圍:10.0.0.0/8、172.16.0.0/12、192.168.0.0/16。</code>
<code># 其初衷是要防止類似上遊DNS伺服器故意将某些域名解析成特定私有内網IP而劫持使用者這樣的安全攻擊。</code>
<code># 直接在配置檔案中登出 stop-dns-rebind 配置項進而禁用該功能。</code>
<code># 這個方法确實可以一勞永逸的解決解析内網 IP 位址的問題,</code>
<code># 但是我們也失去了這項安全保護的特性,是以在這裡我不推薦這個辦法。</code>
<code># 使用 rebind-domain-ok 進行特定配置,顧名思義該配置項可以有選擇的忽略域名的 rebind 行為</code>
<code>stop-dns-rebind</code>
<code>rebind-localhost-ok</code>
<code>#rebind-domain-ok=[<domain>]|[[/<domain>/[<domain>/]</code>
<code>rebind-domain-ok=/.</code><code>test</code><code>.com/</code>
<code># 也不要檢測 /etc/resolv.conf 的變化</code>
<code>#no-poll</code>
<code># 重新開機後清空緩存</code>
<code>clear</code><code>-on-reload</code>
<code># 完整的域名才向上遊伺服器查找,如果僅僅是主機名僅查找hosts檔案</code>
<code>domain-needed</code>
<code># IP位址轉換</code>
<code>#alias=[<old-ip>]|[<start-ip>-<end-ip>],<new-ip>[,<mask>]</code>
<code>#local=[/[<domain>]/[domain/]][<ipaddr>[#<port>][@<source-ip>|<interface>[#<port>]]</code>
<code>#server=[/[<domain>]/[domain/]][<ipaddr>[#<port>][@<source-ip>|<interface>[#<port>]]</code>
<code>server=</code><code>/test</code><code>.com</code><code>/192</code><code>.168.10.117</code>
<code>server=</code><code>/10</code><code>.168.192.</code><code>in</code><code>-addr.arpa</code><code>/192</code><code>.168.10.117</code>
<code>#rev-server=<ip-address>/<prefix-len>,<ipaddr>[#<port>][@<source-ip>|<interface>[#<port>]]</code>
<code># 将任何屬于 <domain> 域名解析成指定的 <ipaddr> 位址。</code>
<code># 也就是将 <domain> 及其所有子域名解析成指定的 <ipaddr> IPv4 或者 IPv6 位址,通常用于屏蔽特定的域名。</code>
<code># 一次隻能指定一個 IPv4 或者 IPv6 位址,要同時傳回 IPv4 和IPv6 位址,請多次指定 address= 選項。</code>
<code># 注意: /etc/hosts 以及 DHCP 租約将覆寫此項設定。</code>
<code>#address=/<domain>/[domain/][<ipaddr>]</code>
<code>#ipset=/<domain>/[domain/]<ipset>[,<ipset>]</code>
<code>#mx-host=<mx name>[[,<hostname>],<preference>]</code>
<code>#mx-target=<hostname></code>
<code># SRV 記錄</code>
<code>#srv-host=<_service>.<_prot>.[<domain>],[<target>[,<port>[,<priority>[,<weight>]]]]</code>
<code># A, AAAA 和 PTR 記錄 </code>
<code>#host-record=<name>[,<name>....],[<IPv4-address>],[<IPv6-address>][,<TTL>]</code>
<code># TXT 記錄</code>
<code>#txt-record=<name>[[,<text>],<text>]</code>
<code># PTR 記錄 </code>
<code>#ptr-record=<name>[,<target>]</code>
<code>#naptr-record=<name>,<order>,<preference>,<flags>,<service>,<regexp>[,<replacement>]</code>
<code># CNAME 别名記錄</code>
<code>#cname=<cname>,<target>[,<TTL>]</code>
<code>#dns-rr=<name>,<RR-number>,[<hex data>]</code>
<code>#interface-name=<name>,<interface>[/4|/6]</code>
<code>#synth-domain=<domain>,<address range>[,<prefix>]</code>
<code>#add-mac[=base64|text]</code>
<code>#add-cpe-id=<string></code>
<code>#add-subnet[[=[<IPv4 address>/]<IPv4 prefix length>][,[<IPv6 address>/]<IPv6 prefix length>]]</code>
<code># 緩存條數,預設為150條,cache-size=0 禁用緩存。</code>
<code>cache-size=1000</code>
<code># 不緩存未知域名緩存,預設情況下dnsmasq緩存未知域名并直接傳回為用戶端。</code>
<code>no-negcache</code>
<code># 指定DNS同屬查詢轉發數量</code>
<code>dns-forward-max=1000</code>
<code>#dnssec</code>
<code>#trust-anchor=[<class>],<domain>,<key-tag>,<algorithm>,<digest-type>,<digest></code>
<code>#dnssec-check-unsigned</code>
<code>#dnssec-no-timecheck</code>
<code>#dnssec-timestamp=<path></code>
<code>#proxy-dnssec</code>
<code>#dnssec-debug</code>
<code>#auth-server=<domain>,<interface>|<ip-address></code>
<code>#auth-zone=<domain>[,<subnet>[/<prefix length>][,<subnet>[/<prefix length>].....]]</code>
<code>#auth-zone=<domain>[,<interface name>[/6|/4][,<interface name>[/6|/4].....]]</code>
<code>#auth-soa=<serial>[,<hostmaster>[,<refresh>[,<retry>[,<expiry>]]]]</code>
<code>#auth-sec-servers=<domain>[,<domain>[,<domain>...]]</code>
<code>#auth-peer=<ip-address>[,<ip-address>[,<ip-address>...]]</code>
<code># 啟用連接配接跟蹤,讀取 Linux 入棧 DNS 查詢請求的連接配接跟蹤标記,</code>
<code># 并且将上遊傳回的響應資訊設定同樣的标記。</code>
<code># 用于帶寬控制和防火牆部署。</code>
<code># 此選項必須在編譯時啟用 conntrack 支援,并且核心正确配置并加載 conntrack。</code>
<code># 此選項不能與 query-port 同時使用。</code>
<code>#conntrack</code>
<code># DHCP 選項</code>
<code># 設定 DHCP 位址池,同時啟用 DHCP 功能。</code>
<code># IPv4 <mode> 可指定為 static|proxy ,當 <mode> 指定為 static 時,</code>
<code># 需用 dhcp-host 手動配置設定位址池中的 IP 位址。</code>
<code># 當 <mode> 指定為 proxy 時,為指定的位址池提供 DHCP 代理。</code>
<code>#dhcp-range=[tag:<tag>[,tag:<tag>],][set:<tag>,]<start-addr>[,<end-addr>][,<mode>][,<netmask>[,<broadcast>]][,<lease time>]</code>
<code>#dhcp-range=172.16.0.2,172.16.0.250,255.255.255.0,1h</code>
<code>#dhcp-range=192.168.10.150,192.168.10.180,static,255.255.255.0,1h</code>
<code># 根據 MAC 位址或 id 固定配置設定用戶端的 IP 位址、主機名、租期。</code>
<code># IPv4 下指定 id:* 将忽略 DHCP 用戶端的 ID ,僅根據 MAC 來進行 IP 位址配置設定。</code>
<code># 在讀取 /etc/hosts 的情況,也可以根據 /etc/hosts 中的主機名配置設定對應 IP 位址。</code>
<code># 指定 ignore 将忽略指定用戶端得 DHCP 請求。</code>
<code>#dhcp-host=[<hwaddr>][,id:<client_id>|*][,set:<tag>][,<ipaddr>][,<hostname>][,<lease_time>][,ignore]</code>
<code>#dhcp-hostsfile=<path></code>
<code>#dhcp-hostsdir=<path></code>
<code># 讀取 /etc/ethers 檔案 與使用 dhcp-host 的作用相同。IPv6 無效。</code>
<code>#read-ethers</code>
<code># 指定給 DHCP 用戶端的選項資訊,</code>
<code># 預設情況下 dnsmasq 将發送:子網路遮罩、廣播位址、DNS 伺服器位址、網關位址、域等資訊。</code>
<code># 指定此選項也可覆寫這些預設值并且設定其他選項值。</code>
<code># 重要:可以使用 option:<option-name>或者 option号 來指定。</code>
<code># <option-name> 和 option号的對應關系可使用指令:</code>
<code># dnsmasq --help dhcp 以及 dnsmasq --help dhcp6 檢視,這點很重要。</code>
<code># 例如設定網關參數,既可以使用 dhcp-option=3,192.168.4.4 也可以使用 dhcp-option = option:router,192.168.4.4。</code>
<code># 0.0.0.0 意味着目前運作 dnsmasq 的主機位址。</code>
<code># 如果指定了多個 tag:<tag> 必須同時比對才行。</code>
<code># [encap:<opt>,][vi-encap:<enterprise>,][vendor:[<vendor-class>],] 有待繼續研究。</code>
<code>#dhcp-option=[tag:<tag>,[tag:<tag>,]][encap:<opt>,][vi-encap:<enterprise>,][vendor:[<vendor-class>],][<opt>|option:<opt-name>|option6:<opt>|option6:<opt-name>],[<value>[,<value>]]</code>
<code>#dhcp-option-force=[tag:<tag>,[tag:<tag>,]][encap:<opt>,][vi-encap:<enterprise>,][vendor:[<vendor-class>],]<opt>,[<value>[,<value>]]</code>
<code>#dhcp-optsfile=<path></code>
<code>#dhcp-optsdir=<path></code>
<code>#dhcp-option=3,1.2.3.4</code>
<code>#dhcp-option=option:router,1.2.3.4</code>
<code>#dhcp-option=option:router,192.168.10.254</code>
<code>#dhcp-option=option:dns-server,192.168.10.254,221.12.1.227,221.12.33.227</code>
<code># (IPv4 only) 禁用重用伺服器名稱和檔案字段作為額外的 dhcp-option 選項。</code>
<code># 一般情況下 dnsmasq 從 dhcp-boot 移出啟動伺服器和檔案資訊到 dhcp-option 選項中。</code>
<code># 這使得在 dhcp-option 選項封包中有額外的選項空間可用,但是會使老的用戶端混淆。</code>
<code># 此選項将強制使用簡單并安全的方式來避免此類情況。可以認為是一個相容性選項。</code>
<code>#dhcp-no-override</code>
<code># 配置 DHCP 中繼。</code>
<code># <local address> 是運作 dnsmasq 的接口的 IP 位址。</code>
<code># 所有在 <local address> 接口上接收到的 DHCP 請求将中繼到 <server address> 指定的遠端 DHCP 伺服器。</code>
<code># 可以多次配置此選項,使用同一個 <local address> 轉發到多個不同的 <server address> 指定的遠端 DHCP 伺服器。</code>
<code># <server address> 僅允許使用 IP 位址,不能使用域名等其他格式。</code>
<code># 如果是 DHCPv6,<server address> 可以是 ALL_SERVERS 的多點傳播位址 ff05::1:3 。</code>
<code># 在這種情況下必須指定接口 <interface> ,不能使用通配符,用于直接多點傳播到對應的 DHCP 伺服器所在的接口。</code>
<code># <interface> 指定了僅允許接收從 <interface> 接口的 DHCP 伺服器相應資訊。</code>
<code>#dhcp-relay=<local address>,<server address>[,<interface>]</code>
<code># 設定标簽</code>
<code>#dhcp-vendorclass=set:<tag>,[enterprise:<IANA-enterprise number>,]<vendor-class></code>
<code>#dhcp-userclass=set:<tag>,<user-class></code>
<code>#dhcp-mac=set:<tag>,<MAC address></code>
<code>#dhcp-circuitid=set:<tag>,<circuit-id></code>
<code>#dhcp-remoteid=set:<tag>,<remote-id></code>
<code>#dhcp-subscrid=set:<tag>,<subscriber-id></code>
<code>#dhcp-match=set:<tag>,<option number>|option:<option name>|vi-encap:<enterprise>[,<value>]</code>
<code>#tag-if=set:<tag>[,set:<tag>[,tag:<tag>[,tag:<tag>]]]</code>
<code>#dhcp-proxy[=<ip addr>]......</code>
<code># 不配置設定比對這些 tag:<tag> 的 DHCP 請求。</code>
<code>#dhcp-ignore=tag:<tag>[,tag:<tag>]</code>
<code>#dhcp-ignore-names[=tag:<tag>[,tag:<tag>]]</code>
<code>#dhcp-generate-names=tag:<tag>[,tag:<tag>]</code>
<code># IPv4 only 使用廣播與比對 tag:<tag> 的用戶端通信。一般用于相容老的 BOOT 用戶端。</code>
<code>#dhcp-broadcast[=tag:<tag>[,tag:<tag>]] </code>
<code># IPv4 only 設定 DHCP 伺服器傳回的 BOOTP 選項,</code>
<code># <servername> <server address> 可選,</code>
<code># 如果未設定伺服器名稱将設為空,伺服器位址設為 dnsmasq 的 IP 位址。</code>
<code># 如果指定 <tftp_servername> 将按照 /etc/hosts 中對應的 IP 位址進行輪詢負載均衡。 </code>
<code>#dhcp-boot=[tag:<tag>,]<filename>,[<servername>[,<server address>|<tftp_servername>]]</code>
<code># 根據不同的類型使用不同的選項。</code>
<code># 使用示例:</code>
<code># dhcp-match=set:EFI_x86-64,option:client-arch,9</code>
<code># dhcp-boot=tag:EFI_x86-64,uefi/grubx64.efi</code>
<code># #dhcp-match=set:EFI_Xscale,option:client-arch,8</code>
<code># #dhcp-boot=tag:EFI_Xscale,uefi/grubx64.efi</code>
<code># #dhcp-match=set:EFI_BC,option:client-arch,7</code>
<code># #dhcp-boot=tag:EFI_BC,uefi/grubx64.efi</code>
<code># #dhcp-match=set:EFI_IA32,option:client-arch,6</code>
<code># #dhcp-boot=tag:EFI_IA32,uefi/grubx64.efi</code>
<code># #dhcp-match=set:Intel_Lean_Client,option:client-arch,5</code>
<code># #dhcp-boot=tag:Intel_Lean_Client,uefi/grubx64.efi</code>
<code># #dhcp-match=set:Arc_x86,option:client-arch,4</code>
<code># #dhcp-boot=tag:Arc_x86,uefi/grubx64.efi</code>
<code># #dhcp-match=set:DEC_Alpha,option:client-arch,3</code>
<code># #dhcp-boot=tag:DEC_Alpha,uefi/grubx64.efi</code>
<code># #dhcp-match=set:EFI_Itanium,option:client-arch,2</code>
<code># #dhcp-boot=tag:EFI_Itanium,uefi/grubx64.efi</code>
<code># #dhcp-match=set:NEC/PC98,option:client-arch,1</code>
<code># #dhcp-boot=tag:NEC/PC98,uefi/grubx64.efi</code>
<code># dhcp-match=set:Intel_x86PC,option:client-arch,0</code>
<code># dhcp-boot=tag:Intel_x86PC,pxelinux.0</code>
<code># DHCP 使用用戶端的 MAC 位址的哈希值為用戶端配置設定 IP 位址,</code>
<code># 通常情況下即使用戶端使自己的租約到期,用戶端的 IP 位址仍将長期保持穩定。</code>
<code># 在預設模式下,IP 位址是随機配置設定的。</code>
<code># 啟用 dhcp-sequential-ip 選項将按順序配置設定 IP 位址。</code>
<code># 在順序配置設定模式下,用戶端使租約到期更像是僅僅移動一下 IP 位址。</code>
<code># 在通常情況下不建議使用這種方式。</code>
<code>#dhcp-sequential-ip</code>
<code># 多數情況下我們使用 PXE,隻是簡單的允許 PXE 用戶端擷取 IP 位址,</code>
<code># 然後 PXE 用戶端下載下傳 dhcp-boot 選項指定的檔案并執行,也就是 BOOTP 的方式。</code>
<code># 然而在有适當配置的 DHCP 伺服器支援的情況下,PXE 系統能夠實作更複雜的功能。</code>
<code># pxe-service 選項可指定 PXE 環境的啟動菜單。</code>
<code># 為不同的類型系統設定不同的啟動菜單,并且覆寫 dhcp-boot 選項。</code>
<code># <CSA> 為用戶端系統類型:x86PC, PC98, IA64_EFI, Alpha, Arc_x86, Intel_Lean_Client, </code>
<code># IA32_EFI, X86-64_EFI, Xscale_EFI, BC_EFI, ARM32_EFI 和 ARM64_EFI,其他類型可能為一個整數。</code>
<code># <basename> 引導 PXE 用戶端使用 tftp 從 <server address> 或者 <server_name> 下載下傳檔案。</code>
<code># 注意:"layer" 字尾 (通常是 ".0") 由 PXE 提供,也就是 PXE 用戶端預設在檔案名附加 .0 字尾。</code>
<code># 示例:pxe-service=x86PC, "Install Linux", pxelinux (讀取 pxelinux.0 檔案并執行)</code>
<code># pxe-service=x86PC, "Install Linux", pxelinux, 1.2.3.4(不适用于老的PXE)</code>
<code># <bootservicetype> 整數,PXE 用戶端将通過廣播或者通過 <server address> </code>
<code># 或者 <server_name> 搜尋對應類型的适合的啟動服務。。</code>
<code># 示例:pxe-service=x86PC, "Install windows from RIS server", 1</code>
<code># pxe-service=x86PC, "Install windows from RIS server", 1, 1.2.3.4</code>
<code># 未指定 <basename>、<bootservicetype> 或者 <bootservicetype> 為 “0”,将從本地啟動。</code>
<code># 示例:pxe-service=x86PC, "Boot from local disk"</code>
<code># pxe-service=x86PC, "Boot from local disk", 0</code>
<code># 如果指定 <server_name> 将按照 /etc/hosts 中對應的 IP 位址進行輪詢負載均衡。 </code>
<code>#pxe-service=[tag:<tag>,]<CSA>,<menu text>[,<basename>|<bootservicetype>][,<server address>|<server_name>]</code>
<code># 在 PXE 啟動後彈出提示,<prompt> 為提示内容,<timeout> 為逾時時間,為 0 則立即執行。</code>
<code># 如果未指定此選項,在有多個啟動選項的情況下等待使用者選擇,不會逾時。</code>
<code>#pxe-prompt=[tag:<tag>,]<prompt>[,<timeout>]</code>
<code># 根據不同的類型使用不同的菜單,使用示例:</code>
<code># #pxe-prompt="What system shall I netboot?", 120</code>
<code># # or with timeout before first available action is taken:</code>
<code># pxe-prompt="Press F8 or Enter key for menu.", 60</code>
<code># pxe-service=x86PC, "Now in x86PC (BIOS mode), boot from local", 0</code>
<code># pxe-service=x86PC, "Now in x86PC (BIOS mode)", pxelinux</code>
<code># pxe-service=PC98, "Now in PC98 mode", PC98</code>
<code># pxe-service=IA64_EFI, "Now in IA64_EFI mode", IA64_EFI</code>
<code># pxe-service=Alpha, "Now in Alpha mode", Alpha</code>
<code># pxe-service=Arc_x86, "Now in Arc_x86 mode", Arc_x86</code>
<code># pxe-service=Intel_Lean_Client, "Now in Intel_Lean_Client mode", Intel_Lean_Client</code>
<code># pxe-service=IA32_EFI, "Now in IA32_EFI mode", IA32_EFI</code>
<code># pxe-service=X86-64_EFI, "Now in X86-64_EFI (UEFI mode), boot from local", 0</code>
<code># pxe-service=X86-64_EFI, "Now in X86-64_EFI (UEFI mode)", grub/grub-x86_64.efi</code>
<code># pxe-service=Xscale_EFI, "Now in Xscale_EFI mode", Xscale_EFI</code>
<code># pxe-service=BC_EFI, "Now in BC_EFI mode", BC_EFI</code>
<code># # CentOS7 系統不支援下列兩個選項</code>
<code># #pxe-service=ARM32_EFI,"Now in ARM32_EFI mode",ARM32_EFI</code>
<code># #pxe-service=ARM64_EFI,"Now in ARM64_EFI mode",ARM64_EFI</code>
<code># 預設為150,即最多配置設定150個ip位址出去,最大1000個ip</code>
<code>#dhcp-lease-max=150</code>
<code># (IPv4 only) 指定DHCP端口,預設為67和68。如果不指定則為1067和1068,單指定一個,第二個加1</code>
<code>#dhcp-alternate-port[=<server port>[,<client port>]]</code>
<code># 謹慎使用此選項,避免 IP 位址浪費。(IPv4 only) 允許動态配置設定 IP 位址給 BOOTP 用戶端。</code>
<code># 注意:BOOTP 用戶端擷取的 IP 位址是永久的,将無法再次配置設定給其他用戶端。</code>
<code>#bootp-dynamic[=<network-id>[,<network-id>]]</code>
<code># 謹慎使用此選項。</code>
<code># 預設情況下 DHCP 伺服器使用 ping 的方式進行確定 IP 未被使用的情況下将 IP 位址配置設定出去。</code>
<code># 啟用此選項将不使用 ping 進行确認。</code>
<code>#no-ping</code>
<code># 記錄額外的 dhcp 日志,記錄所有發送給 DHCP 用戶端的選項(option)以及标簽(tag)資訊</code>
<code>#log-dhcp</code>
<code># 禁止記錄日常記錄檔,錯誤日志仍然記錄。啟用 log-dhcp 将覆寫下列選項。</code>
<code>#quiet-dhcp</code>
<code>#quiet-dhcp6</code>
<code>#quiet-ra</code>
<code># 修改 DHCP 預設租約檔案路徑,預設情況下無需修改</code>
<code>#dhcp-leasefile=/var/lib/dnsmasq/dnsmasq.leases</code>
<code># (IPv6 only)</code>
<code>#dhcp-duid=<enterprise-id>,<uid></code>
<code>#dhcp-script=<path></code>
<code>#dhcp-luascript=<path></code>
<code>#dhcp-scriptuser=root</code>
<code>#script-arp</code>
<code>#leasefile-ro</code>
<code>#bridge-interface=<interface>,<alias>[,<alias>]</code>
<code># 給 DHCP 伺服器指定 domain 域名資訊,也可以給對應的 IP 位址池指定域名。</code>
<code># 直接指定域名</code>
<code># 示例:domain=thekelleys.org.uk</code>
<code># 子網對應的域名</code>
<code># 示例:domain=wireless.thekelleys.org.uk,192.168.2.0/24</code>
<code># ip範圍對應的域名</code>
<code># 示例:domain=reserved.thekelleys.org.uk,192.68.3.100,192.168.3.200</code>
<code>#domain=<domain>[,<address range>[,local]]</code>
<code># 在預設情況下 dnsmasq 插入普通的用戶端主機名到 DNS 中。</code>
<code># 在這種情況下主機名必須唯一,即使兩個用戶端具有不同的域名字尾。</code>
<code># 如果第二個用戶端使用了相同的主機名,DNS 查詢将自動更新為第二個用戶端的 IP 位址。</code>
<code># 如果設定了 dhcp-fqdn 選項,普通的主機名将不再插入到 DNS 中去,</code>
<code># 僅允許合格的具有域名字尾的主機名插入到 DNS 伺服器中。</code>
<code># 指定此選項需同時指定不含 <address range> 位址範圍的 domain 選項。</code>
<code>#dhcp-fqdn</code>
<code># 通常情況下配置設定 DHCP 租約後,dnsmasq 設定 FQDN 選項告訴用戶端不要嘗試 DDNS 更新主機名與 IP 位址。</code>
<code># 這是因為 name-IP 已自動添加到 dnsmasq 的 DNS 視圖中的。</code>
<code># 設定此選項将允許用戶端 DDNS 更新,</code>
<code># 在 windows 下允許用戶端更新 windows AD 伺服器是非常有用的。</code>
<code># 參看 RFC 4702 。</code>
<code>#dhcp-client-update</code>
<code>#enable-ra</code>
<code>#ra-param=<interface>,[high|low],[[<ra-interval>],<router lifetime>]</code>
<code># TFTP 選項</code>
<code># 對于絕大多數的配置,僅需指定 enable-tftp 和 tftp-root 選項即可。</code>
<code># 是否啟用内置的 tftp 伺服器,可以指定多個逗号分隔的網絡接口</code>
<code>#enable-tftp[=<interface>[,<interface>]]</code>
<code>#enable-tftp</code>
<code>#enable-tftp=enp3s0,lo</code>
<code># 指定 tftp 的根目錄,也就是尋找傳輸檔案時使用的相對路徑,可以附加接口,</code>
<code>#tftp-root=<directory>[,<interface>]</code>
<code>#tftp-root=/var/lib/tftpboot/</code>
<code># 如果取消注釋,那麼即使指定的 tftp-root 無法通路,仍然啟動 tftp 服務。</code>
<code>#tftp-no-fail</code>
<code># 附加用戶端的 IP 位址作為檔案路徑。此選項僅在正确設定了 tftp-root 的情況下可用,</code>
<code># 示例:如果 tftp-root=/tftp,用戶端為 192.168.1.15 請求 myfile.txt 檔案時,</code>
<code># 将優先請求 /tftp/192.168.1.15/myfile.txt 檔案, 其次是 /tftp/myfile.txt 檔案。</code>
<code># 感覺沒什麼用。</code>
<code>#tftp-unique-root</code>
<code># 啟用安全模式,啟用此選項,僅允許 tftp 程序通路屬主為自己的檔案。</code>
<code># 不啟用此選項,允許通路所有 tftp 程序屬主可讀取的檔案。</code>
<code># 如果 dnsmasq 是以 root 使用者運作,tftp-secure 選項将允許通路全局可讀的檔案。</code>
<code># 一般情況下不推薦以 root 使用者運作 dnsmasq。</code>
<code># 在指定了 tftp-root 的情況下并不是很重要。</code>
<code>#tftp-secure</code>
<code># 将所有檔案請求轉換為小寫。對于 Windows 用戶端來說非常有用,建議開啟此項。</code>
<code># 注意:dnsmasq 的 TFTP 伺服器總是将檔案路徑中的“\”轉換為“/”。</code>
<code>#tftp-lowercase</code>
<code># 允許最大的連接配接數,預設為 50 。</code>
<code># 如果将連接配接數設定的很大,需注意每個程序的最大檔案描述符限制,詳見文檔手冊。</code>
<code>#tftp-max=<connections></code>
<code>#tftp-max=50</code>
<code># 設定傳輸時的 MTU 值,建議不設定或按需設定。</code>
<code># 如果設定的值大于網絡接口的 MTU 值,将按照網絡接口的 MTU 值自動分片傳輸(不推薦)。</code>
<code>#tftp-mtu=<mtu size></code>
<code># 停止 tftp 伺服器與用戶端協商 "blocksize" 選項。啟用後,防止一些古怪的用戶端出問題。</code>
<code>#tftp-no-blocksize</code>
<code># 指定 tftp 的連接配接端口的範圍,友善防火牆部署。</code>
<code># tftp 偵聽在 69/udp ,連接配接端口預設是由系統自動配置設定的,</code>
<code># 非 root 使用者運作時指定的連接配接端口号需大于 1025 最大 65535。</code>
<code>#tftp-port-range=<start>,<end></code>
<code>###############################################################################</code>
<code>#conf-dir=<directory>[,<file-extension>......]</code>
<code>#conf-file=/etc/dnsmasq.more.conf</code>
<code>conf-</code><code>dir</code><code>=</code><code>/etc/dnsmasq</code><code>.d</code>
<code>#servers-file=<file></code>
<code></code>
本文轉自 曾哥最愛 51CTO部落格,原文連結:http://blog.51cto.com/zengestudy/1916725,如需轉載請自行聯系原作者