欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

搭建dnsmasq自運(yùn)營(yíng)dns服務(wù)器的實(shí)現(xiàn)步驟

 更新時(shí)間:2024年01月18日 09:52:37   作者:瘋飆的蝸牛  
DNSmasq是一個(gè)輕巧的,容易使用的DNS服務(wù)工具,本文主要介紹了搭建dnsmasq自運(yùn)營(yíng)dns服務(wù)器的實(shí)現(xiàn)步驟,具有一定的參考價(jià)值,感興趣的可以了解一下

一、dnsmasq簡(jiǎn)介

1、簡(jiǎn)介

DNSmasq是一個(gè)小巧且方便地用于配置DNS和DHCP的工具,適用于小型網(wǎng)絡(luò),最多可支持1000臺(tái)主機(jī),它提供了DNS功能和可選擇的DHCP功能。它服務(wù)那些只在本地適用的域名,這些域名是不會(huì)在全球的DNS服務(wù)器中出現(xiàn)的。DHCP服務(wù)器和DNS服務(wù)器結(jié)合,并且允許DHCP分配的地址能在DNS中正常解析,而這些DHCP分配的地址和相關(guān)命令可以配置到每臺(tái)主機(jī)中,也可以配置到一臺(tái)核心設(shè)備中(比如路由器),DNSmasq支持靜態(tài)和動(dòng)態(tài)兩種DHCP配置方式。

2、特點(diǎn)

開源項(xiàng)目,支持平臺(tái)多,配置簡(jiǎn)單,不依賴ISP的DNS服務(wù)器。

DNS和DHCP兩個(gè)功能可以同時(shí)使用 也可分別單獨(dú)實(shí)現(xiàn)。

自帶一個(gè)PXE服務(wù)器 以及對(duì)郵件服務(wù)器MX、jabber的srv 記錄的支持。

3、 解析流程

先去解析hosts文件(可在配置文件中配置no-hosts選擇是否加載/etc/hosts作為dnsmasq的dns本地緩存)

再去解析dnsmasq.d下*.conf文件(可在配置文件中配置addn-hosts=指定路徑)

最后可定義dnsmasq.conf中上游dns解析(可在配置文件中配置resolv-file指定該文件路徑,并在其中指定ISP服務(wù)商的dns服務(wù)器)

 二、dnsmasq安裝、配置說(shuō)明

1、環(huán)境配置

#文件連接數(shù)配置
echo '
ulimit -u 102400
ulimit -d unlimited
ulimit -m unlimited
ulimit -s unlimited
ulimit -t unlimited
ulimit -v unlimited' >> /etc/profile

#內(nèi)核參數(shù)配置
echo '
net.ipv4.conf.all.arp_notify = 1
net.ipv4.ip_forward = 0
net.ipv4.conf.default.rp_filter = 1
net.ipv4.conf.default.accept_source_route = 0
net.ipv4.ip_local_reserved_ports = 41490,41488
kernel.sysrq = 0
kernel.core_uses_pid = 1
net.ipv4.tcp_syncookies = 1
kernel.msgmnb = 65536
kernel.msgmax = 65536
kernel.shmmax = 68719476736
kernel.shmall = 4294967296
net.ipv4.tcp_max_tw_buckets = 40000
net.ipv4.tcp_sack = 1
net.ipv4.tcp_window_scaling = 1
net.core.wmem_default = 8388608
net.core.rmem_default = 8388608
net.core.rmem_max = 16777216
net.core.wmem_max = 16777216
net.core.netdev_max_backlog = 262144
net.core.optmem_max = 81920
net.core.somaxconn = 65535
net.ipv4.tcp_max_orphans = 3276800
net.ipv4.tcp_max_syn_backlog = 262144
net.ipv4.tcp_timestamps = 0
net.ipv4.tcp_synack_retries = 1
net.ipv4.tcp_syn_retries = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_mem = 94500000 915000000 927000000
net.ipv4.tcp_rmem = 4096 87380 8388608
net.ipv4.tcp_wmem = 4096 87380 8388608
net.ipv4.tcp_keepalive_time = 1200
net.ipv4.tcp_keepalive_intvl = 60
net.ipv4.tcp_keepalive_probes = 3
net.ipv4.tcp_fin_timeout = 30
vm.swappiness = 0
vm.max_map_count=655360
net.ipv4.ip_local_port_range = 1024    65535 ' >> /etc/sysctl.conf

sysctl -p

2、軟件安裝

[root@dnsmasq ~]# yum -y install -y dnsmasq
[root@dnsmasq ~]# dnsmasq -v
Dnsmasq version 2.76  Copyright (c) 2000-2016 Simon Kelley

[root@dnsmasq ~]# cp /etc/dnsmasq.conf /etc/dnsmasq.conf.bak
[root@dnsmasq ~]# ll /etc/dnsmasq.d/
total 0

3、 運(yùn)行環(huán)境配置文件

[root@dnsmasq ~]# cat /etc/dnsmasq.conf
no-hosts
addn-hosts=/data/server/dnsmasq/conf/dns_add_hosts
resolv-file=/data/server/dnsmasq/conf/dnsmasq.resolv.conf 
no-dhcp-interface=eth0
#except-interface=eth0
#緩存的數(shù)量
cache-size=10240
#如果查詢的域名沒(méi)ttl,則使用此設(shè)置為緩存ttl時(shí)間
neg-ttl=600
#指定允許返回給客戶端最大ttl時(shí)間
max-ttl=600
#dnsmasq服務(wù)器緩存最大時(shí)間設(shè)定
max-cache-ttl=3600
#dnsmasq服務(wù)器緩存最小時(shí)間設(shè)定
min-cache-ttl=3600
log-facility=syslog

