Set หลาย Domain name ใน DNS
[เนื่องจากผมมีประสบการณ์ในการสถานศึกษา ซึ่งสามารถดูแล DNS (Domain Name Server) ของตนเอง]
[บทความนี้เขียนจาก ประสบการณ์ และการลองผิดลองถูก ผู้รู้ท่านใดพบข้อผิดพลาดโปรดชี้แนะ ทีมงาน]
[ความมุ่งหมายของบทความนี้ เพื่อให้ผู้ที่ดูแล DNS server ของตนประยุกต์ใช้งานได้เต็มที่]
- Case นี้ใช้กับเครื่องของ SunOS 5.6 Generic August 1997 อาจ apply ไปใช้กับเครื่องอื่นได้
- วิทยาลัยโยนก ได้รับเลข ip address ใน class c มา 1 class คือ 256 ip โดยเริ่มจาก 203.146.9.0 ถึง 203.146.9.255 ซึ่งได้รับความช่วยเหลือ และประสานงาน รวมทั้งติดตั้ง software สำหรับ server โดยบริษัท loxinfo ซึ่งก็เป็น isp ของเราจนถึงทุกวันนี้
- เดิมทีมีชื่อ DNS ว่า yn1.yonok.ac.th แต่เปลี่ยนไปใช้ star.yonok.ac.th เพราะมีปัญหาเรื่องที่ hacker เข้ามาใช้ server ของเราส่ง spam หลังจากแก้ปัญหาได้แล้ว hotmail.com ก็ยังปฏิเสธ ที่จะรับ mail จากระบบเรา ดังนั้นจึงต้องแก้ปัญหาด้วยการเปลี่ยนชื่อ DNS มาเป็น star.yonok.ac.th [บทความเรื่อง spam จาก server ของเราเอง]
- หลังจากแก้ไขแล้ว เราก็ใช้งานได้ทันที แต่ใช้ได้เฉพาะในสถาบัน ถ้าจะให้ทั่วโลกยอมรับ ต้องไปแก้ที่ ๆ ได้จด domain name ไว้ เช่น catchsomeonedoinggood.com จดไว้ที่ register.com ก็ต้องไปแก้ส่วนของ name server ให้ชี้มาที่ star.yonok.ac.th ของเรา ต่อไปเวลามีใครเรียก catchsomeonedoinggood.com ก็จะวิ่งมาถามที่เครื่อง star.yonok.ac.th ก่อนเป็นอันดับแรก
- ใน 1 Domain name สามารถสร้างชื่อ host ได้หลายชื่อตามต้องการ แต่จะคอมพิวเตอร์ 1 เครื่องจะสามารถ set ip ไว้ได้เพียง 1 เลขหมายเท่านั้น (ตามปกติ) หมายความว่า คอมพิวเตอร์ 1 เครื่องมีชื่อได้หลายชื่อ แต่จะมี ip ได้เพียง 1 ip เท่านั้น (ถ้า set ให้มีบริการ modem จะ set ได้หลาย ip)
แฟ้มนี้ท่านก็ต้องหาเอง เพราะคิดว่าในแต่ละ OS น่าจะเก็บไว้ในห้องที่แตกต่างกัน หรือสามารถกำหนดห้องไว้ได้ ตามต้องการ
/* Name.conf file */
options {
directory "/var/named";
};
logging {
category lame-servers { null; };
category cname { null; };
};
zone "." in {
type hint;
file "db.cache";
};
zone "0.0.127.in-addr.arpa" in {
type master;
file "db.127.0.0";
};
zone "yonok.ac.th" in {
type master;
file "db.yonok.ac.th";
};
zone "catchsomeonedoinggood.com" in {
type master;
file "db.catchsomeonedoinggood.com";
};
zone "9.146.203.in-addr.arpa" in {
type master;
file "db.203.146.9";
};
เรากำหนด email.yonok.ac.th ให้ไปที่ everyone.net ทำให้เราบริการ mail server โดยไม่ต้องใช้ server ของเรา เพราะที่ everyone.net ให้บริการ mail server เราแค่ไปสมัครขอ server ครั้งเดียว และนักศึกษา หรืออาจารย์ที่ต้องการ email ก็ไป signup หลักการทำงานคล้ายกับที่ hotmail มาก และ email ที่ได้ก็เช่น yourname@email.yonok.ac.th (ระบบท่านก็ทำได้ ผมขอมาเยอะเลยเช่น http://mail.thaiall.com หรือ http://mail.lampang.net เป็นต้น)
; yonok.ac.th
@ IN SOA star.yonok.ac.th. postmaster.star.yonok.ac.th. (
2000100602 43200 7200 1209600 172800 )
IN NS star.yonok.ac.th.
IN NS ns.tnet.co.th.
IN MX 5 star.yonok.ac.th.
star IN A 203.146.9.12
yn2 IN A 203.146.9.15
yn3 IN A 203.146.9.14
yn4 IN A 203.146.9.13
lampang IN A 203.146.9.20
door IN A 203.146.9.254
yn5 IN A 203.146.9.19
email IN A 216.200.145.34
IN MX 6 sitemail.everyone.net.
yn1 IN CNAME star.yonok.ac.th.
mail IN CNAME star.yonok.ac.th.
std IN CNAME yn3.yonok.ac.th.
irc IN CNAME yn3.yonok.ac.th.
proxy IN CNAME yn5.yonok.ac.th.
graphic IN CNAME yn3.yonok.ac.th.
www IN CNAME yn3.yonok.ac.th.
ftp IN CNAME yn2.yonok.ac.th.
;email IN CNAME siteurl.everyone.net.
แฟ้มนี้สั้นเพราะไม่ได้กำหนดอะไรไว้มาก ถ้าจะขยายให้ดูตัวอย่าง db.yonok.ac.th ได้ และคำว่า nirund จะทำให้สามารถเปิดเว็บชื่อ http://nirund.catchsomeonedoinggood.com ซึ่งมองไปที่ yn3.yonok.ac.th และจะต้องติดตั้งเป็น web server ไว้จึงจะใช้ได้
; catchsomeonedoinggood.com
@ IN SOA www.catchsomeonedoinggood.com. postmaster.www.catchsomeonedoinggood.com. (
2000100502 43200 7200 1209600 172800 )
IN NS star.yonok.ac.th.
IN NS ns.tnet.co.th.
IN MX 5 www.catchsomeonedoinggood.com.
www IN A 203.146.9.14
nirund IN CNAME yn3.yonok.ac.th.