際際滷

際際滷Share a Scribd company logo
キャッシュ?慷
惹喘侏償邑}へのI
Version 1.0
@hdais
1
About
? このにvして
? http://www.slideshare.net/ohesotori/
dns-23491023
? キャッシュ?慷惹喘侏償邑}
返に凋兆を契峭するDNSサ`バの
撹?O協について深えてみる
2
なんでそんなO協が
? 塞が謹くないh廠で慷とキャッシュをe?の
サ`バで\喘するのはコスト互
? e?にすると、庇Lのため慷2岬キャッシュ2岬の
4岬サ`バが勣る(IPアドレスも勣る)
? そんなにIえない。富し念まで∀觧なんていうのも
のもなかった
? BINDは硬くから、キャッシュと慷の惹喘が辛嬬だっ
た
? よほど枠の苧がなけりゃ、惹喘にしちゃうよ
ね...
? Y蕉、恷詰泙2岬で慷?キャッシュ惹喘サ`バ\喘
(ns1, ns2)
3
なんでそんなO協が(cont.)
? 岷すのもgではない
? 人のマスタDNSサ`バに、AXFR勣箔S辛するソ`スIPと
してISPのns1とns2がO協されてる
? 人のホストのresolv.confに仝歌孚喘サ`バ々としてISPの
ns1とns2がO協されている
? 採定もそういう\喘だったから、そのO協は寄楚に
? 慷とキャッシュの蛍xはns1,ns2のアドレス筝を
吭龍する?否している人が謹い栽は是y
4
どうにかしよう
? やはり、キャッシュサ`バと慷サ`バを麗尖議に
富なくともVMレベルで蛍xすることが圻t
? 蛍xすると、トラフィック鬉簇煢L撹がSに
なる
? オ`プンリゾルバ貨もSになる
? キャッシュのIPを笋┐襪、慷のIPを笋┐襪は
rと栽による人がどれだけf薦議かも
? キャッシュと慷の麗尖議蛍xの返も、匯寄テ`
マだよね
5
惹喘サ`バの灸侏議な
BIND9O協
options {
recursion yes;
allow-query { any; };
};
zone "example.com" {
?le "example.com.zone";
type master;
};
キャッシュとして嘛する┘
フォルトでyesなのでdしてい
ない栽も)
輝隼のようにオ`プンリゾルバ
慷デ`タのO協
6
採が}か
? BINDのデフォルトでは、キャッシュ┘螢哨襯丕
何蛍と、慷何蛍が詞壓して嘛する
? リゾルバは、麿の慷サ`バから誼たデ`タのキ
ャッシュだけでなく、ロ`カルの慷デ`タ
(example.com)も歌孚し、その坪否を鬴陲靴討靴
う
? これが惹喘侏償邑}の圻咀
7
惹喘ではなく詞壓が}
? キャッシュへのクエリと、慷へのクエリが詞壓
してI尖されることが}
? キャッシュと慷の惹喘サ`バでも、この2つを
屎しく曝e?蛍xして嘛するようにBINDをO
協すればよい
8
どうやって曝e?蛍xするか
? BIND9のviewC嬬は、クエリを蛍してe?のI
尖が辛嬬。蛍瘁のI尖で歌孚するデ`タも畠く
eになる。
? 蛍rに歌孚辛嬬な朕
? クエリのsrc IP (macth-clients)困茲岑られてる
? クエリのRD bit (match-recursive-only)
? リゾルバへのクエリかどうか(RD=1)で蛍
? クエリのdst IP (match-destinations)
? BINDが}方のIPをlistenしてるrに、どのIPに彭佚した
かでview尅蛍
9
詞壓O協の俐屎をしてみる
options { ... };
acl cache-clients {
192.0.2.0/24;
127.0.0.0/8;
};
view "cache" {
match-recursive-only yes;
allow-query { cache-clients; };
recursion yes;
};
view "authority" {
allow-query { any; };
recursion no;
zone "example.com" {
?le "example.com.zone";
type master;
};
};
キャッシュview。このviewには
RD=1のクエリにだけマッチして
I尖される
acl cache-clientsにマッチするクライアント
のみキャッシュサ`ビスを戻工する(オ`
プンリゾルバにしない)
慷view。キャッシュviewにマッ
チしなかったクエリ(i.e. RD=0)に
マッチする
10
麿の朕でクエリ蛍してview
尅蛍すると
? クエリのsrc IP (macth-clients)
? ISPh廠では、srcIPで、慷キャッシュどちらに
鬚韻蕕譴織エリか曝eすることは是y
? クエリのdst IP (match-destinations)
? サ`バに}方のIPをつけて、namedにそれらのIPを
listenさせつつmatch-desitinationでview蛍xすること
は、麗尖サ`バ(∀襯稀`バ)を蛍xすることに吉し
い
11
RD bitでI尖viewを蛍x
するrの廣吭泣(1)
view "authority" {
match-recursive-only no;
allow-query { any; };
recursion no;
zone "example.com" {
?le "example.com.zone";
type master;
};
};
view "cache" {
match-recursive-only yes;
allow-query { cache-clients; };
recursion yes;
};
BIND9O協の貧から和へdに
マッチするviewを箸垢里牌吭
match-recursive-only yesは、RD=1
のクエリのみがマッチ、
match-recursive-only noは、
RD=0or1のI圭のクエリがマッチ
するので、
のように authority view を枠に
くとNG
12
RD bitでI尖viewを蛍x
するrの廣吭泣(2)
? サ`バにdigするrは、械に慷へのクエリか
キャッシュへのクエリか吭Rする駅勣がある
? 慷へのクエリ
? dig @127.0.0.1 www.example.com +norec
? キャッシュへのクエリ
? dig @127.0.0.1 www.google.com +rec
13
RD bitでI尖viewを蛍x
したrの廣吭泣(3)
? 匯r議な指閲のためのO協とJRすべし
? そもそも、云O協はBIND9のC嬬に卆
贋し^ぎ。BIND10では揖C嬬は隆g廾
の庁
? 揖のO協は BIND9參翌で辛嬬なもの
は岑られていない (ややウソ
PowerDNSではできないことはない
? 慷とキャッシュは麗尖議蛍xの恬Iは
Mめるべき
14
END
15

More Related Content

キャッシュ?慷 惹喘侏償邑}へのI