[root@dnsmasq ~]# cat /data/server/dnsmasq/conf/dnsmasq.resolv.conf
nameserver 180.76.76.76  #百度公共DNS
nameserver 223.6.6.6     #阿里云公共DNS
nameserver 8.8.8.8       #Google公共DNS

[root@dnsmasq ~]# cat /data/server/dnsmasq/conf/dns_add_hosts
192.168.1.2    op.test.cn
#ip地址    #域名

[root@dnsmasq ~]# systemctl start dnsmasq          #啟動(dòng)dnsmasq服務(wù)
[root@dnsmasq ~]# systemctl enable dnsmasq         #設(shè)置成開機(jī)自啟動(dòng)
[root@dnsmasq ~]# netstat -antp|grep 53    

[root@dnsmasq ~]# killall -s SIGHUP dnsmasq        #修改完后,kill信號(hào),免重啟

4、配置文件詳細(xì)介紹

# 不加載本地的 /etc/hosts 文件
#no-hosts

# 添加讀取額外的 hosts 文件路徑,可以多次指定。如果指定為目錄,則讀取目錄中的所有文件。
#addn-hosts=/etc/dnsmasq.hosts.d

# 讀取目錄中的所有文件,文件更新將自動(dòng)讀取
#hostsdir=/etc/dnsmasq.hosts.d

# 例如,/etc/hosts中的os01將擴(kuò)展成os01.example.com
#expand-hosts

##############################################################################

# 緩存時(shí)間設(shè)置,一般不需要設(shè)置
# 本地 hosts 文件的緩存時(shí)間,通常不要求緩存本地,這樣更改hosts文件后就即時(shí)生效。
#local-ttl=3600

# 同 local-ttl 僅影響 DHCP 租約
#dhcp-ttl=<time>

# 對(duì)于上游返回的值沒(méi)有ttl時(shí),dnsmasq給一個(gè)默認(rèn)的ttl,一般不需要設(shè)置,
#neg-ttl=<time>

# 指定返回給客戶端的ttl時(shí)間,一般不需要設(shè)置
#max-ttl=<time>

# 設(shè)置在緩存中的條目的最大 TTL。
#max-cache-ttl=<time>

# 不需要設(shè)置,除非你知道你在做什么。
#min-cache-ttl=<time>

# 一般不需要設(shè)置
#auth-ttl=<time>


##############################################################################

# 記錄dns查詢?nèi)罩荆绻付?log-queries=extra 那么在每行開始處都有額外的日志信息。
#log-queries

# 設(shè)置日志記錄器,'-' 為 stderr,也可以是文件路徑。默認(rèn)為:DAEMON,調(diào)試時(shí)使用 LOCAL0。
#log-facility=<facility>
#log-facility=/var/log/dnsmasq/dnsmasq.log

# 異步log,緩解阻塞,提高性能。默認(rèn)為5,最大100。
#log-async[=<lines>]
#log-async=50


##############################################################################

# 指定用戶和組
#user=nobody
#group=nobody


##############################################################################

# 指定DNS的端口,默認(rèn)53,設(shè)置 port=0 將完全禁用 DNS 功能,僅使用 DHCP/TFTP
#port=53

# 指定 EDNS.0 UDP 包的最大尺寸,默認(rèn)為 RFC5625 推薦的 edns-packet-max=4096
#edns-packet-max=<size>

# 指定向上游查詢的 UDP 端口,默認(rèn)是隨機(jī)端口,指定后降低安全性、加快速度、減少資源消耗。
# 設(shè)置為 '0' 由操作系統(tǒng)分配。
#query-port=53535

# 指定向上游查詢的 UDP 端口范圍,方便防火墻設(shè)置。
#min-port=<port>
#max-port=<port>

# 指定接口,指定后同時(shí)附加 lo 接口,可以使用'*'通配符。
# 不能使用接口別名(例如:"eth1:0"),請(qǐng)用 listen-address 選項(xiàng)替代。
#interface=wlp2s0

# 指定排除的接口,排除優(yōu)先級(jí)高,可以使用'*'通配符
#except-interface=

# 僅接受同一子網(wǎng)的 DNS 請(qǐng)求。
# 僅在未指定 interface、except-interface、listen-address 或者 auth-server 時(shí)有效。
#local-service

# 指定不提供 DHCP 或 TFTP 服務(wù)的接口,僅提供 DNS 服務(wù)。
#no-dhcp-interface=enp3s0

# 指定IP地址,可以多次指定。
# interface 選項(xiàng)和 listen-address 選項(xiàng)可以同時(shí)使用。

# 下面兩行與指定 interface 選項(xiàng)的作用類似。
listen-address=192.168.10.17
#listen-address=127.0.0.1

# 通常情況下即使設(shè)置了 interface 選項(xiàng)(例如:interface=wlp2s0 )
# 將仍然綁定到通配符地址(例如:*:53 )。
# 開啟此項(xiàng)將僅監(jiān)聽指定的接口。
# 適用于在同一主機(jī)的不同接口或 IP 地址上運(yùn)行多個(gè) dns 服務(wù)器。
bind-interfaces

# 對(duì)于新添加的接口不進(jìn)行綁定。僅 Linux 系統(tǒng)支持,其他系統(tǒng)等同于 bind-interfaces 選項(xiàng)。
#bind-dynamic


##############################################################################

# 如果 hosts 中的主機(jī)有多個(gè) IP 地址,僅返回對(duì)應(yīng)子網(wǎng)的 IP 地址。
localise-queries

# 如果反向查找的是私有地址例如192.168.X.X,僅從 hosts 文件查找,不再轉(zhuǎn)發(fā)到上游服務(wù)器
#bogus-priv

# 對(duì)于任何被解析到此 IP 的域名,將響應(yīng) NXDOMAIN 使其解析失效,可以多次指定
# 通常用于對(duì)于訪問(wèn)不存在的域名,禁止其跳轉(zhuǎn)到運(yùn)營(yíng)商的廣告站點(diǎn)。
#bogus-nxdomain=64.94.110.11

