هڪ ڏينهن مون کي پنهنجي ڪلائنٽ مان هڪ کي اهو حق ڏيڻو پيو ته هن کي ڏنل /28 سب نيٽ جي PTR رڪارڊس کي ايڊٽ ڪري. مون وٽ ٻاهران BIND سيٽنگون ايڊٽ ڪرڻ لاءِ آٽوميشن ناهي. تنهن ڪري، مون هڪ مختلف رستو وٺڻ جو فيصلو ڪيو - ڪلائنٽ کي نمائندو ڪرڻ لاءِ /24 سب نيٽ جي PTR زون جو هڪ ٽڪرو.
اهو لڳي ها - ڇا آسان ٿي سگهي ٿو؟ اسان صرف گهربل طور تي سب نيٽ رجسٽر ڪريون ٿا ۽ ان کي گهربل NS ڏانهن سڌو ڪريون ٿا، جيئن ذيلي ڊومين سان ڪيو ويندو آهي. پر نه. اهو ايترو سادو ناهي (جيتوڻيڪ حقيقت ۾ اهو عام طور تي ابتدائي آهي، پر وجدان مدد نه ڪندو)، ان ڪري مان هي مضمون لکي رهيو آهيان.
جيڪو به ان کي سمجهڻ چاهي ٿو اهو پڙهي سگهي ٿو
ڪير چاهي ٿو تيار ٿيل حل، ڀلي ڪري آيا ٻلي.
ڪاپي پيسٽ واري طريقي کي پسند ڪرڻ وارن کي دير نه ڪرڻ لاءِ، مان پهريان عملي حصو ۽ پوءِ نظرياتي حصو پوسٽ ڪندس.
1. مشق. نمائندو زون / 28
اچو ته چوندا آهيون اسان وٽ هڪ سب نيٽ آهي 7.8.9.0/24. اسان کي ذيلي نيٽ ورڪ جي نمائندگي ڪرڻ جي ضرورت آهي 7.8.9.240/28 dns ڪلائنٽ ڏانهن 7.8.7.8 (ns1.client.domain).
فراهم ڪندڙ جي DNS تي توهان کي هڪ فائل ڳولڻ جي ضرورت آهي جيڪا هن سب نيٽ جي ريورس زون کي بيان ڪري ٿي. ان کي ٿيڻ ڏي 9.8.7.in-addr.harp.
اسان 240 کان 255 تائين داخلن تي تبصرو ڪندا آهيون، جيڪڏهن ڪو به آهي. ۽ فائل جي آخر ۾ اسان هيٺ ڏنل لکندا آهيون:
255-240 IN NS 7.8.7.8
$GENERATE 240-255 $ CNAME $.255-240
سيريل زون کي وڌائڻ نه وساريو ۽ ڪريو
rndc reload
اهو مهيا ڪندڙ حصو مڪمل ڪري ٿو. اچو ته ڪلائنٽ ڊي اين ايس ڏانهن وڃو.
پهرين، اچو ته هڪ فائل ٺاهي /etc/bind/master/255-240.9.8.7.in-addr.arpa هيٺ ڏنل مواد:
$ORIGIN 255-240.9.8.7.in-addr.arpa.
$TTL 1W
@ 1D IN SOA ns1.client.domain. root.client.domain. (
2008152607 ; serial
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
@ IN NS ns1.client.domain.
@ IN NS ns2.client.domain.
241 IN PTR test.client.domain.
242 IN PTR test2.client.domain.
245 IN PTR test5.client.domain.
۽ اندر نالي ڪيو ويوڪ اسان جي نئين فائل جي وضاحت شامل ڪريو:
zone "255-240.9.8.7.in-addr.arpa." IN {
type master;
file "master/255-240.9.8.7.in-addr.arpa";
};
B بائنڊ جي عمل کي ٻيهر شروع ڪريو.
/etc/init.d/named restart
سڀ. هاڻي توهان چيڪ ڪري سگهو ٿا.
#> host 7.8.9.245
245.9.8.7.in-addr.arpa is an alias for 245.255-240.9.8.7.in-addr.arpa.
245.255-240.9.8.7.in-addr.arpa domain name pointer test5.client.domain.
مهرباني ڪري نوٽ ڪريو ته نه رڳو PTR رڪارڊ ڏنو ويو آهي، پر CNAME پڻ. ائين ئي ٿيڻ گهرجي. جيڪڏهن توهان حيران ٿي رهيا آهيو ته پوءِ ڀلي ڪري آيا ايندڙ باب ۾.
2. نظريو. اهو ڪيئن ڪم ڪري ٿو.
بليڪ باڪس کي ترتيب ڏيڻ ۽ ڊيبگ ڪرڻ ڏکيو آهي. اهو تمام آسان آهي جيڪڏهن توهان سمجهو ته اندر ڇا ٿي رهيو آهي.
جڏهن اسان هڪ ڊومين ۾ هڪ ذيلي ڊومين جي نمائندگي ڪندا آهيون ڊومين، پوءِ اسان ڪجهه هن طرح لکون ٿا:
client.domain. NS ns1.client.domain.
ns1.client.domain. A 7.8.7.8
اسان سڀني کي چئون ٿا جيڪو پڇي ٿو ته اسان هن سائيٽ جا ذميوار نه آهيون ۽ چوندا آهيون ڪير ذميوار آهي. ۽ سڀني لاء درخواستون client.domain 7.8.7.8 ڏانهن منتقل ڪريو. چيڪ ڪرڻ وقت، اسان هيٺ ڏنل تصوير ڏسون ٿا (اسان کي ڇڏي ڏينداسين جيڪو ڪلائنٽ وٽ آهي. اهو مسئلو ناهي):
# host test.client.domain
test.client.domain has address 7.8.9.241
اهي. اسان کي ٻڌايو ويو ته هڪ اهڙو A رڪارڊ آهي ۽ ان جو ip 7.8.9.241 آهي. ڪابه غير ضروري معلومات.
ساڳيو ڪم هڪ ذيلي نيٽ سان ڪيئن ٿي سگهي ٿو؟
ڇاڪاڻ ته اسان جو DNS سرور RIPE ۾ رجسٽر ٿيل آهي، پوءِ جڏهن اسان جي نيٽ ورڪ مان PTR IP پتي جي درخواست ڪئي ويندي، تڏهن به پهرين درخواست اسان وٽ هوندي. منطق ساڳيو آهي جيئن ڊومينز سان. پر توهان زون فائل ۾ هڪ ذيلي نيٽ ڪيئن داخل ڪيو؟
اچو ته ان کي هن طرح داخل ڪرڻ جي ڪوشش ڪريو:
255-240 IN NS 7.8.7.8
۽... معجزو نه ٿيو. اسان کي ڪا به درخواست ريڊائريڪشن نه ملي رهي آهي. ڳالهه اها آهي ته بائنڊ کي اها به خبر ناهي ته ريورس زون فائل ۾ اهي انٽريون IP ايڊريس آهن، ۽ ان کان به وڌيڪ ان جي رينج انٽري کي نه ٿو سمجهي. هن لاء، اهو صرف ڪجهه قسم جي علامتي ذيلي ڊومين آهي. اهي. پابند ڪرڻ جي وچ ۾ ڪوبه فرق نه هوندو "255-240"۽"اسان جو سپر ڪلائنٽ". ۽ درخواست لاءِ جتي وڃڻ جي ضرورت آهي، درخواست ۾ ايڊريس هن طرح ڏسڻ گهرجي: 241.255-240.9.8.7.in-addr.arpa. يا هن وانگر جيڪڏهن اسان هڪ ڪردار ذيلي ڊومين استعمال ڪندا آهيون: 241.oursuperclient.9.8.7.in-addr.arpa. هي عام کان مختلف آهي: 241.9.8.7.in-addr.harp.
اهو دستي طور تي اهڙي درخواست ڪرڻ ڏکيو ٿيندو. ۽ جيتوڻيڪ اهو ڪم ڪري ٿو، اهو اڃا تائين واضح ناهي ته ان کي حقيقي زندگي ۾ ڪيئن لاڳو ڪجي. سڀ کان پوء، درخواست تي 7.8.9.241 مهيا ڪندڙ جو DNS اڃا تائين اسان کي جواب ڏئي ٿو، نه ڪلائنٽ جو.
۽ هي آهي جتي اهي راند ۾ اچن ٿا CNAME.
مهيا ڪندڙ جي پاسي تي، توهان کي سب نيٽ جي سڀني IP پتي لاء هڪ عرف ٺاهڻ جي ضرورت آهي هڪ فارميٽ ۾ جيڪو درخواست کي ڪلائنٽ DNS ڏانهن موڪليندو.
255-240 IN NS ns1.client.domain.
241 IN CNAME 241.255-240
242 IN CNAME 242.255-240
и т.д.
هي محنتي =) لاءِ آهي.
۽ سست لاء، هيٺ ڏنل ڊيزائن وڌيڪ مناسب آهي:
255-240 IN NS ns1.client.domain.
$GENERATE 240-255 $ CNAME $.255-240
ھاڻي معلومات جي درخواست ڪريو تي 7.8.9.241 کان 241.9.8.7.in-addr.harp فراهم ڪندڙ جي DNS سرور تي تبديل ڪيو ويندو 241.255-240.9.8.7.in-addr.arpa ۽ dns ڪلائنٽ ڏانهن وڃي ٿو.
ڪلائنٽ پاسي کي اهڙين درخواستن کي سنڀالڻ جي ضرورت پوندي. انهي جي مطابق، اسان هڪ زون ٺاهيندا آهيون 255-240.9.8.7.in-addr.arpa. ان ۾، اسان، اصولي طور تي، سڄي /24 سب نيٽ جي ڪنهن به ip لاءِ ريورس انٽريز رکي سگهون ٿا، پر اهي اسان کان صرف انهن بابت پڇندا جيڪي مهيا ڪندڙ اسان ڏانهن موڪلي ٿو، تنهنڪري اسان کيڏڻ جي قابل نه هونداسون =).
وضاحت ڪرڻ لاء، مان هڪ ڀيرو ٻيهر هڪ مثال ڏيندس ريورس زون فائل جي مواد جو ڪلائنٽ پاسي کان:
$ORIGIN 255-240.9.8.7.in-addr.arpa.
$TTL 1W
@ 1D IN SOA ns1.client.domain. root.client.domain. (
2008152607 ; serial
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
@ IN NS ns1.client.domain.
@ IN NS ns2.client.domain.
241 IN PTR test.client.domain.
242 IN PTR test2.client.domain.
245 IN PTR test5.client.domain.
اهو ان ڪري آهي جو اسان مهيا ڪندڙ جي پاسي تي CNAME استعمال ڪريون ٿا، ۽ IP پتي جي ڊيٽا جي درخواست جي جواب ۾ اسان کي ٻه رڪارڊ مليا آهن، هڪ نه.
#> host 7.8.9.245
245.9.8.7.in-addr.arpa is an alias for 245.255-240.9.8.7.in-addr.arpa.
245.255-240.9.8.7.in-addr.arpa domain name pointer test5.client.domain.
۽ ACL کي صحيح ترتيب ڏيڻ نه وساريو. ڇاڪاڻ ته اهو پنهنجي لاءِ PTR زون وٺڻ ۽ ٻاهران ڪنهن کي جواب نه ڏيڻ جو ڪو به مطلب ناهي =).
جو ذريعو: www.habr.com