วันเสาร์ที่ 28 กรกฎาคม พ.ศ. 2555

เน็ต 3BB กับ Debian

ใช้ 3BB มาหลายเดือนแล้ว ใช้งานได้ดีไม่มีปัญหา แต่.....

อันที่จริงแล้วผมมีปัญหากับการเข้าถึงอินเตอร์เนตผ่าน 3BB ตั้งแต่วันแรก นั่นคือเข้าเว็บไม่ได้ แต่เมื่อตอนนั้นคิดว่าคงเป็นปัญหาเรื่อง DNS ก็เลยไปใช้ Google DNS คือ 8.8.4.4 และ 8.8.8.8 แทน ซึ่งก็ใช้ได้ดีมาตลอดจนกระทั่งเมื่อ 2 - 3 วันมานี้จู่ ๆ ก็เข้าเว็บบางเว็บไม่ได้!


บางเว็บที่เข้าได้คือ google.com และเว็บต่างประเทศบางเว็บ ส่วนเว็บที่เข้าไม่ได้ส่วนใหญ่เป็นเว็บในไทย ตั้งแต่ sanook.com ไปจนถึง 3bb.co.th เอง ยกเว้น pantip.com เอาไงดีล่ะเรา...

มีคนบอกว่าให้เปลี่ยนกลับมาใช้ DNS ของ 3BB ก็ลองเปลี่ยนกลับดู แล้วลองใช้ dig หรือ nslookup ตรวจสอบดูว่า DNS ทำงานได้หรือไม่ ก็ปรากฏว่า DNS ไม่ว่าจะเป็นของ Google หรือของ 3BB ก็ทำงานได้ดี คือแสดงเลขไอพีของเว็บนั้น ๆ ได้ทุกเว็บ ไม่มีปัญหาเลยสักเว็บเดียว แสดงว่าปัญหาไม่ใช่ DNS แล้ว

พอได้เลขไอพีมาก็ลอง ping ดู ปรากฏว่าไม่เวิร์ก ฝ่ายเทคนิคของ 3BB บอกว่า ping ไม่เวิร์กเพราะหลายเว็บเขาบล๊อก ping เราก็เลยใช้ ping ตรวจสอบไม่ได้ แต่พอดีทราบว่าเว็บของภาควิชาฯ ไม่ได้บล๊อก ping ก็เลยลอง ping ดู ก็ปรากฏว่าเจอ แต่ก็เข้าเว็บภาควิชาไม่ได้

เอ...หรือว่าเรามีปัญหาการสื่อสาร ลอง ftp เข้าไปที่เซิฟเวอร์ของภาควิชาสิ...ก็เข้าได้ ลองเข้าเว็บภาควิชาสิ...เข้าไม่ได้แฮะ

มันไปติดที่ไหนนะ? สงสัยก็เลยใช้ traceroute ติดตามการสื่อสารดูว่ามันไปติดที่ไหน ปรากฏว่ามันก็ออกไปจนถึง 3bb นั่นแหละ แล้วก็ติดแหงกอยู่ที่นั่น ว่าแต่ว่าทำไมล่ะ ทำไมบางเว็บเข้าได้บางเว็บเข้าไม่ได้ และยืนยันแล้วว่าไม่ใช่ปัญหา DNS ด้วย

คิดไปคิดมาเห็นในหน้าต่าง Interface Config ว่ามีตัวเลือกของ IPv6 คิดว่ายังไม่น่าจะได้ใช้ก็ Disable มันซะ ลองเข้าเว็บอีกที...ยังไม่เวิร์ก แต่สัญชาตญาณบอกว่ามันน่าจะเป็นเรื่อง IPv6 นี่แหละ

ในเมื่อ DNS ไม่ใช่ปัญหา การเชื่อมต่อไม่ใช่ปัญหา ftp ได้ ปัญหาอาจอยู่ที่เบราเซอร์ เลยลองค้นคีย์เวิร์ด Firefox กับ IPv6 ดูจึงได้พบว่ามีหลายคนในโลกเจอปัญหาเข้าเว็บบางเว็บไม่ได้เหมือนกัน และทางแก้คือ Disable IPv6 ใน Firefox ซะ เอาล่ะ ดูจะมีความหวังอยู่บ้าง

วิธีการคือ พิมพ์ about:config ลงในช่อง URL Firefox จะเตือนเราก่อนว่าการแก้ไขตรงนี้อาจทำให้ Firefox ทำงานผิดปกติได้ เราก็รับคำเตือนนั้นเสีย แล้วค้นหา Field ชื่อ network.dns.disableIPv6 โดยใช้ Filter ที่ต้องใช้ Filter เพราะ Field มันเยอะมาก และเราก็ไม่อยากพลั้งพลาดไปเปลี่ยนค่าสำคัญอื่น ๆ โดยไม่ตั้งใจ เมื่อค้นเจอ network.dns.disableIPv6 แล้วก็ตั้งค่าให้เป็น TRUE เสีย (เดิมเป็น FALSE)

ปรากฏว่าใช้ได้ครับ! เข้าเว็บทุกเว็บได้ตามปกติเลย เนื่องจากเคยได้ยินว่ามีหลายคนมีปัญหาคล้าย ๆ กันอย่างนี้จึงขอบันทึกไว้เพื่อเป็นประโยชน์ในภายหน้า

สรุปว่าปัญหาอย่างนี้ทำให้ประสบการณ์การใช้ Linux มากขึ้น ได้เรียนรู้มากขึ้น คำสั่งต่าง ๆ ทั้ง dig nslookup ping traceroute แม้กระทั่ง route table ซึ่งก่อนหน้านี้ไม่รู้จัก ไม่ใด้ใช้เลยก็ได้ค่อย ๆ ทำความรู้จักกับมันขึ้นมา ทำให้มีความเข้าใจระบบเครือข่ายมากขึ้น ก็คงเหมือนอย่างภาษิตโบราณเขาว่า มารบ่มี บารมีบ่เกิด กระมัง