# 忽略包含指定地址的 A 記錄查詢的回復(fù)。
# 例如上游有臺(tái) dns 服務(wù)器偽造 www.baidu.com 的 IP 為 1.1.1.1 并且響應(yīng)速度非???。
# 指定 ignore-address=1.1.1.1 可以忽略它的響應(yīng)信息,
# 從而等待 www.baidu.com 正確的查詢結(jié)果。
#ignore-address=<ipaddr>
filterwin2k


##############################################################################

# 指定 resolv-file 文件路徑,默認(rèn)/etc/resolv.conf
#resolv-file=/etc/resolv.conf

# 不讀取 resolv-file 來(lái)確定上游服務(wù)器
#no-resolv

# 在編譯時(shí)需要啟用 DBus 支持。
#enable-dbus[=<service-name>]

# 嚴(yán)格按照resolv.conf中的順序進(jìn)行查找
#strict-order

# 向所有上游服務(wù)器發(fā)送查詢,而不是一個(gè)。
all-servers

# 啟用轉(zhuǎn)發(fā)循環(huán)檢測(cè)
#dns-loop-detect


##############################################################################

# 這項(xiàng)安全設(shè)置是拒絕解析包含私有 IP 地址的域名,
# 這些IP地址包括如下私有地址范圍:10.0.0.0/8、172.16.0.0/12、192.168.0.0/16。
# 其初衷是要防止類似上游DNS服務(wù)器故意將某些域名解析成特定私有內(nèi)網(wǎng)IP而劫持用戶這樣的安全***。
# 直接在配置文件中注銷 stop-dns-rebind 配置項(xiàng)從而禁用該功能。
# 這個(gè)方法確實(shí)可以一勞永逸的解決解析內(nèi)網(wǎng) IP 地址的問(wèn)題,
# 但是我們也失去了這項(xiàng)安全保護(hù)的特性,所以在這里我不推薦這個(gè)辦法。
# 使用 rebind-domain-ok 進(jìn)行特定配置,顧名思義該配置項(xiàng)可以有選擇的忽略域名的 rebind 行為

stop-dns-rebind
rebind-localhost-ok
#rebind-domain-ok=[<domain>]|[[/<domain>/[<domain>/]
rebind-domain-ok=/.test.com/



##############################################################################

# 也不要檢測(cè) /etc/resolv.conf 的變化
#no-poll

# 重啟后清空緩存
clear-on-reload

# 完整的域名才向上游服務(wù)器查找,如果僅僅是主機(jī)名僅查找hosts文件
domain-needed


##############################################################################

# IP地址轉(zhuǎn)換
#alias=[<old-ip>]|[<start-ip>-<end-ip>],<new-ip>[,<mask>]

##############################################################################

#local=[/[<domain>]/[domain/]][<ipaddr>[#<port>][@<source-ip>|<interface>[#<port>]]

#server=[/[<domain>]/[domain/]][<ipaddr>[#<port>][@<source-ip>|<interface>[#<port>]]

server=/test.com/192.168.10.117

server=/10.168.192.in-addr.arpa/192.168.10.117

#rev-server=<ip-address>/<prefix-len>,<ipaddr>[#<port>][@<source-ip>|<interface>[#<port>]]



# 將任何屬于 <domain> 域名解析成指定的 <ipaddr> 地址。
# 也就是將 <domain> 及其所有子域名解析成指定的 <ipaddr> IPv4 或者 IPv6 地址,通常用于屏蔽特定的域名。
# 一次只能指定一個(gè) IPv4 或者 IPv6 地址,要同時(shí)返回 IPv4 和IPv6 地址,請(qǐng)多次指定 address= 選項(xiàng)。

# 注意: /etc/hosts 以及 DHCP 租約將覆蓋此項(xiàng)設(shè)置。
#address=/<domain>/[domain/][<ipaddr>]


#ipset=/<domain>/[domain/]<ipset>[,<ipset>]
#mx-host=<mx name>[[,<hostname>],<preference>]
#mx-target=<hostname>


# SRV 記錄
#srv-host=<_service>.<_prot>.[<domain>],[<target>[,<port>[,<priority>[,<weight>]]]]


# A, AAAA 和 PTR 記錄 
#host-record=<name>[,<name>....],[<IPv4-address>],[<IPv6-address>][,<TTL>]


# TXT 記錄
#txt-record=<name>[[,<text>],<text>]


# PTR 記錄 
#ptr-record=<name>[,<target>]


#naptr-record=<name>,<order>,<preference>,<flags>,<service>,<regexp>[,<replacement>]


# CNAME 別名記錄
#cname=<cname>,<target>[,<TTL>]


#dns-rr=<name>,<RR-number>,[<hex data>]
#interface-name=<name>,<interface>[/4|/6]

#synth-domain=<domain>,<address range>[,<prefix>]

#add-mac[=base64|text]

#add-cpe-id=<string>

#add-subnet[[=[<IPv4 address>/]<IPv4 prefix length>][,[<IPv6 address>/]<IPv6 prefix length>]]

##############################################################################



##############################################################################

# 緩存條數(shù),默認(rèn)為150條,cache-size=0 禁用緩存。
cache-size=1000

# 不緩存未知域名緩存,默認(rèn)情況下dnsmasq緩存未知域名并直接返回為客戶端。
no-negcache

# 指定DNS同屬查詢轉(zhuǎn)發(fā)數(shù)量
dns-forward-max=1000


##############################################################################

#dnssec

#trust-anchor=[<class>],<domain>,<key-tag>,<algorithm>,<digest-type>,<digest>

#dnssec-check-unsigned

#dnssec-no-timecheck

#dnssec-timestamp=<path>

#proxy-dnssec

#dnssec-debug



##############################################################################

#auth-server=<domain>,<interface>|<ip-address>

