Sunday, December 25, 2011

Wildcard DNS คืออะไร???

Wildcard DNS คืออะไร???

Wildcard DNS คือการทำให้ dns มันยอมรับการเรียกทุกซัพโดเมนให้แสดงผล

พูดไปคงจะไม่เข้าใจ ต่อไปนี้จะเป็นการเล่าเรื่อง...

(ตรงนี้เป็นการเกริ่นระบบ DNS ทั่วไป)

ปกติระบบซัพโดเมนทั่วไป (ในที่นี้ผมขออิงจาก hostgator นะครับ)
จะเป็น Step ดังนี้
1. แอดซัพโดเมนลง CP
2. CP ส่งคำสั่งไปแก้ไขส่วน DNS ของเซิร์ฟในลักษณะ
sub.domain.com  ->  domain/sub/

แล้วถ้าพอมีคนเรียก sub.domain.com ระบบก็จะ
1. sub.domain.com จะวิ่งไปหา NS ของ host
2. host จะตรวจที่ DNS ว่ามีซัพนี้หรือไม่
2.1 ถ้ามี ก็จะแสดงผลเลย โดยของ hostgator จะดึงเอาจากโฟลเดอร์ในนั้นมาแสดง
2.2 ถ้าไม่มี ระบบก็จะแสดงหน้าต่างอื่นมาชดเชยแทน หรืออาจคืนค่า 404 มาว่าไม่มี

ซึ่งนี้คือระบบ dns ทั่วไป ตามมาตราฐานทั่วไป


(ต่อไปเป็นการเล่าจุดประสงค์)

แต่แล้วกลุ่มขาปั่นเว็บ ได้แนวคิดหนึ่งขึ้นมาว่า (เป็นแนวคิดประยุกต์ต่อยอด)

จากเดิม domain.com/xxxx  (xxxx แทนคีย์เวิร์ดตัวไหนก็ได้)
แล้วใช้ modrewrite มาดักเอาคีย์ไปทำหน้าปั่นขึ้นมา

ได้คิดต่อยอดมาเป็น xxxx.domain.com  เป็นการปั่นซัพโดเมนแทน!!!
ซึ่งพวกเขาหวังว่าจะช่วงโกยกระตังค์ได้มากขึ้น... (ความจริงคือ ถ้าระบบภายในยังเน่า ต่อให้เป็นซัพมันก็เน่าเช่นนั้น)

แต่เรื่องจากแนวคิดนี้ มันขัดกับ DNS ทั่วไปอยู่แล้ว
เลยเกิดการประยุกต์การใช้งาน (เหมือนตอนกำเนิด AJAX ซึ่งมาจาก Base Technology เดิม แต่เอามาใช้ใหม่)

เลยนำเอาการทำ wildcard dns มาใช้ด้วย
ซึ่ง wildcard dns ใช้ทำได้อีกหลายอย่าง อย่าง...
exteen.com ก็ใช้ทำซัพอัตโนมัติสำหรับสมาชิกบล็อก  และอื่นๆ


(เข้าเรื่องหลักแล้ว)

การทำ wildcard dns จะเป็นการแหกกฎ dns ทั่วไปแบบเดิมๆ หน่อย
ตรงที่จะไปปรับค่า ns ให้มันดักเอาทุกซัพที่มีการเรียกส่งไปยังหน้าหลักของโดเมนนั้นๆ
xxxx.domain.com  (xxxx แทนคีย์เวิร์ดตัวไหนก็ได้)
ส่งไปยัง domain.com เลย!!!

ซึ่งจะต่างจากการ redirect แบบ 301 หรือ header location และอื่นๆ
เพราะมันจะเหมือนกับดึงหน้าหลักของ domain.com มาทำงานเสมือนแทน!!!

ดังนั้น Wildcard DNS จะช่วยในตรงนี้
แล้วจากกระทู้ http://www.thaiseoboard.com/index.php/topic,16485.0.html

