11 March 2014

เลี่ยงการ Block IP ได้ด้วย DNS

เนื่องจากโอกาสที่ผู้ใกล้ชิดของเราทำงานอยู่ในศูนย์ราชการ ในบางวันที่งาน Office ต้องมาทำใกล้กับถนนแจ้งวัฒนะหรือละแวกใกล้เคียง ก็ขี้เกียจขับรถกลับไปอีกรอบ จึงทำการแลกบัตรและมานั่งทำงานโดยใช้เครื่องปรับอากาศจากภาษีอากรบ้างอะไรบ้าง อันนี้ผู้เขียนยอมรับว่าไม่ถูกต้อง แต่ก็พยายามทำตัวให้ไม่ร้อนเวลาทำงานจะได้ไม่เปลืองแอร์อยู่นะครับ

แต่เมื่อนั่งแหมะแล้วจะต้องใช้ Application บนอินเตอร์เน็ต ปรากฎว่าเมื่อเปิด Google Drive กลับใช้งานไม่ได้ ซึ่งเราด้วยอาชีพ Network Admin ก็งงน่ะสิว่า จะ block site นี้ทำไม และยิ่งตรวจสอบมากเข้าก็ชัดเจนว่า การที่ต้อง block เป็นเพราะจะป้องกันการใช้ Facebook แต่เพียงแค่เกิดผลกระทบอย่างไม่ได้ตั้งใจ ลองดูการ Lookup DNS ดังต่อไปนี้

ผลการ lookup DNS ของหน่วยงาน
Server:  xxxxxx.xxxx.go.th
Address:  10.1.81.74
Non-authoritative answer:
Name:    facebook.com
Addresses:  2a03:2880:2110:df07:face:b00c:0:1
          173.252.110.27

Server:  xxxxxx.xxxx.go.th
Address:  10.1.81.74
Non-authoritative answer:
Name:    drive.google.com
Addresses:  2404:6800:4003:802::1009
          173.194.38.142
          173.194.38.136
          173.194.38.129
          173.194.38.135
          173.194.38.128
          173.194.38.137
          173.194.38.130
          173.194.38.133
          173.194.38.134
          173.194.38.131
          173.194.38.132
จะเห็นได้ว่า IP address ที่ขึ้นต้นด้วย 173 จะถูกทำการระงับทั้ง subnet (อาจจะ block ทั้ง class ไปเลย) แล้วเราจะใช้งานได้ยังไงหว่า เพราะหน่วยงานนี้ block ทุกอย่าง ซึ่งเปิดให้ใช้แค่ web เท่านั้น (Port 80 และ 443)

อย่างไรก็ตาม ระบบทุกที่มักจะทิ้งช่องว่าให้เราเสมอ คงเป็นเรื่องไม่ยากถ้าเราจะทดสอบว่าบริการของ DNS ใช้งานได้หรือไม่จากการทดสอบคำสั่ง nslookup ไปยัง Name Server ภายนอก
Server:  google-public-dns-a.google.com
Address:  8.8.8.8
Non-authoritative answer:
Name:    star.c10r.facebook.com
Addresses:  2a03:2880:f002:1:face:b00c:0:1
          31.13.68.16
Aliases:  www.facebook.com

C:\Users\Jingjun>nslookup drive.google.com
Server:  google-public-dns-a.google.com
Address:  8.8.8.8
Non-authoritative answer:
Name:    drive.google.com
Addresses:  2404:6800:4001:c01::65
          74.125.135.100
          74.125.135.102
          74.125.135.139
          74.125.135.113
          74.125.135.138
          74.125.135.101
ซึ่งจะเห็นได้ว่าเราสามารถหลบเลี่ยงปัญหาการ block ได้ด้วยการใช้ DNS ที่ได้ Host address อื่นมาแทน เพราะกลไกการทำงานของผู้ให้บริการรายใหญ่ อย่าง Facebook, Google, Yahoo และผู้ให้บริการรายอื่น มักจะใช้ระบบ CDN อยู่แล้ว จึงมีความเป็นไปได้สูงที่เราจะได้ใช้บริการผ่าน Mirror ตัวอื่นได้

การหลบเลี่ยงการ block โดยใช้ DNS จะสามารถใช้ได้แค่เฉพาะบางที่ที่มีการกำหนดค่าระบบเครือข่ายโดยผู้ดูแลระบบแบบนี้เท่านั้น การทำลักษณะนี้จึงไม่ใช่การ hack แต่ประการใด เพียงแค่เป็นการขอยืมช่องทางออกเพื่อเพิ่มความสะดวกในการทำงานแค่นั้นเอง

Written by Tiwakorn Laophulsuk

No comments:

Post a Comment

Give a comment ...