#auth-zone=<domain>[,<subnet>[/<prefix length>][,<subnet>[/<prefix length>].....]]

#auth-zone=<domain>[,<interface name>[/6|/4][,<interface name>[/6|/4].....]]

#auth-soa=<serial>[,<hostmaster>[,<refresh>[,<retry>[,<expiry>]]]]

#auth-sec-servers=<domain>[,<domain>[,<domain>...]]

#auth-peer=<ip-address>[,<ip-address>[,<ip-address>...]]



# 啟用連接跟蹤,讀取 Linux 入棧 DNS 查詢請(qǐng)求的連接跟蹤標(biāo)記,

# 并且將上游返回的響應(yīng)信息設(shè)置同樣的標(biāo)記。

# 用于帶寬控制和防火墻部署。

# 此選項(xiàng)必須在編譯時(shí)啟用 conntrack 支持,并且內(nèi)核正確配置并加載 conntrack。

# 此選項(xiàng)不能與 query-port 同時(shí)使用。

#conntrack



##############################################################################

#

#        DHCP 選項(xiàng)

#

##############################################################################

# 設(shè)置 DHCP 地址池,同時(shí)啟用 DHCP 功能。

# IPv4 <mode> 可指定為 static|proxy ,當(dāng) <mode> 指定為 static 時(shí),

# 需用 dhcp-host 手動(dòng)分配地址池中的 IP 地址。

# 當(dāng) <mode> 指定為 proxy 時(shí),為指定的地址池提供 DHCP 代理。

#dhcp-range=[tag:<tag>[,tag:<tag>],][set:<tag>,]<start-addr>[,<end-addr>][,<mode>][,<netmask>[,<broadcast>]][,<lease time>]

#dhcp-range=172.16.0.2,172.16.0.250,255.255.255.0,1h

#dhcp-range=192.168.10.150,192.168.10.180,static,255.255.255.0,1h



# 根據(jù) MAC 地址或 id 固定分配客戶端的 IP 地址、主機(jī)名、租期。

# IPv4 下指定 id:* 將忽略 DHCP 客戶端的 ID ,僅根據(jù) MAC 來(lái)進(jìn)行 IP 地址分配。

# 在讀取 /etc/hosts 的情況,也可以根據(jù) /etc/hosts 中的主機(jī)名分配對(duì)應(yīng) IP 地址。

# 指定 ignore 將忽略指定客戶端得 DHCP 請(qǐng)求。
#dhcp-host=[<hwaddr>][,id:<client_id>|*][,set:<tag>][,<ipaddr>][,<hostname>][,<lease_time>][,ignore]
#dhcp-hostsfile=<path>
#dhcp-hostsdir=<path>

# 讀取 /etc/ethers 文件 與使用 dhcp-host 的作用相同。IPv6 無(wú)效。
#read-ethers



# 指定給 DHCP 客戶端的選項(xiàng)信息,

# 默認(rèn)情況下 dnsmasq 將發(fā)送:子網(wǎng)掩碼、廣播地址、DNS 服務(wù)器地址、網(wǎng)關(guān)地址、域等信息。

# 指定此選項(xiàng)也可覆蓋這些默認(rèn)值并且設(shè)置其他選項(xiàng)值。

# 重要:可以使用 option:<option-name>或者 option號(hào) 來(lái)指定。

# <option-name> 和 option號(hào)的對(duì)應(yīng)關(guān)系可使用命令:

# dnsmasq --help dhcp 以及 dnsmasq --help dhcp6 查看,這點(diǎn)很重要。

# 例如設(shè)置網(wǎng)關(guān)參數(shù),既可以使用 dhcp-option=3,192.168.4.4 也可以使用 dhcp-option = option:router,192.168.4.4。

# 0.0.0.0 意味著當(dāng)前運(yùn)行 dnsmasq 的主機(jī)地址。

# 如果指定了多個(gè) tag:<tag> 必須同時(shí)匹配才行。

# [encap:<opt>,][vi-encap:<enterprise>,][vendor:[<vendor-class>],] 有待繼續(xù)研究。

#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>]]

#dhcp-option-force=[tag:<tag>,[tag:<tag>,]][encap:<opt>,][vi-encap:<enterprise>,][vendor:[<vendor-class>],]<opt>,[<value>[,<value>]]

#dhcp-optsfile=<path>

#dhcp-optsdir=<path>

#dhcp-option=3,1.2.3.4

#dhcp-option=option:router,1.2.3.4

#dhcp-option=option:router,192.168.10.254

#dhcp-option=option:dns-server,192.168.10.254,221.12.1.227,221.12.33.227



##############################################################################

# (IPv4 only) 禁用重用服務(wù)器名稱和文件字段作為額外的 dhcp-option 選項(xiàng)。

# 一般情況下 dnsmasq 從 dhcp-boot 移出啟動(dòng)服務(wù)器和文件信息到 dhcp-option 選項(xiàng)中。

# 這使得在 dhcp-option 選項(xiàng)封包中有額外的選項(xiàng)空間可用,但是會(huì)使老的客戶端混淆。

# 此選項(xiàng)將強(qiáng)制使用簡(jiǎn)單并安全的方式來(lái)避免此類情況??梢哉J(rèn)為是一個(gè)兼容性選項(xiàng)。

#dhcp-no-override


##############################################################################

# 配置 DHCP 中繼。

# <local address> 是運(yùn)行 dnsmasq 的接口的 IP 地址。

# 所有在 <local address> 接口上接收到的 DHCP 請(qǐng)求將中繼到 <server address> 指定的遠(yuǎn)程 DHCP 服務(wù)器。

# 可以多次配置此選項(xiàng),使用同一個(gè) <local address> 轉(zhuǎn)發(fā)到多個(gè)不同的 <server address> 指定的遠(yuǎn)程 DHCP 服務(wù)器。

