Saturday, April 30, 2011

OpenDNS - Free DNS Server สำหรับทุกคน

ที่บ้านผมใช้ ADSL Internet ของ True

ตั้งแต่เมื่อประมาณสามวันที่แล้ว ผมพบว่าเวลาเปิดเว็บต่างๆ จะหลุดบ้างติดบ้าง แต่เนื่องจากงานผมยุ่งมาก กลับบ้านก็ดึกมากแล้ว จึงไม่ได้มีเวลามาตรวจสอบดูว่ามันเป็นเพราะอะไร

เมื่อคืนนี้โชคดีที่ผมป่วยมีไข้ปวดหัว จึงมีโอกาสลางานขอกลับบ้านเร็วมานอนพักผ่อน เมื่อตื่นขึ้นมาเปิดคอมพิวเตอร์ และก็เจอปัญหาเดิม แต่คราวนี้สมองแจ่มใส ทำให้นึกถึง วิธีการแก้ปัญหาเบื้องต้น นั่นก็คือ การทำการตรวจสอบ dns (domain name server) ว่ามันทำงานเป็นปกติอ๊ะป่าว

วิธีตรวจสอบง่ายๆ ก็เช่น ลองเปิด http://www.google.com ด้วย web browser ของเรา ปรากฎว่ามันขึ้น server not found error บน web browser ที่ผมใช้ จากนั้นผมก็ไปค้นหา ip address ของ www.google.com มา เช่นอาจจะถามเพื่อน หรือ อาจจะลองใช้คำสั่ง ping ดูที่เครื่องของเราเอง เพราะในหลายๆ ครั้ง เครื่องของเราจะยังจำ ip ของ domain ที่เราเข้าบ่อยได้ แต่ web browser ไม่สามารถเรียกมาใช้งานได้ เพราะอะไรสักอย่าง ทีนี้พอเราได้ ip address มา เราก็เอาไปกรอกในช่อง address bar ของ web browser เช่น: http://216.239.61.104/ ผมปรากฏว่า ผมเปิด google ได้ เมื่อเปิดเว็บผ่าน ip address ซึ่งทำให้สรุปผลได้ว่า dns ของ True Internet มีปัญหาอะไรสักอย่าง

ที่ผ่านมาผมใช้ dns ของ True Internet มาตลอด ซึ่งมีสอง ip ดังนี้:

nameserver 203.144.255.71
nameserver 203.144.255.72

แต่ตอนนี้มันเจ๊ง ผมเลยนึกถึง OpenDNS ที่เคยได้ยินมาว่าเป็น dns ที่เปิดให้ใช้บริการฟรี (รู้สึกของ google เองก็มีทำ dns ให้ใช้ฟรีเหมือนกัน) โดยเราแค่เปลี่ยนค่า dns ที่เราใช้บริการอยู่ให้เป็น:

nameserver 208.67.222.222
nameserver 208.67.220.220

เพียงเท่านี้ ผมก็แก้ปัญหาเรื่อง dns ที่เจ๊งอยู่ของ True ไปได้ และทำให้เปิดเว็บต่างๆ ได้เป็นปกติ

OpenDNS home

อ้างอิง



    สำหรับผู้ที่อาจจะยังตั้งค่า dns ใน Grml Linux ไม่เป็น ผมขอแนะนำสามวิธีนะครับ

    1. วิธีตั้งค่าแบบชั่วคราว กล่าวคือ หลังการ reboot ค่าที่เราตั้งไว้จะหายไป ทำดังนี้:

    # resolvconf -a eth0
    nameserver 208.67.222.222
    nameserver 208.67.220.220

    แล้วกด control + d

    ในตัวอย่างของผม คอมพิวเตอร์ของผมต่อสายแลนอยู่โดย ลินุกซ์มองเห็น
    ethernet card อันนั้นเป็น eth0 ถ้าคุณมี ethernet card หลายอัน
    มันก็อาจจะเป็น eth1, eth2, eth3, ไปเรื่อยๆ ถ้าอยากรู้ว่ามี eth
    กี่อันในคอมพิวเตอร์ของคุณ ก็อาจจะ ใช้คำสั่งนี้:

    $ dmesg | grep eth

    2. วิธีตั้งค่าแบบถาวร วิธีที่หนึ่ง แก้ไฟล์ config ด้วยตัวเอง ดังนี้:

    # vi /etc/network/interfaces

    จากนั้นก็ edit file ให้มีลักษณะคล้ายตัวอย่างนี้:

    auto lo
    iface lo inet loopback

    auto eth0
    iface eth0 inet static
    address 192.168.0.100
    netmask 255.255.255.0
    network 192.168.0.0
    broadcast 192.168.0.255
    gateway 192.168.0.1
    dns-nameservers 208.67.222.222 208.67.220.220

    ที่สำคัญที่ต้องแก้คือ ตรง dns-namervers ซึ่งเป็นที่ๆ ใช้กำหนดว่า เราจะใช้ dns server อะไรนั่นเอง

    หลังจากนั้นต้อง restart networking service ดังนี้:

    /etc/init.d/networking restart

    3. วิธีตั้งค่าแบบถาวร วิธีที่สอง ใช้ tool ของ Grml ตั้งค่า ดังนี้:

    # grml-network

    มันจะมีฟอร์มต่างๆ ให้เราเลือก และ ตั้งค่าต่างๆ ใหม่ โดยตอนระบุ dns ให้ใส่ค่า:

    208.67.222.222 208.67.220.220

    ที่สำคัญคือต้องคั่นด้วย space นะครับ

    0 comments:

    Post a Comment