เป็นระบบสคริป php ที่มารองรับกับ wildcard dns
โดยหน้าที่หลักคือการตรวจจับค่า HTTP_HOST มาว่าถ้าเป็นซัพโดเมนให้แสดงผลอย่างอื่น
หรือพูดง่ายๆ มันเป็นการทำให้ระบบแยกว่าอันไหนเป็นการเรียก domain.com
อันไหนเป็นการเรียก sub.domain.com


(อธิบายลักษณะเฉพาะ)

Wildcard หรือคำไทย  ดอกจัน    *

เป็นอักษณะที่ใช้กันในคอม ในความหมายว่า แทนค่าด้วยตัวอะไรก็ได้แบบไม่จำกัดจำนวน
อ้างอิง
โค๊ด:

http://en.wikipedia.org/wiki/Wildcard_character

Wildcard DNS เมื่อมีการทำกับโดเมนไหนๆ ไปแล้ว
ทุกซัพโดเมนจะถูกเรียกหน้าหลักของโดเมนมาทำงานแทน

อธิบายเป็นแนวคิดง่ายๆ ก็
*.domain.com   ->  domain.com

ดังนั้นวิธีสังเกตว่าทำได้หรือยัง
ให้เข้าซัพโดเมนอะไรก็ได้  แม้กระทั่ง "ากหสดาว.domain.com" (พิมพ์มั่วๆ)
ถ้าเข้าแล้วหน้าตาเหมือน domain.com เลย แสดงว่าทำงานได้แล้วครับ
แล้วเราถึงค่อยมาเขียน php ให้มันแยกอีกทีครับ (แยกไหนซัพ ไหนหน้าหลัก)



ศึกษาเพิ่มเติมได้ที่ Google.com (ไม่ได้มุข แต่ตอนแรกก็ไม่มีใครสอนผม ผมก็หาเอาเองแบบนี้แหละ)

ศัพย์เทคนิค
DNS = Domain Name System  (Thank, guy852 ที่เอาข้อสอบ unix มาเล่าให้ฟัง)
NS = Name Server
CP = Control Panel
Wildcard = ดอกจัน *

ปล. ไม่มีรูป ขี้เกียจทำครับ มันนาน~~~

ColdMoney:
ผมเคยใช้ wildcard dns นะครับ แจ่มมากๆ เหมาะแก่การทำ หมวกดำเป็นอย่างยิ่งเพราะ google จะ index domain  อย่างน้อย 1 index/domain แต่ถ้าทำ wildcard จะทำให้ดูเหมือนว่ามี หลาย domain ซึ่งก็จะติด index ทุก subdomain มีล้านก็ติดล้าน

อ่ะๆ แต่เดี๋ยวก่อนนนนน ใครคิดจะทำก็คิดดีๆนะครับ เพราะนี่เป็นเทคนิคที่โครตเก่าเลยนะ ขอบอกๆ  :D :D ระวังจะโดนแบนโดยไม่รู้สาเหตุนะครับ หนึ่งในเทคนิคหมวกดำนะเนี่ย และรู้สึกว่าจะมีปัญหากับ sitemap ด้วยจิ เพราะ sitemap ต้องเป็น url ที่อยู่ในโดเมนเดียวกันเท่านั้นมั้ง จำไม่ค่อยได้แล้วครับ เล่นมานานมั๊กๆแล้ว สรุปว่าจะทำก็ระวังให้มากๆครับ


dreamhost ครับเล่นได้ ติดต่อ support แป๊บเดียวได้เล่นทันที  :)



ได้ยินมาหลายครั้งแล้วไอ้Wildcard DNS เนี่ย แต่ไม่เคยคิดจะไปค้นหาว่ามันเป็นอะไรซะที

ถ้าไม่ได้คุณEThaiZone ไอ้ศัพท์คำนี้คงเป็นปริศนาสำหรับผมต่อไป  :-[


ขอบคุณครับ ความรู้ใหม่นะเนี่ย ;)

0 comments:

Post a Comment

 
Design by sutoday | Bloggerized by storesu - suvachai | laikeng