# <server address> 僅允許使用 IP 地址,不能使用域名等其他格式。

# 如果是 DHCPv6,<server address> 可以是 ALL_SERVERS 的多播地址 ff05::1:3 。

# 在這種情況下必須指定接口 <interface> ,不能使用通配符,用于直接多播到對(duì)應(yīng)的 DHCP 服務(wù)器所在的接口。

# <interface> 指定了僅允許接收從 <interface> 接口的 DHCP 服務(wù)器相應(yīng)信息。

#dhcp-relay=<local address>,<server address>[,<interface>]



##############################################################################

# 設(shè)置標(biāo)簽

#dhcp-vendorclass=set:<tag>,[enterprise:<IANA-enterprise number>,]<vendor-class>

#dhcp-userclass=set:<tag>,<user-class>

#dhcp-mac=set:<tag>,<MAC address>

#dhcp-circuitid=set:<tag>,<circuit-id>

#dhcp-remoteid=set:<tag>,<remote-id>

#dhcp-subscrid=set:<tag>,<subscriber-id>

#dhcp-match=set:<tag>,<option number>|option:<option name>|vi-encap:<enterprise>[,<value>]

#tag-if=set:<tag>[,set:<tag>[,tag:<tag>[,tag:<tag>]]]



#dhcp-proxy[=<ip addr>]......



##############################################################################

# 不分配匹配這些 tag:<tag> 的 DHCP 請(qǐng)求。

#dhcp-ignore=tag:<tag>[,tag:<tag>]

#dhcp-ignore-names[=tag:<tag>[,tag:<tag>]]

#dhcp-generate-names=tag:<tag>[,tag:<tag>]

# IPv4 only 使用廣播與匹配 tag:<tag> 的客戶端通信。一般用于兼容老的 BOOT 客戶端。

#dhcp-broadcast[=tag:<tag>[,tag:<tag>]] 



##############################################################################

# IPv4 only 設(shè)置 DHCP 服務(wù)器返回的 BOOTP 選項(xiàng),

# <servername> <server address> 可選,

# 如果未設(shè)置服務(wù)器名稱將設(shè)為空,服務(wù)器地址設(shè)為 dnsmasq 的 IP 地址。

# 如果指定了多個(gè) tag:<tag> 必須同時(shí)匹配才行。

# 如果指定 <tftp_servername> 將按照 /etc/hosts 中對(duì)應(yīng)的 IP 地址進(jìn)行輪詢負(fù)載均衡。  

#dhcp-boot=[tag:<tag>,]<filename>,[<servername>[,<server address>|<tftp_servername>]]

# 根據(jù)不同的類型使用不同的選項(xiàng)。

# 使用示例:

#        dhcp-match=set:EFI_x86-64,option:client-arch,9

#        dhcp-boot=tag:EFI_x86-64,uefi/grubx64.efi

#        #dhcp-match=set:EFI_Xscale,option:client-arch,8

#        #dhcp-boot=tag:EFI_Xscale,uefi/grubx64.efi

#        #dhcp-match=set:EFI_BC,option:client-arch,7

#        #dhcp-boot=tag:EFI_BC,uefi/grubx64.efi

#        #dhcp-match=set:EFI_IA32,option:client-arch,6

#        #dhcp-boot=tag:EFI_IA32,uefi/grubx64.efi

#        #dhcp-match=set:Intel_Lean_Client,option:client-arch,5

#        #dhcp-boot=tag:Intel_Lean_Client,uefi/grubx64.efi

#        #dhcp-match=set:Arc_x86,option:client-arch,4

#        #dhcp-boot=tag:Arc_x86,uefi/grubx64.efi

#        #dhcp-match=set:DEC_Alpha,option:client-arch,3

#        #dhcp-boot=tag:DEC_Alpha,uefi/grubx64.efi

#        #dhcp-match=set:EFI_Itanium,option:client-arch,2

#        #dhcp-boot=tag:EFI_Itanium,uefi/grubx64.efi

#        #dhcp-match=set:NEC/PC98,option:client-arch,1

#        #dhcp-boot=tag:NEC/PC98,uefi/grubx64.efi

#        dhcp-match=set:Intel_x86PC,option:client-arch,0

#        dhcp-boot=tag:Intel_x86PC,pxelinux.0



##############################################################################

# DHCP 使用客戶端的 MAC 地址的哈希值為客戶端分配 IP 地址,

# 通常情況下即使客戶端使自己的租約到期,客戶端的 IP 地址仍將長(zhǎng)期保持穩(wěn)定。

# 在默認(rèn)模式下,IP 地址是隨機(jī)分配的。

# 啟用 dhcp-sequential-ip 選項(xiàng)將按順序分配 IP 地址。

# 在順序分配模式下,客戶端使租約到期更像是僅僅移動(dòng)一下 IP 地址。

# 在通常情況下不建議使用這種方式。

#dhcp-sequential-ip



##############################################################################

# 多數(shù)情況下我們使用 PXE,只是簡(jiǎn)單的允許 PXE 客戶端獲取 IP 地址,

# 然后 PXE 客戶端下載 dhcp-boot 選項(xiàng)指定的文件并執(zhí)行,也就是 BOOTP 的方式。

# 然而在有適當(dāng)配置的 DHCP 服務(wù)器支持的情況下,PXE 系統(tǒng)能夠?qū)崿F(xiàn)更復(fù)雜的功能。

# pxe-service 選項(xiàng)可指定 PXE 環(huán)境的啟動(dòng)菜單。

# 為不同的類型系統(tǒng)設(shè)定不同的啟動(dòng)菜單,并且覆蓋 dhcp-boot 選項(xiàng)。

# <CSA> 為客戶端系統(tǒng)類型:x86PC, PC98, IA64_EFI, Alpha, Arc_x86, Intel_Lean_Client, 

