Download - 2011/1/27 Amazon Route53 使ってみた@第1回クラウド女子会
Amazon Route53使ってみた
Japan AWS User Group (JAWS-UG) クラウド女子会 - 第1回
2011/1/27たかた みき @mikiT_T
自己紹介• の中の人(1999から)• http://web.arena.ne.jp/•DNSSECまわりで活動中• http://dnssec.jp/• JEAG (Japan Email Anti-abuse Group) とか迷惑メール対策方面• 10歳児+0歳うさぎの母•趣味はパン作りと写真
@mikiT_T
2
Route53って?• http://aws.amazon.com/route53/•権威DNSサーバ•β版
•料金• 1ゾーン1か月あたり$1.00• 100万問い合わせあたり• 最初の10億問い合わせまで$0.50• それ以降は$0.25
3
無料tierほしいな~
DNSって?•ドメイン名とIPアドレスの対応づけ• (正引き) egg.baking.jp => 204.236.228.219• (逆引き) 204.236.228.219 =>
ec2-204-236-228-219.compute-1.amazonaws.com.
•権威DNSサーバ• ゾーン情報を保持• 独自ドメイン運用には必ず必要
•キャッシュDNSサーバ• 問合せに対応する答(キャッシュ)を保持• /etc/resolv.confやWindowsに設定
5
とある権威サーバ設定
@ IN SOA ns1.baking.jp. [email protected]. ( ... )
IN NS ns1.baking.jp.
IN A 111.89.176.107
IN AAAA 2001:200:1c8:1bb:2ac:1bff:fe8d:9c4f!
: :
egg IN A 204.236.228.219
egg IN MX 10 egg
6
通常の設定(bind)baking.jp のゾーン情報抜粋
Getting Started•今回の教科書• http://docs.amazonwebservices.com/Route53/latest/GettingStartedGuide/
• 順番は少し変えてます
•必要なもの• AWS アカウント•独自ドメイン、もしくは権威委譲してもらえるサブドメイン
7
やってみる
9
準備% curl -O http://awsmedia.s3.amazonaws.com/catalog/attachments/dnscurl.pl% chmod +x dnscurl.pl% vi ~/.aws-secrets
10
%awsSecretAccessKeys = ( "my-aws-account" => { id => "A...Q", key => "E...U", },);
アクセス証明書を設定
% chmod 600 ~/.aws-secrets% sudo yum -y install perl-Digest-HMAC
アクセスキーIDシークレットアクセスキー
ゾーン作成
15
<CreateHostedZoneRequest xmlns="https://route53.amazonaws.com/doc/2010-10-01/">
<Name>cloudgirl.baking.jp.</Name> <CallerReference>cloudgirl</CallerReference> <HostedZoneConfig> <Comment>here is a comment</Comment> </HostedZoneConfig></CreateHostedZoneRequest>
% vi MyCreateRequest.xml
% ./dnscurl.pl --keyname my-aws-account -- -H "Content-Type: text/xml; charset=UTF-8" -X POST --upload-file ./MyCreateRequest.xml https://route53.amazonaws.com/2010-10-01/hostedzone
ゾーン名一意なID
<?xml version="1.0"?><CreateHostedZoneResponse xmlns="https://route53.amazonaws.com/doc/2010-10-01/"><HostedZone><Id>/hostedzone/Z3OV9VJIQVXT95</Id><Name>cloudgirl.baking.jp.</Name><CallerReference>cloudgirl</CallerReference><Config><Comment>here is a comment</Comment></Config></HostedZone><ChangeInfo><Id>/change/C19FDVQALMKN4T</Id><Status>PENDING</Status><SubmittedAt>2011-01-27T06:35:06.610Z</SubmittedAt></ChangeInfo><DelegationSet><NameServers><NameServer>ns-1657.awsdns-15.co.uk</NameServer><NameServer>ns-753.awsdns-30.net</NameServer><NameServer>ns-1505.awsdns-60.org</NameServer><NameServer>ns-258.awsdns-32.com</NameServer></NameServers></DelegationSet></CreateHostedZoneResponse>
実行結果
16
メモ!!
4つの地理的に分散した権威サーバに登録された
$ ./dnscurl.pl --keyname my-aws-account -- https://route53.amazonaws.com/2010-10-01/hostedzone/Z3OV9VJIQVXT95 0.0%<?xml version="1.0"?><GetHostedZoneResponse xmlns="https://route53.amazonaws.com/doc/2010-10-01/"><HostedZone><Id>/hostedzone/Z3OV9VJIQVXT95</Id><Name>cloudgirl.baking.jp.</Name><CallerReference>cloudgirl</CallerReference><Config><Comment>here is a comment</Comment></Config></HostedZone><DelegationSet><NameServers><NameServer>ns-1657.awsdns-15.co.uk</NameServer><NameServer>ns-753.awsdns-30.net</NameServer><NameServer>ns-1505.awsdns-60.org</NameServer><NameServer>ns-258.awsdns-32.com</NameServer></NameServers></DelegationSet></GetHostedZoneResponse>
確認 (API)
17
% dig cloudgirl.baking.jp soa @ns-1657.awsdns-15.co.uk +norec +shortns-1657.awsdns-15.co.uk. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 86400
% dig cloudgirl.baking.jp ns @ns-1657.awsdns-15.co.uk +norec +shortns-258.awsdns-32.com.ns-753.awsdns-30.net.ns-1505.awsdns-60.org.ns-1657.awsdns-15.co.uk.
確認 (dig)
18
権威サーバに対して問い合せを行って確認
レコード追加
19
<?xml version="1.0" encoding="UTF-8"?><ChangeResourceRecordSetsRequest xmlns="https://route53.amazonaws.com/doc/2010-10-01/"> <ChangeBatch><Comment>here is a comment</Comment> <Changes><Change>
<Action>CREATE</Action> <ResourceRecordSet>
<Name>www.cloudgirl.baking.jp.</Name> <Type>A</Type><TTL>14400</TTL> <ResourceRecords><ResourceRecord> <Value>204.236.228.219</Value> </ResourceRecord></ResourceRecords> </ResourceRecordSet> </Change></Changes></ChangeBatch></ChangeResourceRecordSetsRequest>
% vi MyRecordsRequest.xml
ドメイン名
TTLタイプ
IPアドレス
レコード追加 実行
20
% ./dnscurl.pl --keyname my-aws-account -- -H "Content-Type: text/xml; charset=UTF-8" -X POST --upload-file ./MyRecordsRequest.xml https://route53.amazonaws.com/2010-10-01/hostedzone/Z3OV9VJIQVXT95/rrset0.0%<?xml version="1.0"?><ChangeResourceRecordSetsResponse xmlns="https://route53.amazonaws.com/doc/2010-10-01/"><ChangeInfo><Id>/change/CZEDHHNT49Q1J</Id><Status>PENDING</Status><SubmittedAt>2011-01-27T07:22:57.672Z</SubmittedAt></ChangeInfo></ChangeResourceRecordSetsResponse>
% dig www.cloudgirl.baking.jp a @ns-1657.awsdns-15.co.uk +norec +short204.236.228.219
確認 (dig)
21
権威サーバに対して問い合せを行って確認登録したレコードを検索できました
ゾーン委譲
22
@ IN SOA ns1.baking.jp. [email protected]. ( ... )
IN NS ns1.baking.jp.
IN A 111.89.176.107
IN AAAA 2001:200:1c8:1bb:2ac:1bff:fe8d:9c4f!
: :
egg IN A 204.236.228.219
egg IN MX 10 egg
;for AWS Route53
cloudgirl IN NS ns-258.awsdns-32.com.
cloudgirl IN NS ns-753.awsdns-30.net.
cloudgirl IN NS ns-1505.awsdns-60.org.
cloudgirl IN NS ns-1657.awsdns-15.co.uk.
•できたゾーンへの委譲をしてもらう• .(ルート)からの委譲が繋がる
% dig www.cloudgirl.baking.jp a +short204.236.228.219
確認 (dig)
23
• +norec や @ でAWSのサーバを指定しなくても参照できるようになりました
レコード削除
24
<?xml version="1.0" encoding="UTF-8"?><ChangeResourceRecordSetsRequest xmlns="https://route53.amazonaws.com/doc/2010-10-01/"> <ChangeBatch><Comment>here is a comment</Comment> <Changes><Change>
<Action>DELETE</Action> <ResourceRecordSet>
<Name>www.cloudgirl.baking.jp.</Name> <Type>A</Type><TTL>14400</TTL> <ResourceRecords><ResourceRecord> <Value>204.236.228.219</Value> </ResourceRecord></ResourceRecords> </ResourceRecordSet> </Change></Changes></ChangeBatch></ChangeResourceRecordSetsRequest>
% vi RecordDelete.xml
CREATEをDELETEにするだけ
Type TTL等、追加した時と同じパラメータが必要
レコード削除 実行
25
% ./dnscurl.pl --keyname my-aws-account -- -H "Content-Type: text/xml; charset=UTF-8" -X POST --upload-file ./DeleteRecord.xml https://route53.amazonaws.com/2010-10-01/hostedzone/Z3OV9VJIQVXT95/rrset0.0%<?xml version="1.0"?><ChangeResourceRecordSetsResponse xmlns="https://route53.amazonaws.com/doc/2010-10-01/"><ChangeInfo><Id>/change/C1XANU2J92F97U</Id><Status>PENDING</Status><SubmittedAt>2011-01-27T08:57:10.761Z</SubmittedAt></ChangeInfo></ChangeResourceRecordSetsResponse>
$ dig www.cloudgirl.baking.jp
; <<>> DiG 9.7.0-P2-RedHat-9.7.0-5.P2.6.amzn1 <<>> www.cloudgirl.baking.jp;; global options: +cmd;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NXDOMAIN, id: 36539;; flags: qr rd ra; QUERY: 1, ANSWER: 0, AUTHORITY: 1, ADDITIONAL: 0
;; QUESTION SECTION:;www.cloudgirl.baking.jp.! IN! A
;; AUTHORITY SECTION:cloudgirl.baking.jp.!900!IN! SOA!ns-1657.awsdns-15.co.uk. awsdns-hostmaster.amazon.com. 1 7200 900 1209600 86400
;; Query time: 288 msec;; SERVER: 172.16.0.23#53(172.16.0.23);; WHEN: Thu Jan 27 08:57:52 2011;; MSG SIZE rcvd: 128
確認 (dig)
26
ゾーン削除
27
% ./dnscurl.pl --keyname my-aws-account -- -X DELETE https://route53.amazonaws.com/2010-10-01/hostedzone/Z3OV9VJIQVXT950.0%<?xml version="1.0"?><DeleteHostedZoneResponse xmlns="https://route53.amazonaws.com/doc/2010-10-01/"><ChangeInfo><Id>/change/CDRHBQU3K6NR8</Id><Status>PENDING</Status><SubmittedAt>2011-01-27T10:17:19.487Z</SubmittedAt></ChangeInfo></DeleteHostedZoneResponse>
• レコードを全て削除しないとゾーン削除できません• ゾーン削除しないと課金されたままになっちゃうの
で注意
XMLファイル不要
% dig www.cloudgirl.baking.jp a @ns-1657.awsdns-15.co.uk +norec
; <<>> DiG 9.7.0-P2-RedHat-9.7.0-5.P2.6.amzn1 <<>> www.cloudgirl.baking.jp a @ns-1657.awsdns-15.co.uk +norec;; global options: +cmd;; connection timed out; no servers could be reached
確認 (dig)
28
•割り振られた権威DNSサーバの名前まで削除
さいごに
•DNSSEC対応される予定はありますか?
29