# IA32_EFI, X86-64_EFI, Xscale_EFI, BC_EFI, ARM32_EFI 和 ARM64_EFI,其他類型可能為一個(gè)整數(shù)。

# <basename> 引導(dǎo) PXE 客戶端使用 tftp 從 <server address> 或者 <server_name> 下載文件。

#     注意:"layer" 后綴 (通常是 ".0") 由 PXE 提供,也就是 PXE 客戶端默認(rèn)在文件名附加 .0 后綴。

#     示例:pxe-service=x86PC, "Install Linux", pxelinux         (讀取 pxelinux.0 文件并執(zhí)行)

#           pxe-service=x86PC, "Install Linux", pxelinux, 1.2.3.4(不適用于老的PXE)

#     <bootservicetype> 整數(shù),PXE 客戶端將通過(guò)廣播或者通過(guò) <server address> 

#           或者 <server_name> 搜索對(duì)應(yīng)類型的適合的啟動(dòng)服務(wù)。。

#     示例:pxe-service=x86PC, "Install windows from RIS server", 1

#           pxe-service=x86PC, "Install windows from RIS server", 1, 1.2.3.4

#     未指定 <basename>、<bootservicetype> 或者 <bootservicetype> 為 “0”,將從本地啟動(dòng)。

#     示例:pxe-service=x86PC, "Boot from local disk"

#           pxe-service=x86PC, "Boot from local disk", 0

# 如果指定 <server_name> 將按照 /etc/hosts 中對(duì)應(yīng)的 IP 地址進(jìn)行輪詢負(fù)載均衡。  

#pxe-service=[tag:<tag>,]<CSA>,<menu text>[,<basename>|<bootservicetype>][,<server address>|<server_name>]

# 在 PXE 啟動(dòng)后彈出提示,<prompt> 為提示內(nèi)容,<timeout> 為超時(shí)時(shí)間,為 0 則立即執(zhí)行。

# 如果未指定此選項(xiàng),在有多個(gè)啟動(dòng)選項(xiàng)的情況下等待用戶選擇,不會(huì)超時(shí)。

#pxe-prompt=[tag:<tag>,]<prompt>[,<timeout>]

# 根據(jù)不同的類型使用不同的菜單,使用示例:

#        #pxe-prompt="What system shall I netboot?", 120

#        # or with timeout before first available action is taken:

#        pxe-prompt="Press F8 or Enter key for menu.", 60

#        pxe-service=x86PC, "Now in x86PC (BIOS mode), boot from local", 0

#        pxe-service=x86PC, "Now in x86PC (BIOS mode)", pxelinux

#        pxe-service=PC98, "Now in PC98 mode", PC98

#        pxe-service=IA64_EFI, "Now in IA64_EFI mode", IA64_EFI

#        pxe-service=Alpha, "Now in Alpha mode", Alpha

#        pxe-service=Arc_x86, "Now in Arc_x86 mode", Arc_x86

#        pxe-service=Intel_Lean_Client, "Now in Intel_Lean_Client mode", Intel_Lean_Client

#        pxe-service=IA32_EFI, "Now in IA32_EFI mode", IA32_EFI

#        pxe-service=X86-64_EFI, "Now in X86-64_EFI (UEFI mode), boot from local", 0

#        pxe-service=X86-64_EFI, "Now in X86-64_EFI (UEFI mode)", grub/grub-x86_64.efi

#        pxe-service=Xscale_EFI, "Now in Xscale_EFI mode", Xscale_EFI

#        pxe-service=BC_EFI, "Now in BC_EFI mode", BC_EFI

#        # CentOS7 系統(tǒng)不支持下列兩個(gè)選項(xiàng)

#        #pxe-service=ARM32_EFI,"Now in ARM32_EFI mode",ARM32_EFI

#        #pxe-service=ARM64_EFI,"Now in ARM64_EFI mode",ARM64_EFI



##############################################################################

# 默認(rèn)為150,即最多分配150個(gè)ip地址出去,最大1000個(gè)ip

#dhcp-lease-max=150

# (IPv4 only) 指定DHCP端口,默認(rèn)為67和68。如果不指定則為1067和1068,單指定一個(gè),第二個(gè)加1

#dhcp-alternate-port[=<server port>[,<client port>]]

# 謹(jǐn)慎使用此選項(xiàng),避免 IP 地址浪費(fèi)。(IPv4 only) 允許動(dòng)態(tài)分配 IP 地址給 BOOTP 客戶端。

# 注意:BOOTP 客戶端獲取的 IP 地址是永久的,將無(wú)法再次分配給其他客戶端。

#bootp-dynamic[=<network-id>[,<network-id>]]

# 謹(jǐn)慎使用此選項(xiàng)。

# 默認(rèn)情況下 DHCP 服務(wù)器使用 ping 的方式進(jìn)行確保 IP 未被使用的情況下將 IP 地址分配出去。

# 啟用此選項(xiàng)將不使用 ping 進(jìn)行確認(rèn)。

#no-ping



##############################################################################

# 記錄額外的 dhcp 日志,記錄所有發(fā)送給 DHCP 客戶端的選項(xiàng)(option)以及標(biāo)簽(tag)信息

#log-dhcp

# 禁止記錄日常操作日志,錯(cuò)誤日志仍然記錄。啟用 log-dhcp 將覆蓋下列選項(xiàng)。

#quiet-dhcp

#quiet-dhcp6

#quiet-ra



# 修改 DHCP 默認(rèn)租約文件路徑,默認(rèn)情況下無(wú)需修改

#dhcp-leasefile=/var/lib/dnsmasq/dnsmasq.leases

# (IPv6 only)

#dhcp-duid=<enterprise-id>,<uid>



##############################################################################

#dhcp-script=<path>

#dhcp-luascript=<path>

#dhcp-scriptuser=root

#script-arp

#leasefile-ro



#bridge-interface=<interface>,<alias>[,<alias>]



##############################################################################

# 給 DHCP 服務(wù)器指定 domain 域名信息,也可以給對(duì)應(yīng)的 IP 地址池指定域名。

#     直接指定域名

#     示例:domain=thekelleys.org.uk

#     子網(wǎng)對(duì)應(yīng)的域名

#     示例:domain=wireless.thekelleys.org.uk,192.168.2.0/24

#     ip范圍對(duì)應(yīng)的域名

#     示例:domain=reserved.thekelleys.org.uk,192.68.3.100,192.168.3.200

#domain=<domain>[,<address range>[,local]]

# 在默認(rèn)情況下 dnsmasq 插入普通的客戶端主機(jī)名到 DNS 中。

# 在這種情況下主機(jī)名必須唯一,即使兩個(gè)客戶端具有不同的域名后綴。

# 如果第二個(gè)客戶端使用了相同的主機(jī)名,DNS 查詢將自動(dòng)更新為第二個(gè)客戶端的 IP 地址。

# 如果設(shè)置了 dhcp-fqdn 選項(xiàng),普通的主機(jī)名將不再插入到 DNS 中去,

# 僅允許合格的具有域名后綴的主機(jī)名插入到 DNS 服務(wù)器中。

# 指定此選項(xiàng)需同時(shí)指定不含 <address range> 地址范圍的 domain 選項(xiàng)。

#dhcp-fqdn

# 通常情況下分配 DHCP 租約后,dnsmasq 設(shè)置 FQDN 選項(xiàng)告訴客戶端不要嘗試 DDNS 更新主機(jī)名與 IP 地址。

# 這是因?yàn)? name-IP 已自動(dòng)添加到 dnsmasq 的 DNS 視圖中的。

# 設(shè)置此選項(xiàng)將允許客戶端 DDNS 更新,

# 在 windows 下允許客戶端更新 windows AD 服務(wù)器是非常有用的。

# 參看  RFC 4702 。

#dhcp-client-update



#enable-ra

#ra-param=<interface>,[high|low],[[<ra-interval>],<router lifetime>]




##############################################################################

#

#        TFTP 選項(xiàng)

#

##############################################################################

# 對(duì)于絕大多數(shù)的配置,僅需指定 enable-tftp 和 tftp-root 選項(xiàng)即可。

# 是否啟用內(nèi)置的 tftp 服務(wù)器,可以指定多個(gè)逗號(hào)分隔的網(wǎng)絡(luò)接口

#enable-tftp[=<interface>[,<interface>]]

#enable-tftp

#enable-tftp=enp3s0,lo

# 指定 tftp 的根目錄,也就是尋找傳輸文件時(shí)使用的相對(duì)路徑,可以附加接口,

#tftp-root=<directory>[,<interface>]

#tftp-root=/var/lib/tftpboot/

# 如果取消注釋,那么即使指定的 tftp-root 無(wú)法訪問(wèn),仍然啟動(dòng) tftp 服務(wù)。

#tftp-no-fail

# 附加客戶端的 IP 地址作為文件路徑。此選項(xiàng)僅在正確設(shè)置了 tftp-root 的情況下可用,

# 示例:如果 tftp-root=/tftp,客戶端為 192.168.1.15 請(qǐng)求 myfile.txt 文件時(shí),

# 將優(yōu)先請(qǐng)求 /tftp/192.168.1.15/myfile.txt 文件, 其次是 /tftp/myfile.txt 文件。

# 感覺(jué)沒(méi)什么用。

#tftp-unique-root

# 啟用安全模式,啟用此選項(xiàng),僅允許 tftp 進(jìn)程訪問(wèn)屬主為自己的文件。

# 不啟用此選項(xiàng),允許訪問(wèn)所有 tftp 進(jìn)程屬主可讀取的文件。

# 如果 dnsmasq 是以 root 用戶運(yùn)行,tftp-secure 選項(xiàng)將允許訪問(wèn)全局可讀的文件。

# 一般情況下不推薦以 root 用戶運(yùn)行 dnsmasq。

# 在指定了 tftp-root 的情況下并不是很重要。

#tftp-secure

# 將所有文件請(qǐng)求轉(zhuǎn)換為小寫。對(duì)于 Windows 客戶端來(lái)說(shuō)非常有用,建議開啟此項(xiàng)。

# 注意:dnsmasq 的 TFTP 服務(wù)器總是將文件路徑中的“\”轉(zhuǎn)換為“/”。

#tftp-lowercase

# 允許最大的連接數(shù),默認(rèn)為 50 。

# 如果將連接數(shù)設(shè)置的很大,需注意每個(gè)進(jìn)程的最大文件描述符限制,詳見文檔手冊(cè)。

#tftp-max=<connections>

#tftp-max=50

# 設(shè)置傳輸時(shí)的 MTU 值,建議不設(shè)置或按需設(shè)置。

# 如果設(shè)定的值大于網(wǎng)絡(luò)接口的 MTU 值,將按照網(wǎng)絡(luò)接口的 MTU 值自動(dòng)分片傳輸(不推薦)。

#tftp-mtu=<mtu size>

# 停止 tftp 服務(wù)器與客戶端協(xié)商 "blocksize" 選項(xiàng)。啟用后,防止一些古怪的客戶端出問(wèn)題。

#tftp-no-blocksize

# 指定 tftp 的連接端口的范圍,方便防火墻部署。

# tftp 偵聽在 69/udp ,連接端口默認(rèn)是由系統(tǒng)自動(dòng)分配的,

# 非 root 用戶運(yùn)行時(shí)指定的連接端口號(hào)需大于 1025 最大 65535。

#tftp-port-range=<start>,<end>

###############################################################################

#conf-dir=<directory>[,<file-extension>......]

#conf-file=/etc/dnsmasq.more.conf

conf-dir=/etc/dnsmasq.d

#servers-file=<file>

5、一些其它配置應(yīng)用

#屏蔽網(wǎng)頁(yè)廣告,將指廣告的URL指定127這個(gè)IP,就可以將網(wǎng)頁(yè)上討厭的廣告給去掉了。
address=/ad.youku.com/127.0.0.1
address=/ad.iqiyi.com/127.0.0.1

#指定域名解析到特定的IP上。這個(gè)功能可以讓你控制一些網(wǎng)站的訪問(wèn),非法的DNS就經(jīng)常把一些正規(guī)的網(wǎng)站解析到不正確IP上
address=/freehao123.com/123.123.123.123

#智能DNS加快解析速度,打開/etc/dnsmasq.conf文件,server=后面可以添加指定的DNS,例如國(guó)內(nèi)外不同的網(wǎng)站使用不同的DNS。
server=/cn/114.114.114.114
server=/taobao.com/114.114.114.114
server=/taobaocdn.com/114.114.114.114

到此這篇關(guān)于搭建dnsmasq自運(yùn)營(yíng)dns服務(wù)器的實(shí)現(xiàn)步驟的文章就介紹到這了,更多相關(guān)dnsmasq搭建自運(yùn)營(yíng)dns服務(wù)器內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

  • vscode內(nèi)網(wǎng)訪問(wèn)服務(wù)器的方法

    vscode內(nèi)網(wǎng)訪問(wèn)服務(wù)器的方法

    這篇文章主要介紹了vscode內(nèi)網(wǎng)訪問(wèn)服務(wù)器的相關(guān)知識(shí),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2022-06-06
  • Kubernetes常用命令大全近期總結(jié)

    Kubernetes常用命令大全近期總結(jié)

    Kubernetes是用于大規(guī)模部署和管理這些容器的開源軟件?-?在希臘語(yǔ)中,這個(gè)詞還有“舵手”或“飛行員”的意思,使用?Kubernetes(有時(shí)被稱為“k8s”或“k-eights”)可更快地構(gòu)建、交付和縮放容器化應(yīng)用,這篇文章介紹了最新版Kubernetes常用命令大全
    2025-01-01
  • centos6.4+nginx+mysql+php+phpmyadmin整合過(guò)程詳解

    centos6.4+nginx+mysql+php+phpmyadmin整合過(guò)程詳解

    這篇文章主要介紹了centos6.4+nginx+mysql+php+phpmyadmin整合過(guò)程,較為詳細(xì)的分析了centos6.4+nginx+mysql+php+phpmyadmin整合的具體步驟、操作指令與相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2016-11-11
  • 服務(wù)器運(yùn)維基礎(chǔ)指南教程

    服務(wù)器運(yùn)維基礎(chǔ)指南教程

    作為一個(gè)開發(fā)人員,對(duì)于服務(wù)器的操作不可避免,最常用的操作就是部署應(yīng)用到服務(wù)器,及在生產(chǎn),測(cè)試環(huán)境通過(guò)查看日志排查問(wèn)題,這篇文章主要介紹了服務(wù)器運(yùn)維基礎(chǔ)指南,需要的朋友可以參考下
    2023-02-02
  • 深入理解微服務(wù)中的高并發(fā)、高性能、高可用及處理方式

    深入理解微服務(wù)中的高并發(fā)、高性能、高可用及處理方式

    這篇文章主要介紹了深入理解微服務(wù)中的高并發(fā)、高性能、高可用及處理方式,系統(tǒng)在巨大的流量洪峰(即指高并發(fā)場(chǎng)景)沖擊下,依然能高效、穩(wěn)定、正常地(即指高性能、高可用)對(duì)外提供服務(wù),這是系統(tǒng)設(shè)計(jì)的主要目標(biāo)之一,需要的朋友可以參考下
    2023-10-10
  • 如何查看調(diào)整cpu頻率及模式

    如何查看調(diào)整cpu頻率及模式

    這篇文章主要為大家介紹了如何查看調(diào)整cpu頻率及模式方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-10-10
  • http跟https有什么區(qū)別

    http跟https有什么區(qū)別

    這篇文章主要介紹了http跟https的區(qū)別,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友參考下吧
    2018-02-02
  • 數(shù)據(jù)庫(kù)數(shù)據(jù)同步常用的5種實(shí)施方案

    數(shù)據(jù)庫(kù)數(shù)據(jù)同步常用的5種實(shí)施方案

    本文將探討幾種常見的數(shù)據(jù)同步方案,涵蓋了數(shù)據(jù)庫(kù)主從同步、數(shù)據(jù)遷移同步和數(shù)據(jù)實(shí)時(shí)同步,通過(guò)深入了解各種方案的特點(diǎn)、優(yōu)勢(shì)和局限性,我們可以更好地選擇和定制適合特定業(yè)務(wù)場(chǎng)景的數(shù)據(jù)同步策略,為構(gòu)建高效、穩(wěn)定、可擴(kuò)展的系統(tǒng)奠定基礎(chǔ)
    2024-06-06
  • 部署VSCODE SERVER的詳細(xì)過(guò)程

    部署VSCODE SERVER的詳細(xì)過(guò)程

    這篇文章主要介紹了部署VSCODE SERVER的詳細(xì)過(guò)程,本文指導(dǎo)利用微軟官方的vscode server部署個(gè)人開發(fā)環(huán)境,并通過(guò)網(wǎng)頁(yè)端或vscode 客戶端訪問(wèn)該環(huán)境,需要的朋友可以參考下
    2023-04-04
  • RAID制作教程圖文詳解

    RAID制作教程圖文詳解

    這篇文章主要介紹了主流的帶有RAID功能的升技主板基本的RAID創(chuàng)建過(guò)程的介紹,希望能夠給對(duì)RAID有興趣的升技主板用戶有所幫助
    2013-06-06

最新評(píng)論